Difference between revisions of "Publications/newton.21.els"

From LRDE

(Created page with "{{Publication | published = true | date = 2021-04-26 | authors = Jim Newton, Adrien Pommellet | title = A Portable, Simple, Embeddable Type System | booktitle = European Lisp...")
 
 
(4 intermediate revisions by the same user not shown)
Line 4: Line 4:
 
| authors = Jim Newton, Adrien Pommellet
 
| authors = Jim Newton, Adrien Pommellet
 
| title = A Portable, Simple, Embeddable Type System
 
| title = A Portable, Simple, Embeddable Type System
| booktitle = European Lisp Symposium
+
| booktitle = Proceedings of the 14th European Lisp Symposium (ELS)
 
| lrdekeywords = infinite alphabets, type systems, Common Lisp, ClojureScala
| lrdestatus = accepted
 
| lrdekeywords = infinite alphabets, type systems, Common Lisp, Clojure, Scala
 
 
| lrdenewsdate = 2021-04-26
 
| lrdenewsdate = 2021-04-26
  +
| lrdepaper = http://www.lrde.epita.fr/dload/papers/newton.21.els.pdf
 
| lrdeprojects = Spot
 
| lrdeprojects = Spot
 
| 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 membershipsubtype, 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
  +
| identifier = doi:10.5281/zenodo.4709777
 
| bibtex =
 
| bibtex =
 
@InProceedings<nowiki>{</nowiki> newton.21.els,
 
@InProceedings<nowiki>{</nowiki> newton.21.els,
 
author = <nowiki>{</nowiki>Jim Newton and Adrien Pommellet<nowiki>}</nowiki>,
 
author = <nowiki>{</nowiki>Jim Newton and Adrien Pommellet<nowiki>}</nowiki>,
 
title = <nowiki>{</nowiki>A Portable, Simple, Embeddable Type System<nowiki>}</nowiki>,
 
title = <nowiki>{</nowiki>A Portable, Simple, Embeddable Type System<nowiki>}</nowiki>,
booktitle = <nowiki>{</nowiki>European Lisp Symposium<nowiki>}</nowiki>,
+
booktitle = <nowiki>{</nowiki>Proceedings of the 14th European Lisp Symposium (ELS)<nowiki>}</nowiki>,
 
year = 2021,
 
year = 2021,
lrdestatus = <nowiki>{</nowiki>accepted<nowiki>}</nowiki>,
 
 
address = <nowiki>{</nowiki>Online<nowiki>}</nowiki>,
 
address = <nowiki>{</nowiki>Online<nowiki>}</nowiki>,
month = apr,
+
month = may,
 
abstract = <nowiki>{</nowiki> We present a simple type system inspired by that of
 
abstract = <nowiki>{</nowiki> We present a simple type system inspired by that of
 
Common Lisp. The type system is intended to be embedded
 
Common Lisp. The type system is intended to be embedded
Line 31: Line 33:
 
(non-emptiness) checks. We present a theoretical foundation
 
(non-emptiness) checks. We present a theoretical foundation
 
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>
 
<nowiki>}</nowiki>
 
<nowiki>}</nowiki>
   

Latest revision as of 12:22, 3 December 2022

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,
  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}
}