8 ms·
How does that work? Homoiconicity is a property of the language, not something you can develop as a layer.
by kubb 3mo ago
How does that work? Homoiconicity is a property of the language, not something you can develop as a layer.
- conartist6 3mo agoJS was already pretty close. Babel allows a fantastic degree of power in code transformation, it just doesn't preserve blank space. If I were to use my preferred terminology I would simply call these transform-your-own-code formats "embeddings", and there can be many embeddings for a single language.
- iLemming 3mo ago> Babel allows a fantastic degree of power in code transformation That's still not homoiconicity. It reminds me old Stuart Sierra's presentation from Clojure/conj¹. Around 6 minute mark: "Adding eval to a language, even successfully, does not count as homoiconicity"... "and you didn't even succeed at that..." --- ¹ https://www.youtube.com/watch?v=o7zyGMcav3c https://www.youtube.com/watch?v=o7zyGMcav3c