4 ms·
Factor's Visual REPL
- swah 16y agoIf only I could install an alternative syntax...
- Avshalom 16y agoHow much of an alternative syntax do you want? Factors at least as flexible as a lisp
- krakensden 16y agoYeah, but for some reason keeping track of flow is much harder. I've tried to use Factor a couple times, but I eventually just get lost in trying to make the logic work. Slava Pestov and his crew have done a really tremendous job at the language and environment, though. Everyone should play around with it once or twice :)
- swah 16y agoYes, a Lisp. I want to write Lisp for Factor. dup swap only gets you so far. Slava's posts are very enlightening, how he decomposes problems into a million words. But in practice, it just takes me too much time to solve problems (that don't involve just calling a library). [edit] Even though you could say I could write code using locals and stuff, but that doesn't feel natural. Or I'm just used to prefix, or prefix is better for some reason. (+ 10 (* 20 30)) looks better to me than 20 30 * 10 +, even though, as Factor folks will tell you, concatenative languages are the ones with the "direct" syntax: Lisp is the one inverted. [edit 2] Another annoying thing: programming in Factor forces you to make a name for code you wouldn't normally name. Again, folks will say that that actually makes your program better, more testable, etc. In practice: harder.
- slava_pestov 16y ago> I want to write Lisp for Factor. That would be a cool project. The Factor compiler enforces static stack effects for words, so mapping them to Lisp functions, and making the generated code efficient, should be pretty doable.
- swah 16y agoHow, or in which level would a Lisp be integrated with Factor? Generate Factor code, generate Factor-VM bytecode?
- spooneybarger 16y agoForth was my first language so I'm quite comfortable with it.
- senki 16y agoRacket has something similar. You can insert images to the source code, draw new images to the REPL, etc. http://docs.racket-lang.org/quick/index.html http://docs.racket-lang.org/quick/index.html