Cyclone計劃是一種全新的編譯器,允許使用R 7 RS方案語言標準的實際應用程序開發。我們提供現代功能和能夠生成快速本地二進制的穩定係統。
Cyclone的運行時使用了MTA上的切尼(Cheney),以實現完整的尾部遞歸,連續性和世代垃圾收集。此外,MTA概念上的Cheney已擴展,以允許執行多個本機線程。一家垃圾收集器用於管理第二代堆,並在不“阻止世界”的情況下執行主要收藏。
syntax-rules的衛生宏您可以在瀏覽器中直接運行旋風解釋器。無需安裝。
對於完整的用戶體驗 - 編譯文件,安裝軟件包,運行本機代碼等 - 必須安裝旋風的副本。
有幾個可用的安裝選項:

旋風可以從Docker圖像運行:
docker run -it cyclonescm/cyclone bash

想要使用自製的Mac(和Linux!)用戶可以執行以下操作。
請注意,如果尚未安裝Homebrew:請按照https://brew.sh/的說明安裝Homebrew Package Manager。
brew tap cyclone-scheme/cyclone
brew install cyclone-scheme/cyclone/cyclone-bootstrap

Arch Linux用戶可以使用AUR安裝:
git clone https://aur.archlinux.org/cyclone-scheme.git
cd cyclone-scheme
makepkg -si

可從Gentoo官方包裝存儲庫中獲得旋風。

要在Linux,Windows,FreeBSD和想要安裝的MAC用戶中首次安裝旋風分機,請使用Cyclone-Bootstrap構建一組二進製文件。為Linux,Mac,Windows(通過MSYS)和FreeBSD 12提供了說明。
安裝後,您可以運行cyclone命令來編譯單個方案文件:
$ cyclone examples/fac.scm
$ examples/fac
3628800
以及啟動交互式解釋器的icyc命令。請注意,您可以使用rlwrap使解釋器更友好,例如: rlwrap icyc :
$ icyc
:@
@@@
@@@@:
`@@@@@+
.@@@+@@@
@@ @@ Cyclone Scheme->C compiler
,@ http://justinethier.github.io/cyclone/
'@
.@
@@ #@ (c) 2014-2019 Justin Ethier
`@@@#@@@. Version 0.11
#@@@@@
+@@@+
@@#
`@.
cyclone> (write 'hello-world)
hello-world
閱讀以下文檔,以獲取有關如何使用旋風的更多信息。

winds包管理器提供了安裝包裝庫和旋風的程序的能力。有關更多信息,請參見風網站。
Wiki Wiki包含包含文檔的包裝的完整列表。
用戶手冊詳細介紹瞭如何使用旋風並提供有關旋風實現的方案語言功能的信息。
旋風提供的所有庫可用API參考,包括完整的字母列表。
為方案代碼約定提供了指南。
如果您需要資源來開始學習方案語言,則可能需要嘗試經典的教科書,例如計算機程序的結構和解釋。
最後,此基準頁面由Ecraven進行了比較,將旋風的性能與其他方案進行了比較。
旋風提供了多個示例程序,包括:
尾聲優化 - 方案尾聲優化的簡單示例;該程序永遠運行,呼籲兩個相互遞歸的功能。
線程 - 多線程程序的各種示例。
生命遊戲 - 康威的生活示例節目和Rs的圖書館。
生命遊戲PNG圖像生成器 - 一種修改的生命遊戲版本,使用libpng創建每種迭代的圖像,而不是將其寫入控制台。此示例還展示了C外函數接口(FFI)的基本用法。
最後,最大的程序是編譯器本身。大多數代碼都包含在一系列庫中,這些庫由cyclone.scm和icyc.scm使用,用於為Cyclone的編譯器和解釋器創建可執行文件。
編寫Cyclone方案編譯器提供了有關編譯器的編寫方式以及其工作原理的高級細節。
有一個開髮指南,並在編譯器本身上黑客攻擊時提供了有關常見任務的說明。
Cyclone的垃圾收集器有一個高級記錄。本文檔包括有關將切尼在MTA上擴展的詳細信息,以支持多個堆棧,並將該方法與三色標記收集器融合在一起。
版權(C)2014 Justin Ethier。
旋風可在MIT許可下獲得。