Where to go from here?
Factor handbook » Guided tour of Factor

Prev:Processes and Channels


We have covered a lot of ground here, and we hope that this has given you a taste of the great things you can do with Factor. You can now work your way through the documentation, and hopefully contribute to Factor yourself.

Let me end with a few tips:
when starting to write Factor, it is very easy to deal a lot with stack shuffling. Learn the combinators well, and do not fear to throw away your first examples.
no definition is too short: aim for one line.
the help system and the inspector are your best friends.

To be fair, we have to mention some drawbacks of Factor:
The community is small. It is difficult to find information about Factor on the internet. However, you can help with this by posting questions on Stack Overflow under the [factor] tag.
The concatenative model is very powerful, but also hard to get good at.
Factor lacks native threads: although the distributed processes make up for it, they incur some cost in serialization.
Factor does not currently have a package manager. Most prominent packages are part of the main Factor distribution.

The Factor source tree is massive, so here's a few vocabularies to get you started off:
We have not talked a lot about errors and exceptions. Learn more in the debugger vocabulary.
The macros vocabulary implements a form of compile time metaprogramming less general than parsing words.
The models vocabulary lets you implement a form of dataflow programming using objects with observable slots.
The match vocabulary implements ML-style pattern matching.
The monads vocabulary implements Haskell-style monads.

These vocabularies are a testament to the power and expressivity of Factor, and we hope that they help you make something you like. Happy hacking!
USE: images.http "https://factorcode.org/logo.png" http-image.