小海豹都能懂的 Elixir
Abstract
身為外國人的我從小一直到高中畢業都成長在一個充滿拉丁字母的環境裡。即便我掌握的第一門語言不是英語,由於文字相同,大約在高一, 英文閱讀速度已不次於自己的母語。大概是這個緣故導致我在自學軟體開發時,通通使用英文的教材。後來,當我搬到台灣、找到第一份IT領域的工作之後,我發現這邊的同事大部分也都使用英文的教材自學、查軟體文檔也都會查英文的,我就假設整個台灣都如此,沒有多想過這件事。
後來,我在一間日商的公司上班,發現不少台灣人的同事雖然日文精讀與寫作都是一流的,卻完全看不懂英文的教材,學習編程只好找中文或日文的。即使英文閱讀能力沒問題,有的人還是會去找中文,就是因為閱讀速度還不夠快。我想,這種情形對東亞的科技業有了深遠的影響:一方面,不懂英文的工程師無法追蹤西方最新的潮流,或是對西方的科技發展無興趣;另一方面,東亞的工程師社群可能特別偏好某些技術,譬如來自日本的 Ruby 語言或由中國人開發的 Vue.js。
說實在的,寫本文的動機並不是想要向東方讀者介紹 Elixir 這門程式語言,而是提升筆者的中文寫作能力,還有整理筆者的一些關於 Elixir 程式語言的思想。若哪一位讀者透過閱讀這篇文章認識了 Elixir 之美並決定改變自己的人生,其實只算得上是副作用,筆者恕不負責。
Elixir 到底是什麼?
Elixir 是一門程式語言,基於另外一門叫作 Erlang 的程式語言的虛擬機。Elixir 這門語言相當地新,它的發展大致上能追溯到2012年,發明者為 Ruby on Rails 框架的前任維護者 José Valim。Ruby on Rails 這個框架確實有不少好處,可快速掌握開發 Web 應用程式的技術以及快速開發軟體,但它表面上的簡潔使它深層的邏輯變得錯綜複雜,況且運行起來非常地緩慢。 推廣 Ruby on Rails 的人大多都說運行速度不如開發速度重要,因為伺服器的成本比起工程師的時間廉價得多。 台灣有不少公司使用 Ruby on Rails 開發各種系統,我想不少天天使用 Rails 的人都會有類似的感受:Rails 真的超級慢。 我也是透過 Ruby on Rails 進入 IT 領域的,但後來