2 ms·
How so? Homoiconicity means that everything uses the same form of representation, and I’m familiar with how these things look in Lisp.
by layer8 2mo ago
How so? Homoiconicity means that everything uses the same form of representation, and I’m familiar with how these things look in Lisp.
- eru 2mo agoHomoiconicity doesn't mean everything has to _look_ the same. If the term has any meaning, it's about how program source code can be represented and manipulated easily by the user. (And I say 'can' deliberately, because even Lisps still allow you to treat source code as a big flat string, if you want to.) I don't think homoiconicity is all that much of a useful concept. It's very hard to pin down. Eg C can represent its own source code, too, if a bit clunkily. And Lisps generally don't execute by walking over s-expressions: their internal representation of their own logic typically uses more sophisticated structures (and adding native code compilers to the mix complicates matters further).