日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

EMQ团队正式向全球 IoT&5G 市场发布开源函数编程语言 - Hamler

發(fā)布時間:2023/11/22 58 生活家
生活随笔 收集整理的這篇文章主要介紹了 EMQ团队正式向全球 IoT&5G 市场发布开源函数编程语言 - Hamler 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  EMQ團隊很高興正式向全球 IoT&5G 市場發(fā)布開源函數編程語言 - Hamler!

  Hamler 是一門構建在 Erlang虛擬機(VM)上的 Haskell風格的強類型(strongly-typed)編程語言,獨特地結合了編譯時的類型檢查推導,與對運行時高并發(fā)和軟實時能力的支持。

  Hamler 編程語言將賦予行業(yè),尤其是 5G、IoT、云計算和邊緣計算等潛力領域,構建下一代高可靠、可擴展、具備軟實時支持應用的能力。

  為什么發(fā)布 Hamler?

  近十年來,我們一直在開發(fā)基于 Erlang/OTP 的軟件系統(tǒng),特別是我們的核心產品可伸縮分布式開源 MQTT 服務器 - EMQ X。我們一直認為 Erlang/OTP,尤其是 Beam 虛擬機是工程學的杰作。它具有出色的并發(fā)性、分布性和容錯性,是少數正確處理高并發(fā)和軟實時的通用語言平臺,是最適合開發(fā) IoT 和 5G 應用的平臺之一。

  從多年開發(fā) Erlang 程序經驗來看,我們一直期待解決兩個問題:編譯時類型系統(tǒng)更友好的程序語法。編譯時強大的類型系統(tǒng)有助于我們構建更可靠的軟件系統(tǒng);更友好的語法有助于我們創(chuàng)建一個繁榮的開發(fā)者社區(qū)。

  為此學術界和產業(yè)界付出了近 20 年的努力。首先是 Philip Wadler教授和 Simon Marlow在 2000 年前后,為 Erlang 引入了類型標注和 Dialyzer靜態(tài)類型檢查工具。

  • Simon Marlow & Philip Wadler (1997): A practical subtyping system for Erlang
  • Philip Wadler (2002): The great type hope

  2008 年后,產業(yè)界有近 20 個項目,不斷地嘗試解決類型系統(tǒng)和友好語法的問題。elixir項目引入了 Ruby 語法,吸引了部分 Ruby On Rails 社區(qū)開發(fā)者,卻沒有類型系統(tǒng)支持。Akka項目在 JVM 上模擬實現了 Erlang/OTP ,但喪失了 Erlang/OTP 的軟實時特性。Well-Typed 公司的 Cloud Haskell項目試圖在 Haskell 上模擬實現 Erlang/OTP,目前項目已經停滯。此外還有 lfe引入了 Lisp 語法,alpaca、efene、elchemy、gleam等項目試圖引入 ML 風格語法和靜態(tài)類型,目前大部分仍處于很早期的開發(fā)中。

  今天,EMQ 團隊做出努力,采用新的語言架構設計方式再一次嘗試解決上述問題,正式向業(yè)界發(fā)布 Hamler 語言 0.1 版本!

  Hamler 語言主要特性

  Hamler 作為運行在 Erlang VM 上的類 Haskell 語法的編程語言,核心特性可以概括為:

  • 類 Haskell 和 ML 的友好語法
  • 編譯時的類型檢查與類型推導
  • 運行時的高并發(fā)、軟實時支持

  結合我們多年對函數式編程的理解與開發(fā) Erlang、Haskell 程序的經驗,Hamler 語言支持函數編程大部分主要特性,我們相信這些特性可以幫助產業(yè)更好地迎接 5G、IoT 、邊緣計算與云計算帶來的開發(fā)浪潮,并吸引更多的開發(fā)者使用 Erlang VM - BEAM。

  • 聲明式與函數式編程
  • 類 Haskell 與 ML 語法
  • 編譯時類型檢查與推導
  • 代數類型系統(tǒng)支持(ADT)
  • 函數、閉包、高階函數
  • Currying and partial application
  • Pattern matching, and Guards
  • List comprehension
  • Applicative and Monad
  • 更高級的模塊系統(tǒng)
  • 高并發(fā)、軟實時支持

  Hamler 編譯器設計

  Hamler 源碼經過詞法分析后生成 CST,然后經過 CST -> AST -> CoreFn 的語法樹變換、語法分析與類型檢查后,生成 CoreErlang 的 IR 代碼,然后由 Erlang 編譯器生成最終的二進制 Beam 文件。

  Hamler 編譯器架構如下圖:

  Hamler 0.1 編譯器最初嘗試基于 GHC 8.10.1 實現,后改為基于 Purescript 0.13.6 實現。

  歡迎參與 Hamler 開源項目

  Hamler 函數編程語言從發(fā)起即是一個開源項目,目前核心開發(fā)者主要來自 EMQ 公司研發(fā)團隊:

  • Feng Lee: Hamler 語言設計者,貢獻了一個夢想和大部分 libs
  • Yang M: 貢獻了 Hamler 編譯器大部分代碼
  • S Hu: 來自 University of Bristol,貢獻了 Hamler 大部分文檔
  • wivwiv: 貢獻了 hamler-lang.org 網站 theme 設計
  • CrazyWisdom: 貢獻了 hamler-lang.org 網站域名
  • ysfscream: 貢獻了 hamler-lang.org 網站和 https 設置
  • juan6666:貢獻了 Hamler 語言 Logo 設計

  Hamler 開源項目最終將與合作伙伴一起,貢獻給歐盟 2049 開放源碼基金會 - 2049. Foundation。

總結

以上是生活随笔為你收集整理的EMQ团队正式向全球 IoT&5G 市场发布开源函数编程语言 - Hamler的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。