Dark網站的後端為什麼選擇F#? - darklang

banq發表於2020-11-04

Dark是一家提供構建無伺服器後端的網站,使用該網站功能,只需編寫您的後端程式碼,就不會發生基礎架構,部署或部署方面的噩夢。如今支援這些功能的後端語言將從OCaml遷移到Dark。下面是他們的經驗分享:
Dark的後端是37K行的OCaml,其中8K行是測試,而10K行是Dark標準庫。因此,大約有2萬行程式碼要移植。應該很有趣。
最初是希望選擇Rust語言。Rust具有出色的工具,完善的庫,令人愉悅的社群等。但是花了大約一個月的時間,我不能說我喜歡寫Rust。特別是,我不喜歡在Rust中編寫非同步程式碼。我喜歡能有一種不錯的高階語言,能夠滿足構建像Dark一樣大的專案,但是Rust卻不是那樣的。接下來,我會發布“為什麼Dark為什麼不選擇Rust”。或者我可以稱其為“您永遠不會相信垃圾收集器為您做了多少事情!”。
而F與OCaml足夠接近,具有強大的庫支援,而到目前為止,工具都是強大而又糟糕的組合。90年代的Microsoft工具仍然存在,並且功能還不算太好,但總的來說,這比OCaml或Rust更好。
F#其實也是OCaml。由世界上最大、最有經驗的程式語言建立者提供支援。OCaml很棒的地方F#也很棒!總和型別、靜態型別、立即執行、管道、不可變值等等所有這些確實很棒。
當然,我選擇.NET的主要原因還是因為它的庫。具有用於所有內容的庫,真是令人驚訝。雖然沒有太多的F#第一方庫,但是那裡的每個供應商都有一個.NET SDK,您可以直接從F#中使用它。我期待最終對HoneycombRollbar和Google Cloud提供第一方支援。
我真正喜歡的另一件事是文件和社群內容的質量。OCaml社群的很多內容都涉及該語言以及您可以使用該語言做什麼。企業軟體開發人員有數百萬篇部落格文章等,他們在討論構建Web軟體的最佳方法。
 

相關文章