Hacker News new | ask | show | jobs
by julesrms 2605 days ago
We pre-emptively answered this inevitable question in the overview doc: https://github.com/soul-lang/SOUL/blob/master/docs/SOUL_Over...

The main TL;DRs are:

- this needs to get JITed to compete with C++ performance, so dynamic and interpreted languages are out.

- it needs to stop people doing anything which is real-time unsafe, so any language which involves a heap or GC is out

- it needs to be secure enough to not pose a security risk if deployed to an embedded bare-metal device, so C is out.

- it needs to be super-easy to learn for all programmers, and especially for grizzled old C/C++/Javascript/C# people who aren't into any of that fancy functional nonsense

- it needs to strongly enforce and represent a graph structure at a syntactic level, so.. pretty much all existing languages are out.

1 comments

> - it needs to strongly enforce and represent a graph structure at a syntactic level, so.. pretty much all existing languages are out.

... except languages designed for real-time signal processing based on dataflow graphs such as Kronos (https://www.mitpressjournals.org/doi/pdfplus/10.1162/COMJ_a_...), Céu (http://www.ceu-lang.org/chico/ceumedia_webmedia16_pre.pdf), Antescofo (https://hal.inria.fr/hal-01585489) and the oldies such as SIGNAL, Lustre, Esterel, etc... :p

OK, fair point! Maybe a better way for me to phrase what I meant there would have been "pretty much all mainstream languages are out"