
31 Oct
2006
31 Oct
'06
10:46 a.m.
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". Stefan