Presentation: Homoiconicity: It Is What It Is

Track: Modern CS in the Real World

Location: Plymouth - Royale, 6th fl.

Duration: 11:50am - 12:40pm

Day of week: Wednesday

Level: Advanced

Persona: Developer


What do Lisp, Prolog, Tcl, machine code, and XSLT have in common? It's a computer science-y word that sounds cool and lends an academic sheen to your programming language, but do you know what "homoiconicity" really means? Maybe you saw some Scheme in college, but S-expressions aren't just about macros. This talk will demonstrate the power that comes from having the same data representation at all layers: programming language, specification, database, inter-process communication, and user interface. As examples, we will look at Clojure, a modern dynamic programming language in the Lisp family, and Datomic, a transactional, distributed database.

Speaker: Stuart Sierra

Clojure Developer/Contributor @Cognitect

Stuart Sierra is a longtime Clojure developer and author of popular open-source libraries such as tools.namespace and Component. He is a developer and consultant at Cognitect, Inc., helping large and small companies use Clojure and Datomic effectively. He is the co-author of ClojureScript: Up and Running (O'Reilly) and Practical Clojure (Apress). Videos of past talks at conferences such as Strange Loop, JavaZone, and Clojure/conj are available online; he also blogs at

Find Stuart Sierra at

Similar Talks

Software Engineer @Agrilyst
Cofounder & CTO, previously Co-Founder & CTO @Gilt
Platform Director, "SeatGeek Open"​ @SeatGeek
Director of Engineering @ Squarespace
Software Engineer @Jet, previous CTO
Leading Machine Learning Researcher, Vowpal Wabbit Contributor
Senior Research Software Development Engineer @Microsoft


Monday, 26 June

Tuesday, 27 June

Wednesday, 28 June