3 ms·
The problem with all these programming languages is that they aren't novel enough. I have an idea for a programming language that would change fundamental aspec
by imtringued 3y ago
The problem with all these programming languages is that they aren't novel enough. I have an idea for a programming language that would change fundamental aspects. If I wanted to make the programming language I would keep it simple. Just an auto generated parser and interpreter to demonstrate a novel concept. For industrial use, I just want Java with less boilerplate (i.e. Kotlin or Groovy).
The space for niche programming languages is quite large, but nobody is picking the fruit, because a programming language that isn't general purpose isn't as exciting.
- _a_a_a_ 3y ago> I have an idea for a programming language that would change fundamental aspects. I'm interested, go on.
- spinningslate 3y ago> Just an auto generated parser and interpreter I guess you mean one of the parser-generators or PEG libraries to auto-generate the parser. I'm not aware of tools for auto-generating interpreters. Can you point to one/some if there are? Thanks.
- UncleEntity 3y agoThere are methods to generate an interpreter but AFAICT there are no real implementations. Seems to be one of those pure research fields. https://github.com/sillycross/PochiVM https://github.com/sillycross/PochiVM is the closest I've seen to an actual implementation but it looks mostly abandoned. And I'm talking about generators on the same level as flex/bison and not something like pypy where they (used to?) use abstract interpretation/partial evaluation as you're really just transforming a handwritten interpreter with all the hard work that entails.
- Yoric 3y agoThere are tools that let you basically write an interpreter and a compiler at the same time, so perhaps it's that?
- crq-yml 3y agoI believe it's actually quite a bit harder to apply the "principle of least power" in practice than it is to recapitulate Fortran in some fashion. Programming languages boil down to type system + syntax + runtime + libraries, and many libraries could be generalized to languages if we wanted, but languages themselves have trouble supporting other languages because you're reinventing the tooling, so you lose track of types and syntax and ability to debug the runtime, and that produces a cliff of negative productivity that makes it hard to justify anything but the "big" language. Although, if we had first-class support for "runtimes talking to each other", that might change, and the whole spectrum of protocols along those lines from the OS-level pipes and sockets up through SOAP or REST suggest that we are trying really hard to come up with a right way of doing it.
- graypegg 3y agoI never really got into the Etherium development world, (or crypto at all really) but I always found the smart contract environments so interesting. [0] Having "contract" and "address" be top level things seemed so interesting to me. They're not objects, you can't make your own "Contract", it's a language feature. OpenSCAD [1] is another one. I actually wish it went a bit further, it very much feels like a macro language, with all of the tedium of flow control and such. It would be so interesting to see language to define 3D objects via constraints, instead of procedurally! There's so many niches out there, you're 100% right. I'm way more excited about someone's new solutions about a specific problem, rather than solving all the problems with the same local-minima solutions we all know. [0] https://en.wikipedia.org/wiki/Solidity https://en.wikipedia.org/wiki/Solidity [1] https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/The_OpenSCAD_Language https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/The_OpenS...