Previously, we’ve taken a close look at Python, PHP, and Ruby on WebFaction, which stand out as popular languages with WebFaction users. But there’s a long tail of other languages available and in use on WebFaction servers.

For example, the venerable Perl programming language is available on all WebFaction servers. But not just Perl alone: you also have access to CPAN, the Comprehensive Perl Archive Network, to install a huge variety of libraries. Check out our CPAN documentation for detailed steps to installing modules with CPAN.

Likewise, Java is available on WebFaction servers with OpenJDK. Here’s Web310:

$ java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.5) (rhel-
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)

And though PHP, Python, Ruby, Perl, and Java are some of the most common tools, they’re not comprehensive and we haven’t thought of everything. But WebFaction servers come with tools to make it possible for you to bring in your own toolchest. For example, GCC, a C/C++ compiler, and make are installed on all WebFaction servers, so you can build other software yourself.

Suppose you want to use Erlang, a language known for its support for concurrency. Erlang is not installed by default, but with the help of make and gcc (among several others), you can install in your home directory. Here’s a demonstration of downloading, building, and running an Erlang program on Web310 (long boring parts omitted):

$ wget
$ tar -xf otp_src_R15B02.tar.gz
$ cd otp_src_R15B02
$ ./configure --prefix=$HOME
$ make
$ make install
$ cat > hello.erl << EOF
> -module(hello).
> -export([hello_world/0]).
> hello_world() -> io:fwrite("Hello, WebFactioneers!n").
$ erl
Erlang R15B02 (erts-5.9.2) [source] [64-bit] [smp:16:16] [async-threads:0] [hipe]   [kernel-poll:false]

Eshell V5.9.2  (abort with ^G)
1> c(hello).
2> hello:hello_world().
Hello, WebFactioneers!

Hopefully, this gives you a glimpse of the possibilities open to your WebFaction account, even if they’re off the beaten path. Let us know what you’re using in the comments. If you have any questions, join us on the Q&A Community.