<% USING: accessors html.elements html.streams http.client io io.encodings.utf8 io.files kernel multiline namespaces random sequences splitting webapps.mason.backend webapps.mason.downloads webapps.mason.grids webapps.mason.utils webapps.mason.version.data xml.writer xmode.highlight ; %> Factor programming language
Factor programming language

Why Factor

The Factor programming language is a concatenative, stack-based programming language with high-level features including dynamic types, extensible syntax, macros, and garbage collection. On a practical side, Factor has a full-featured library, supports many different platforms, and has been extensively documented.

The implementation is fully compiled for performance, while still supporting interactive development. Factor applications are portable between all common platforms. Factor can deploy stand-alone applications on all platforms. Full source code for the Factor project is available under a BSD license.

<%
"resource:extra/websites/factorcode/examples.txt" utf8 file-lines
{ "----" } split random
"factor" [ highlight-lines ] with-html-writer
xml>string write-html
%>

Downloads

<% [ %>

To download a binary, follow the link for the desired OS / CPU configuration. Binary packages are the recommended route for new users who wish to try Factor.

Stable release: <% latest-version > =href a> ] [ version>> write ] bi %>

<% release-grid write-xml %>

Source code: <% latest-version > download-url =href a> ] [ version>> write ] bi %>

Development release

<% package-grid write-xml %> <% ] with-mason-db %>

Source code: available via github or gitweb.

Stable and development releases are built and uploaded by the build farm. Follow @FactorBuilds on Twitter to receive notifications. If you're curious, take a look at the build farm dashboard. You can also build Factor on your own platform from source.

Community