4 ms·
That kinda a broad question. Easy - you can create a live-coding IDE in 20 lines or so, Draw and View a pretty capable for interactive Processing-like demos, b
by 9214 8y ago
That kinda a broad question.
Easy - you can create a live-coding IDE in 20 lines or so, Draw and View a pretty capable for interactive Processing-like demos, bottlenecks can be rewritten in R/S.
Hard - hit the academical papers and define what can be considered a "child-safe programming environment". Then implement a separate toolchain for that.
- vanderZwan 8y agoI was thinking more along the lines of [Somewhere between Easy and Hard?] - make the dialect operate in a safe sandbox that can't destroy your computer ... plus optionally convenience functions fitting for the creative problem domain like how Processing removes a lot of Java boilerplate, and p5 does similar things for using the various JS APIs. One can just look at the APIs of Processing, p5 and OpenFrameworks to get an idea of what works there, though.
- 9214 8y agoSafe sandbox: Rebol had Protect and Secure dialects [1, 2], which are planned to be implemented in Red. Language is very dynamic though, so there's a certain limit on what kind of safety can be enforced at runtime. Creative problem domain: that's what Red is all about in my point of view - slapping domain-specific languages one on top of another to pin down the exact problem space. Draw for 2d vector drawing, View for GUIs, Parse for, well, parsing and metaprogramming, et cetera. The crux is usage of same data format and common notation at every abstraction layer, be it low-level programming or high-level scripting. I don't think that Red can handle large-scale projects the way language workbenches do (yet), but it can be used for moderately small embedded DSLs. Does that answer your question? [1]: http://www.rebol.com/docs/words/wsecure.html http://www.rebol.com/docs/words/wsecure.html [2]: http://www.rebol.com/docs/words/wprotect-system.html http://www.rebol.com/docs/words/wprotect-system.html
- vanderZwan 8y agoYes, thank you!