7 ms·
Disclaimer: I work on Tree Notation (http://treenotation.org/ http://treenotation.org/), (https://twitter.com/breckyunits/status/1153016840769007616 https://twi
by breck 7y ago
Disclaimer: I work on Tree Notation (http://treenotation.org/ http://treenotation.org/), (https://twitter.com/breckyunits/status/1153016840769007616 https://twitter.com/breckyunits/status/1153016840769007616).
Prediction: In 10 years the most popular programming languages in the world will not use the current BNF or () style syntaxes but instead will use Tree Notation (with Racket like "Language Oriented Programming" on top), OR will use some other "black swan" syntax that I haven't seen, that is even better than Tree Notation...
I think we're all going to learn that syntax does indeed matter, once machines are writing most of the code.
I'm willing to give even odds for that bet, if there is some type of charity betting site that supports that sort of thing, if anyone disagrees. (Even if you don't disagree, it would be silly to not take that bet for even odds, given fewer than 500 people are actively using Tree Notation today).
- throwaway-d81 7y agoYou can try posting your bet here: http://longbets.org/ http://longbets.org/ Disclaimer: I only know of it because I was looking for something similar once.
- breck 7y agoOh, neat! I did not know longbets was an open platform. I'll post something on there. It will actually be a good exercise, because I should clarify things like "no, I'm not predicting this will be more popular than Excel", which I would agree is a programming language. Thanks!
- boulos 7y agoPlease do and link it here! (For posterity). Fwiw, unless you mean something much narrower than I interpreted your statement to mean, I’m taking the other side of your bet :).
- skybrian 7y agoI'm interested in this kind of thing and followed the links, but I didn't learn enough to decide whether I like your tree notation or not. It might help to write a tutorial just explaining informally what the notation is and what the rules are for using it?
- breck 7y agoGood feedback, thanks! Created an issue for it: https://github.com/breck7/jtree/issues/25 https://github.com/breck7/jtree/issues/25 Hopefully someone else will take up the challenge, as I find that in person here at the center, often my colleagues explain it better than I.
- infogulch 7y agoThis is pretty neat! It seems to be a kind of DSL for making DSLs. The new language is defined in a grammar file and files written in the language can execute directly by adding implementation code to the grammar definition in the form of snippets of js/python/etc associated with the kinds of syntax you define. The syntax of everything is the same: a of tree of tokens. If that sounds like a broad definition, that's because it is. Afaict the only required syntax is that the tokens form a tree; your dsl can assign arbitrary meaning to the actual structure. This might be something I could use at $work, I bet it would fit well into an automation framework. I feel like if I knew some lisp it would give me a different perspective on tree notation.
- _pmf_ 7y agoProbably the only notation that will work on mobile. Strange that so few projects deal with this.
- mbar84 7y agoVery interesting. I was recently thinking that it would be nice to have a common language that would compile to many others (at least to a subset of many others).
- nudpiedo 7y agolook at haxe language
- agumonkey 7y agotree rewriting / processing will also lead to a quite different programming world. no more 'you thought you'd use regexp to solve one problem'
- jcelerier 7y ago> Prediction: In 10 years the most popular programming languages in the world will not use the current BNF or () style syntaxes but instead will use Tree Notation Prediction: in 10 years the most popular programming languages will still be C, Java, Python, Javscript, C++ and C#
- juskrey 7y agoCorrect! https://en.wikipedia.org/wiki/Lindy_effect https://en.wikipedia.org/wiki/Lindy_effect
- thom 7y agoThe rationale here reminds me of Eliezer Yudkowski’s Flare language.
- strictusername 7y agoDo you understand the concept of abstract syntax trees? This already exists in every language and we specifically and deliberately moved away from it because it's not conducive to code.
- nudpiedo 7y agoI think this library is more about a shared common AST representation in order to share some tooling around it and fast prototyping for DSLs. After I read the FAQ I agree with your sentiment, in the way it is documented and worded it sounds quite arrogant to be someone who just discovered the wheel.