3 ms·
This is definitely a neat release. Red seems to be coming along great, and am interested in what a 1.0 release might look like. Checking their "Roadmap" they ha
by dillon 10y ago
This is definitely a neat release. Red seems to be coming along great, and am interested in what a 1.0 release might look like. Checking their "Roadmap" they have some very interesting (great?) goals. They seem to be heading towards a sort-of "runtime purity" by (at least aiming for) targeting:
- Native (bridging to Obj-C)
- JVM
- CLR
While also supporting shared objects so my assumption is that dynamically linking is possible.
On top of this it looks like they want to support a sort-of wxWidgets-like GUI programming (which I personally believe to be the correct approach to GUI abstractions). Backends they aim to support:
- Windows (done)
- GTK+
- macOS
- iOS
- Android
This reminds me of the approach a lot of JVM focused languages are taking like Clojure that support the CLR, JVM, Node and Web Browser.
I guess the obvious questions to ask would be:
1. Any reason for not wanting to target WebAssembly/JavaScript (and in conjunction node.js [I understand that this isn't trivial])?
2. Any reason targeting QT isn't on the roadmap? [targets for KDE, Sailfish, ect..]
3. Any reason wxWidgets wasn't a great choice as a foundation? (I believe they have a C API last I looked)
4. Is there or will there be an API for creating custom languages that can target/leverage Red's infrastructure? (basically a Red version/wrapper for flex/bison)
Finally, adding support for Erlang nodes should be fairly trivial if it was a wrapper to the C Node API, but it could also be implemented via a pure Red implementation.
tl;dr I'm interested to see how Red will evolve further not necessarily because the syntax intrigues me, but because of the goals the team have set for themselves as far as polymorphic runtimes go.
EDIT: formatting
- greggirwin 10y ago> 1. Any reason for not wanting to target WebAssembly/JavaScript (and in conjunction node.js [I understand that this isn't trivial])? Wasm will likely be the browser target. > 2. Any reason targeting QT isn't on the roadmap? [targets for KDE, Sailfish, ect..] They wanted to go native to start. QT is GPL licensed. Not a good fit for Red. Their "small" installer, which downloads the big stuff, is 18M. Red, with self-contained toolchain and cross compiler + GUI, is 1MB. > 3. Any reason wxWidgets wasn't a great choice as a foundation? (I believe they have a C API last I looked) Targeted at C++, and also very large. > 4. Is there or will there be an API for creating custom languages that can target/leverage Red's infrastructure? (basically a Red version/wrapper for flex/bison) You can use libRed, which makes Red available as a DLL you can call into from other langs, like C. See http://www.red-lang.org/ http://www.red-lang.org/ where a couple GIFs show integration with VBA and Excel even. Ultimately, the decision not to use something comes from value added and available resources. Team Red is small, and has to pick their battles carefully.
- Narishma 10y ago> QT is GPL licensed Wrong. It is triple-licensed (GPL, LGPL and commercial).
- greggirwin 10y agoThanks for the clarification. Still not compatible with Red's licensing model IMO.