Hacker News new | past | comments | ask | show | jobs | submit login

FWIW I've also gone down a similar rabbit hole, and written a bunch of code too in that direction. Resources here:

https://github.com/oilshell/oil/wiki/Compact-AST-Representat...

I wouldn't be surprised that somebody else thought of the same idea -- that happens all the time. The canonical example is that two people independently invented calculus :)

https://en.wikipedia.org/wiki/Multiple_discovery

I also found that the academic projects Morbig/Colis and Smoosh independently did some of the same things I'm doing Oil, at pretty much the exact same time (2016-2017).

Links here: https://github.com/oilshell/oil/wiki/ExternalResources

Some things are just "in the air". I think there are probably a lot more precursors to what you were doing than you were aware of (some of which may be on that wiki page -- I also have a private wiki page called "Avoiding Pointers" with some more academic papers, if you're interested).

I mention Ken Thompson's encodings of regexes, and that was in the 60's. He didn't motivate it by "avoiding pointers", and it's specific to a particular application rather than a general purpose language, but the idea is the same.

The code I wrote was inspired by capnproto to a large extent, and the author chimed in here with the similarities to this language. protobufs/capnproto are basically a language-independent type system, and it's not that big a jump to go from a type system to a general programming language.




Funny, because I been kicking around an idea to remove pointers entirely form a language, the compiler and the implementation. Maybe even the ISA. So heavy, literal, concrete, absolute. Pointers do not go with the flow.

Pointers are a junk-food abstraction that needs to go away.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: