3 ms·
What a terrible idea. I'm surprised I need to spell out that the benefit of learning a language is that you can actually use it, and the effort-reward ratio is
by nprateem 8y ago
What a terrible idea. I'm surprised I need to spell out that the benefit of learning a language is that you can actually use it, and the effort-reward ratio is far better if you can reuse it widely. Plus a language is far more than its syntax and compiler - its the ecosystem that makes a language productive. The last thing we need is for an explosion of half-implemented, poorly supported toy languages for individual programs.
- fsloth 8y agoI disagree. A cambrian explosion of 'toy' languages is exactly what we need so that the few that become popular reach the maturity you desire. I have this itch that there is an explicit slot in our native language infrastructure for a scripting language that is a bit less clunky than Lua, not so huge as Python, and more ClojureScript like than the other embedded lispies out there, that is trivial to embed, has a fantastic interface to C++ and is utterly pragmatic yet elegant. A small subset of Python would probably do...
- rcarmo 8y agoCython is great, and is a subset for native compile/interop that is often overlooked.
- fsloth 8y agoI agree on principle. However, in the comment above I was thinking about a scripting language that is trivial to bolt on to an existing native program, by including just a few header and source files. Like Lua, Duktape, etc. Or how sqlite is distributed in amalgamated form.
- sitkack 8y agoYou might be interested in Starlark [sic], https://docs.bazel.build/versions/master/skylark/language.html https://docs.bazel.build/versions/master/skylark/language.ht...
- p0nce 8y agoUnless you are the competitors.
- kapep 8y agoI agree but at least some of the ecosystem concerns can be mitigated if you choose the right technologies to build your language. For example Eclipse Xtext lets you design languages that can easily interact with Java code and tooling, and it provides a lot tooling support like build integration in the IDE, syntax highlighting and code completions without much effort. If you keep the scope of the language small and treat it like any other module in your projects than its not hard to maintain.