Hacker News new | ask | show | jobs
by medo-bear 1594 days ago
> Before anyone chimes in with "you can do that with macros," patched-in and after-the-fact typing doesn't count.

Why not? Common Lisp macros allow a programmer to implent a new language and to make optimizing compilers. Take for example Coalton, which is a strongly, staticaly, and strictly typed language that can interact with the base language

1 comments

The base specs of lisp/scheme aren't statically typed. If some lisp-like is statically typed from square-one, that's nice, but it's not really lisp at that point.

If I can copy-paste unmodified CL code into Coalton, and it still runs, then Coalton's typing isn't particularly strict. If I can't--if I have to add some form of escaping or FFI decoration--then Coalton isn't lisp. Not that that is a bad thing--just wasn't what I was writing about.

Coalton isnt a lisp, it runs on top of a lisp. Common Lisp provides you with primitives so that you can implement things like this in ways that are much more straight forward than in other languages. This is one of key defining features of being a lisp