Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Abacus - Unified Syntax for Pattern Matching over Algebraic Types in Common Lisp

12 views
Skip to first unread message

Chris Kohlhepp

unread,
Jul 2, 2014, 6:24:09 PM7/2/14
to
I have just wrapped up a small library to add a Haskell inspired, unified syntax for pattern matching over algebraic types for Common Lisp. Code is on Github and article is at the link below. Thought I'd share this with the group.


http://chriskohlhepp.wordpress.com/metacircular-adventures-in-functional-abstraction-challenging-clojure-in-common-lisp/#abacus

Synopsis

Abacus is a library to integrate de-structuring pattern matching from Optima and Algebraic Data Types. Pattern matching and algebraic data types are intimately related in functional programming languages like OCaml and Haskell. As such, this is really a continuation of the blog post http://chriskohlhepp.wordpress.com/metacircular-adventures-in-functional-abstraction-challenging-clojure-in-common-lisp/, but now we are moving into an area of changes to syntax and the compilation process that will require macros. Macros were disallowed in our previous "game" just to see how far we would get with functional programming concepts. I wanted to turn this into a deployable package, hence the choice of a name. The ancient calculator Abacus seemed like a fitting name. The full source code for Abacus is available on Github at https://github.com/chriskmanx/abacus.

Abacus is supported under Emacs SLIME.
0 new messages