[Haskell-cafe] Re: Why is Haskell not homoiconic?

Stefan Monnier monnier at iro.umontreal.ca
Tue Oct 31 10:46:31 EST 2006

>> Homiconic means that "the primary representation of programs is also a
>> data structure in a primitive type of the language itself"

> The main reason is that Haskell is designed as a compiled
> language, so the source of the programme can safely
> disappear at runtime.  So there's no need to have a
> representation of it beyond the source code.

I'm not sure it's relevant.  In syntactically scoped Lisps, the code is
mostly manipulated at compile-time by macros, rather than at run-time.

And indeed, Template Haskell makes Haskell pretty much "homoiconic".


More information about the Haskell-Cafe mailing list