Ginger: Implementing a new Lisp family syntax

Research output: Chapter in Book/Report/Conference proceedingConference contribution

2 Scopus citations

Abstract

In this paper we introduce G-expressions, a new syntax based on the S-expression syntax utilized by most Lisp family languages. We have implemented a new homoiconic language, Ginger, based on this syntax and a Smalltalk inspired object system. Like the Scheme language, Ginger employs only a few special forms and observes a minimalist discipline allowing users to define functions that act like the primitive forms in many Algol-like languages. But unlike Scheme, G-expressions allow Ginger to emulate the aesthetic feel of an Algol-like language syntax. While fundamentally a dialect of Lisp, Ginger implements an attractive modern syntax which can superficially resemble Python or Ruby. This syntactic flexibility exemplifies Ginger's true power as a tool for developing task or domain-specific micro-languages.

Original languageEnglish (US)
Title of host publicationProceedings of the 47th Annual Southeast Regional Conference, ACM-SE 47
DOIs
StatePublished - Nov 24 2009
Event47th Annual Southeast Regional Conference, ACM-SE 47 - Clemson, SC, United States
Duration: Mar 19 2009Mar 21 2009

Publication series

NameProceedings of the 47th Annual Southeast Regional Conference, ACM-SE 47

Other

Other47th Annual Southeast Regional Conference, ACM-SE 47
CountryUnited States
CityClemson, SC
Period3/19/093/21/09

Keywords

  • D.3.1 [Programming Languages]: Formal definitions and theory

ASJC Scopus subject areas

  • Computational Theory and Mathematics
  • Computer Science Applications
  • Hardware and Architecture
  • Software

Fingerprint Dive into the research topics of 'Ginger: Implementing a new Lisp family syntax'. Together they form a unique fingerprint.

  • Cite this

    Palmer, J. D. (2009). Ginger: Implementing a new Lisp family syntax. In Proceedings of the 47th Annual Southeast Regional Conference, ACM-SE 47 [1566481] (Proceedings of the 47th Annual Southeast Regional Conference, ACM-SE 47). https://doi.org/10.1145/1566445.1566481