Difference between revisions of "Publications/newton.18.meta"
From LRDE
(Created page with "{{Publication | published = true | date = 2018-09-14 | authors = Jim Newton, Didier Verna | title = Recognizing heterogeneous sequences by rational type expression | booktitle...") |
|||
Line 3: | Line 3: | ||
| date = 2018-09-14 |
| date = 2018-09-14 |
||
| authors = Jim Newton, Didier Verna |
| authors = Jim Newton, Didier Verna |
||
− | | title = Recognizing |
+ | | title = Recognizing Heterogeneous Sequences by Rational Type Expression |
| booktitle = Proceedings of the Meta'18: Workshop on Meta-Programming Techniques and Reflection |
| booktitle = Proceedings of the Meta'18: Workshop on Meta-Programming Techniques and Reflection |
||
| address = Boston, MA USA |
| address = Boston, MA USA |
||
Line 17: | Line 17: | ||
@InProceedings<nowiki>{</nowiki> newton.18.meta, |
@InProceedings<nowiki>{</nowiki> newton.18.meta, |
||
author = <nowiki>{</nowiki>Jim Newton and Didier Verna<nowiki>}</nowiki>, |
author = <nowiki>{</nowiki>Jim Newton and Didier Verna<nowiki>}</nowiki>, |
||
− | title = <nowiki>{</nowiki>Recognizing |
+ | title = <nowiki>{</nowiki>Recognizing Heterogeneous Sequences by Rational Type |
− | + | Expression<nowiki>}</nowiki>, |
|
booktitle = <nowiki>{</nowiki>Proceedings of the Meta'18: Workshop on Meta-Programming |
booktitle = <nowiki>{</nowiki>Proceedings of the Meta'18: Workshop on Meta-Programming |
||
Techniques and Reflection<nowiki>}</nowiki>, |
Techniques and Reflection<nowiki>}</nowiki>, |
Revision as of 12:22, 3 December 2022
- Authors
- Jim Newton, Didier Verna
- Where
- Proceedings of the Meta'18: Workshop on Meta-Programming Techniques and Reflection
- Place
- Boston, MA USA
- Type
- inproceedings
- Projects
- Climb
- Keywords
- rational language, types, lisp, reflection
- Date
- 2018-09-14
Abstract
We summarize a technique for writing functions which recognize types of heterogeneous sequences in Common Lisp. The technique employs sequence recognition functionsgenerated at compile time, and evaluated at run-time. The technique we demonstrate extends the Common Lisp type system, exploiting the theory of rational languages, Binary Decision Diagrams, and the Turing complete macro facility of Common Lisp. The resulting system uses meta-programming to move an exponential complexity operation from run-time to a compile-time operation, leaving a highly optimized linear complexity operation for run-time.
Documents
Bibtex (lrde.bib)
@InProceedings{ newton.18.meta, author = {Jim Newton and Didier Verna}, title = {Recognizing Heterogeneous Sequences by Rational Type Expression}, booktitle = {Proceedings of the Meta'18: Workshop on Meta-Programming Techniques and Reflection}, year = 2018, address = {Boston, MA USA}, month = nov, abstract = { We summarize a technique for writing functions which recognize types of heterogeneous sequences in Common Lisp. The technique employs sequence recognition functions, generated at compile time, and evaluated at run-time. The technique we demonstrate extends the Common Lisp type system, exploiting the theory of rational languages, Binary Decision Diagrams, and the Turing complete macro facility of Common Lisp. The resulting system uses meta-programming to move an exponential complexity operation from run-time to a compile-time operation, leaving a highly optimized linear complexity operation for run-time.}, lrdestatus = {accepted} }