Difference between revisions of "Publications/newton.21.els"
From LRDE
Line 12: | Line 12: | ||
| address = Online |
| address = Online |
||
| abstract = We present a simple type system inspired by that of Common Lisp. The type system is intended to be embedded into a host language and accepts certain fundamental types from that language as axiomatically given. The type calculus provided in the type system is capable of expressing union, intersection, and complement types, as well as membership, subtype, disjoint, and habitation (non-emptiness) checks. We present a theoretical foundation and two sample implementations, one in Clojure and one in Scala. |
| abstract = We present a simple type system inspired by that of Common Lisp. The type system is intended to be embedded into a host language and accepts certain fundamental types from that language as axiomatically given. The type calculus provided in the type system is capable of expressing union, intersection, and complement types, as well as membership, subtype, disjoint, and habitation (non-emptiness) checks. We present a theoretical foundation and two sample implementations, one in Clojure and one in Scala. |
||
+ | | pages = 11 to 20 |
||
+ | | publisher = European Lisp Symposium |
||
| type = inproceedings |
| type = inproceedings |
||
| id = newton.21.els |
| id = newton.21.els |
||
Line 34: | Line 36: | ||
and two sample implementations, one in Clojure and one in |
and two sample implementations, one in Clojure and one in |
||
Scala.<nowiki>}</nowiki>, |
Scala.<nowiki>}</nowiki>, |
||
+ | pages = <nowiki>{</nowiki>11--20<nowiki>}</nowiki>, |
||
+ | publisher = <nowiki>{</nowiki>European Lisp Symposium<nowiki>}</nowiki>, |
||
doi = <nowiki>{</nowiki>10.5281/zenodo.4709777<nowiki>}</nowiki> |
doi = <nowiki>{</nowiki>10.5281/zenodo.4709777<nowiki>}</nowiki> |
||
<nowiki>}</nowiki> |
<nowiki>}</nowiki> |
Revision as of 16:56, 11 January 2022
- Authors
- Jim Newton, Adrien Pommellet
- Where
- Proceedings of the 14th European Lisp Symposium (ELS)
- Place
- Online
- Type
- inproceedings
- Publisher
- European Lisp Symposium
- Projects
- Spot
- Keywords
- infinite alphabets, type systems, Common Lisp, ClojureScala
- Date
- 2021-04-26
Abstract
We present a simple type system inspired by that of Common Lisp. The type system is intended to be embedded into a host language and accepts certain fundamental types from that language as axiomatically given. The type calculus provided in the type system is capable of expressing union, intersection, and complement types, as well as membership, subtype, disjoint, and habitation (non-emptiness) checks. We present a theoretical foundation and two sample implementations, one in Clojure and one in Scala.
Documents
Bibtex (lrde.bib)
@InProceedings{ newton.21.els, author = {Jim Newton and Adrien Pommellet}, title = {A Portable, Simple, Embeddable Type System}, booktitle = {Proceedings of the 14th European Lisp Symposium (ELS)}, year = 2021, lrdestatus = {accepted}, address = {Online}, month = may, abstract = { We present a simple type system inspired by that of Common Lisp. The type system is intended to be embedded into a host language and accepts certain fundamental types from that language as axiomatically given. The type calculus provided in the type system is capable of expressing union, intersection, and complement types, as well as membership, subtype, disjoint, and habitation (non-emptiness) checks. We present a theoretical foundation and two sample implementations, one in Clojure and one in Scala.}, pages = {11--20}, publisher = {European Lisp Symposium}, doi = {10.5281/zenodo.4709777} }