News for hackers. Stuff that matters.
Re:A Forth implementation and programming environment for AT... by evincarofautumn on Sunday October 13, 2013 @04:36PM (#6544072)
You want to check out concatenative programming[1] and particularly #concatenative on Freenode. Factor[2] is the preeminent concatenative language at this time. It is dynamically typed and comes with an excellent interactive environment and a fairly large collection of libraries. It feels very much like “Lisp done right”—which is to say that it’s very practical, and you get much more composability and metaprogramming power without all the parentheses.

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

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.
Re:A Forth implementation and programming environment for AT... by mr_luc on Monday October 14, 2013 @10:59AM (#6547602)
Hmm. Man, maybe I should see if I can hack something together using npm and a naming convention.

Package managers are ... important.

Re:A Forth implementation and programming environment for AT... by jyf1987 on Monday October 14, 2013 @01:43AM (#6545555)
factor is cool and fasion except it only focus on x86 right now