Re:A Forth implementation and programming environment for AT...
by mr_luc on Sunday October 13, 2013 @04:57PM
(#6544140)
I mentioned Factor in less detail below, I think it's a lot of fun, but -- from the detail here, might I assume that you're involved with Factor in some way?
If so: does it have a package manager yet?
The last I was plunking around with Factor, 6-8 months ago, uh, "dire" was a good word to describe the package/library management situation. Is that still accurate?
Have you guys considered bootstrapping by using a package manager from another language/ecosystem? For instance, npm is pretty awesome, and they don't really care whether what's being distributed is javascript or not.
Re:A Forth implementation and programming environment for AT...
by evincarofautumn on Sunday October 13, 2013 @05:13PM
(#6544190)
I’m not involved with Factor development, just a casual user and concatenative evangelist. Factor still lacks a package manager; the notion, I suppose, is that the standard library is the standard package repository like npmjs.org for Node or Hackage for Haskell.
Joy[3] was the first language to be described as “concatenative”, invented by the late Manfred von Thun; its operation is defined as a term rewriting system, but it can be implemented using a stack. If you want some theoretical background, Brent Kirby’s Theory of Concatenative Combinators[4] may be enlightening. Cat[5] was the first statically typed concatenative language, and Kitten is my successor to Cat.
If you’re looking at Rust, Kitten[6][7] is designed with similar goals in mind. It’s a language about safe, expressive abstractions with predictable, low runtime costs. It encourages expressing programs as compositions of effects. It is not usable for production but may be fun to play around with; we are currently working on a native backend.
[1]: http://concatenative.org
[2]: http://factorcode.org/
[3]: http://www.kevinalbrecht.com/code/joy-mirror/joy.html
[4]: http://tunes.org/~iepos/joy.html
[5]: http://cat-language.com/
[6]: http://kittenlang.org/
[7]: https://github.com/evincarofautumn/kitten