Settings

Theme

How Io language is Homoiconic?

1 points by kannangce 3 years ago · 1 comment · 1 min read


It's being mentioned that Io language is homoiconic.

To me homoiconic means "Expressing the language in the data-structure of the same langage" . For exp, LISP, is all LISP list.

I'm trying to understand Io is homoiconic?

Though I can see that the Io programs are objects and message, a given statement is not a data-structure of the language per se.

For example, can someone explain how this statement is homoiconic,

``` Number / := method (i, if (i != 0, self origDiv(i), 0) )

```

compressedgas 3 years ago

If this is Steve Dekorte's Io, then the Io page that was at http://www.iolanguage.com/ stated in 2004 that it was like LISP in that "code is a runtime inspectable/modifiable tree". This is not homoiconic in terms of syntax of rather in terms of data model.

Io is so in perhaps the same way as Pico http://pico.vub.ac.be/ is because Pico expresses the code as data type though of specific types which are not normally used for user program data.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection