從零開始上手 Factor 的入門概觀
有許多很棒的資源可以學習 Factor。
Andrea Ferretti 的 Factor 教學是一份詳盡的語言導覽,從堆疊基礎一路進展到超程式設計、分散式運算,以及使用 Furnace 進行網頁開發。
Factor in 2022 是 John Benediktsson 和 Doug Coleman 在 2022 年的演講,帶你遊覽這門語言,以及現今使用它的模樣。
Leo Brodie 的Thinking Forth是 Forth 設計哲學與思維習慣的經典之作。Factor 不是 Forth,但它繼承了串接式、堆疊導向的思維方式,而 Brodie 的書是認識那種思考方式的最佳入門。
Factor 的說明文件非常豐富,而且內容驚人地完整。它有離線版本,可以直接在圖形介面的 Listener 或命令列中搜尋,同樣可搜尋的文件也有線上版本。
Björn Lindqvist 的 playground-factor是一個充滿有趣技巧與訣竅的儲存庫。身為 Factor 開發者之一的 Björn 不太常更新它,而且它還是進行中的作品(其中許多內容正被移至 GitHub Wiki),但裡面的東西仍然非常酷。
Learn X in Y Minutes有一份 Factor 教學。它稱不上詳盡,但很適合當參考,也足以帶你上手。
Rosetta Code:Factor是一個程式語言文選網站的一部分。在數百種其他語言之中,它收錄了許多問題的 Factor 解法,你可以拿來和自己已經熟悉的語言互相比較,是學習解法時很好的參考與起點。
最後,也許也是最不重要的:
Stack Overflow。這裡的社群不大(好吧,大約三個人,包括在下我),但如果你真的、真的卡住了,在那裡提問,一定會有人幫你。
郵件論壇。在這裡,你可以詢問任何與 Factor 相關的問題,會有協作者熱心回覆。
Factor 有 IRC 頻道!快來加入我們吧,我們很樂意幫忙喔。
學習並閱讀關於 Common Lisp Object System 的內容。CLOS 普遍被認為是世界上最先進、最具創新性的物件模型,而 Factor 的物件模型深受它啟發,也大量以它為基礎。
在許多方面,Factor 都是一門 Lisp。它是後綴式、無點式、函式式,而且裡裡外外都反過來、看起來很滑稽的 Lisp,但許多理念是相同的。因此,學習一門 Lisp 可能會很有幫助,最好是函式和變數共用命名空間的 Lisp-1(因為在函式式程式設計中,函式就是值)。在下我誠心推薦 Scheme,或者,想要更現代、更好用的東西,可以選擇 Racket,它是 Scheme 的後裔。
最後,Factor 幾乎完全是用 Factor 寫成的。所以,去讀原始碼吧,並在文件中搜尋你不認識的詞。