Crystal:一個類似于Ruby語法的編程語言

jopen 9年前發布 | 9K 次閱讀 Crystal

    英文原文: Language Goals

Crystal 是一個開源的、類似于 Ruby 語法的編程語言,其特性如下:

  • 類似于 Ruby 的語法;
  • 支持靜態類型檢查,但無需指定變量類型或方法參數;
  • 可在 Crystal 內通過代碼綁定調用C代碼;
  • 在編譯時進行代碼評估和生成,避免了公式化的代碼;
  • 編譯后的代碼是高效的本地碼。
  • </ul>

    Crystal 語法:Hello World

    在 Crytal 中經典的 Hello World 程序代碼是:

    Crystal:一個類似于Ruby語法的編程語言

    采用面向對象思路的寫法是:

    Crystal:一個類似于Ruby語法的編程語言

    采用塊思路的寫法是:

    Crystal:一個類似于Ruby語法的編程語言

    盡管不同寫法得出的程序性能各有差異,但幸好這些寫法都是具表達力的。要運行 Hellow World 程序,請先安裝好相關程序

    然后把 Crystal 代碼保存為 hello.cr 文件,啟動控制臺后鍵入以下命令:

    Crystal:一個類似于Ruby語法的編程語言

    Crystal特性綜述

    高效代碼生成

    Crystal 是非解釋型語言,沒有虛擬機,由 LLVM 編譯為機器代碼。你不必指定變量類型,實例變量或方法參數,與靜態編譯語言類似;Crytal 可自行判斷該采用什么類型。

    多類型變量

    可以不指定變量類型。如果變量被指派了多種類型,在編譯時變量類型是包括所有類型的。在運行時時變量類型才是唯一的。

    Crystal:一個類似于Ruby語法的編程語言

    可以通過a.is_a?或a.responds_to?來檢查類型。

    Crystal:一個類似于Ruby語法的編程語言

    Crystal:一個類似于Ruby語法的編程語言

    方法

    在 Crystal 中,方法是可以重載的,重載依據是參數個數,類型限制及方法的使用與否。

    Crystal:一個類似于Ruby語法的編程語言

    進行C綁定

    可在 Crystal 中進行C代碼綁定,例如以下的 SDL 綁定:

    Crystal:一個類似于Ruby語法的編程語言

    未來特性展望

    • 提供高效的,并行的垃圾回收器;
    • 提供類似于 Erlang 和 Go 的并發原生處理功能;
    • 更好的元編程方式;
    • 提供結構體類型,除了進行C代碼綁定,還能編寫更有效的封裝代碼和更少的內存占用;
    • 元組,命名元組和參數。
    • </ul>

      Hacker News 上開發者對 Crystal 的精彩評論:

      Habosa:我對一個有如此良好文檔支持的新語言所深深震撼了,其技術博客有很多完整的里程碑式文章。

      Arikrak:與 Ruby 如此相似的目的是什么呢?難道是能夠直接運行 Rails?我對此充滿期待。

      SomeCallMeTim:它真的酷斃了!如果能夠在 Windows 平臺上能夠更高效地運行例如C/Go,就更加完美了。

      來自: CSDN
       本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
       轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
       本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!