Homoiconicity revisited

tags
Homoiconicity

Notes

Homoiconic, a working de�nition

NOTER_PAGE: (2 . 0.6661211129296236)

Strong language support for simple, composable (i.e. tree- like) data structures

NOTER_PAGE: (2 . 0.8216039279869067)

language semantics are directly de�ned

NOTER_PAGE: (2 . 0.9345335515548282)

explicitly re�ected in their visual representation on-screen

NOTER_PAGE: (3 . 0.14566284779050737)

immediately apparant for humans.

NOTER_PAGE: (3 . 0.17430441898527005)

High similarlity between representations

NOTER_PAGE: (3 . 0.25368248772504093)

the head of the programmer

NOTER_PAGE: (3 . 0.34288052373158756)

visual representation

NOTER_PAGE: (3 . 0.3772504091653028)

formal semantics

NOTER_PAGE: (3 . 0.41898527004909986)

implementation

NOTER_PAGE: (3 . 0.4590834697217676)

language semantics are not de�ned in such terms

NOTER_PAGE: (4 . 0.4386252045826514)

JavaScript program is not provided as a JavaScript object

NOTER_PAGE: (4 . 0.4631751227495909)

no special representation for humans exist

NOTER_PAGE: (4 . 0.6350245499181669)

XSLT is de�ned in XML, i.e. in composable, tree-like structures, so it gets a pass on bullets 1, 2 & 3

NOTER_PAGE: (4 . 0.8322422258592471)

“homoiconic, but not a poster child”

NOTER_PAGE: (4 . 0.9132569558101473)

things that might be so obvious to Lispers that they forget to include them in their de�nitions. (“What’s water?” says the �sh)

NOTER_PAGE: (5 . 0.4247135842880524)

the compositional nature of the data type

NOTER_PAGE: (6 . 0.2855973813420622)

data and programs can be composed in the same way

NOTER_PAGE: (6 . 0.3551554828150573)

After all, strings are data. Well… not for Lispers, to whom “data” will likely evoke something more structured

NOTER_PAGE: (6 . 0.6620294599018004)

the program is a piece of hierarchically structured data

NOTER_PAGE: (6 . 0.8044189852700492)

the key point is not that the inner representation can be inferred, but rather that a “good enough model” is easy enough to imagine

NOTER_PAGE: (7 . 0.31014729950900166)