Memulai pemrograman Erlang di FreeBSD

Pendahuluan

Erlang adalah bahasa pemrograman fungsional yang diciptakan di Ericsson, dirancang untuk sangat skalabel, memiliki ketersediaan tinggi, tahan kesalahan, dan memungkinkan Anda mengubah modul kode saat runtime. Stabilitas FreeBSD dan ketangguhan Erlang membentuk kombinasi yang sempurna.

Erlang semakin populer berkat ketangguhan dan toleransi kesalahannya. Ketika Facebook mengakuisisi WhatsApp pada Januari 2014, terungkap bahwa WhatsApp dibangun menggunakan teknologi FreeBSD dan Erlang yang mampu menangani 1.000.000 koneksi simultan dengan hanya satu server.

Perangkat Lunak yang Dibangun Menggunakan Erlang

Perangkat lunak terkemuka yang dibangun di atas Erlang antara lain

  • Apache CouchDB, sebuah basis data JSON

  • ejabberd, server XMPP yang sangat skalabel,

  • RabbitMQ, antrian pesan yang tangguh,

  • Riak, penyimpanan kunci-nilai NoSQL yang dapat diskalakan secara linier,

  • WhatsApp, aplikasi pesan instan paling sukses

Erlang di FreeBSD

Biasanya di FreeBSD, Anda menginstal perangkat lunak melalui port atau paket. Saya berasumsi Anda menginstal paket dengan menjalankan pkg install erlang, yang akan menginstal Erlang/OTP 18.2.x. OTP adalah singkatan dari Open Telecom Platform dan merupakan kumpulan komponen yang membuat Erlang begitu hebat. Ketika saya menulis tentang Erlang, yang saya maksud sebenarnya adalah Erlang/OTP.

Langkah-langkah awal dengan interpreter

Anda dapat menjalankan interpreter Erlang dengan mengetik erl. Sebuah shell akan terbuka dan menunggu masukan Anda. Anda dapat menutupnya dengan mengetik q(). Tanda titik (.) sangat penting karena menandai akhir masukan Anda, dan Erlang akan mulai menjalankan kode Anda.

Menampilkan jalur kode

 # erl
Erlang R16B03-1 (erts-5.10.4) [source] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V5.10.4  (abort with ^G)
1> code:get_path().
[".","/usr/local/lib/erlang/lib/kernel-2.16.4/ebin",
"/usr/local/lib/erlang/lib/stdlib-1.19.4/ebin",
"/usr/local/lib/erlang/lib/xmerl-1.3.6/ebin",
"/usr/local/lib/erlang/lib/wx-1.1.2/ebin",
"/usr/local/lib/erlang/lib/webtool-0.8.9.2/ebin",
"/usr/local/lib/erlang/lib/typer-0.9.5/ebin",
"/usr/local/lib/erlang/lib/tv-2.1.4.10/ebin",
"/usr/local/lib/erlang/lib/tools-2.6.13/ebin",
"/usr/local/lib/erlang/lib/toolbar-1.4.2.3/ebin",
"/usr/local/lib/erlang/lib/test_server-3.6.4/ebin",
"/usr/local/lib/erlang/lib/syntax_tools-1.6.13/ebin",
"/usr/local/lib/erlang/lib/ssl-5.3.3/ebin",
"/usr/local/lib/erlang/lib/ssh-3.0/ebin",
"/usr/local/lib/erlang/lib/snmp-4.25/ebin",
"/usr/local/lib/erlang/lib/sasl-2.3.4/ebin",
"/usr/local/lib/erlang/lib/runtime_tools-1.8.13/ebin",
"/usr/local/lib/erlang/lib/reltool-0.6.4.1/ebin",
"/usr/local/lib/erlang/lib/public_key-0.21/ebin",
"/usr/local/lib/erlang/lib/pman-2.7.1.4/ebin",
"/usr/local/lib/erlang/lib/percept-0.8.8.2/ebin",
"/usr/local/lib/erlang/lib/parsetools-2.0.10/ebin",
"/usr/local/lib/erlang/lib/otp_mibs-1.0.8/ebin",
"/usr/local/lib/erlang/lib/os_mon-2.2.14/ebin",
"/usr/local/lib/erlang/lib/orber-3.6.26.1/ebin",
"/usr/local/lib/erlang/lib/observer-1.3.1.2/ebin",
"/usr/local/lib/erlang/lib/mnesia-4.11/ebin",
[...]|...]
2> 

Dasar-dasar

Tautan tambahan tentang pemrograman Erlang

Sumber daya yang sangat baik untuk pemrograman Erlang adalah Learn You Some Erlang for Great Good!