4 ms·
For those of you who have not been following along at home (like me), here is a description of the Red programming language from the about page[1]: Red is a
by curtis 10y ago
For those of you who have not been following along at home (like me), here is a description of the Red programming language from the about page[1]:
Red is a next-gen programming language, strongly inspired by REBOL. Main features are:
* Homoiconic (Red is its own meta-language and own data-format)
* Functional, imperative, reactive and symbolic programming
* Prototype-based object support
* Gradual and multi-typing
* Rich set of built-in datatypes (50+)
* Both statically and JIT-compiled to native code
* Cross-compilation done right.
* Produces executables of less than 1MB, with no dependencies.
* Concurrency and parallelism strong support (actors, parallel collections)
* Low-level system programming abilities through the built-in Red/System DSL
* Powerful PEG parser DSL
* Cross-platform native GUI system, with a UI DSL and drawing DSL.
* Bridging to the JVM
* High-level scripting and REPL console included
* Highly embeddable
* Low memory footprint, garbage collected
* Single-file (~1MB) contains whole toolchain, standard library and REPL.
* No install
* Fun, guaranteed. ;-)
[1] http://www.red-lang.org/p/about.html http://www.red-lang.org/p/about.html
- HillRat 10y agoRed is one of those languages that I forget about until a story like this comes along, and then I'm reminded how much I want it to mature to 1.0. Looks like full I/O support will be probably be released in the next 12 months or so, which will really open up some interesting opportunities. (The Rx capabilities in the current version mean that the only thing holding me back from using it in a professional capacity is the lack of an OSX GUI backend.)
- mapcars 10y agoOSX GUI is almost ready: https://twitter.com/red_lang/status/771268451314696193 https://twitter.com/red_lang/status/771268451314696193
- dmitriid 10y agoYou also forget that according to their roadmap core concepts like garbage collection, actor model, I/O are to be implemented after most of the language and libraries are there. Seeing how those three things deeply impact each other and everything in the language and the libraries, one is left to wonder...
- voaie 10y agoAfter some experience with Factor (a very interesting concatenative language with great C FFI support), I think Red is the next exciting language for me to try. Just waiting for the I/O module. :)
- Buttons840 10y agoYou forgot case-insensitive string comparisons by default. I'm still trying to decide if I like that default. Ultimately it's a small thing that doesn't really matter though.
- throwaway7645 10y agoDidn't know about that, but I think Rebol was the same way. I'm not sure what you gain from insensitivity here. In my opinion, "Hello" != "hello".
- draegtun 10y agoIn Rebol / Red... >> "Hello" != "hello" == false >> "Hello" !== "hello" == true !== is a stricter equal [1] where both values must be of same type and is case sensitive on strings, chars & words. [1] see strict-equal? function - http://www.rebol.com/r3/docs/functions/strict-equal-q.html http://www.rebol.com/r3/docs/functions/strict-equal-q.html
- throwaway7645 10y agoThanks for clearing that up!
- perilunar 10y ago> * Cross-platform native GUI system, with a UI DSL and drawing DSL. Looks like the GUI system is Windows-only at this point. Compiling the GUI "Hello World" example on OS X just throws errors.
- pekr 10y agoOS-X GUI is heavily being worked on. You can watch its progress here: https://github.com/qtxie/red/commits/GUI https://github.com/qtxie/red/commits/GUI Also - the corresponding Trello board is here: https://trello.com/c/UgsrhiHf/143-macosx-gui-backend https://trello.com/c/UgsrhiHf/143-macosx-gui-backend