Skema Cyclone adalah kompiler baru yang memungkinkan pengembangan aplikasi dunia nyata menggunakan standar bahasa skema R 7 RS. Kami menyediakan fitur modern dan sistem yang stabil yang mampu menghasilkan biner asli yang cepat.
Cheney pada MTA digunakan oleh runtime Cyclone untuk mengimplementasikan rekursi ekor penuh, kelanjutan, dan pengumpulan sampah generasi. Selain itu, Cheney pada konsep MTA telah diperluas untuk memungkinkan eksekusi beberapa utas asli. Seorang kolektor sampah yang sedang terbang digunakan untuk mengelola tumpukan generasi kedua dan melakukan koleksi utama tanpa "menghentikan dunia".
syntax-rulesAnda dapat menjalankan interpreter topan tepat di browser Anda. Tidak diperlukan instalasi.
Untuk pengalaman pengguna lengkap - menyusun file, menginstal paket, menjalankan kode asli, dll - perlu menginstal salinan topan.
Ada beberapa opsi instalasi yang tersedia:

Topan dapat dijalankan dari gambar Docker:
docker run -it cyclonescm/cyclone bash

Mac (dan Linux!) Pengguna yang ingin menggunakan homebrew dapat melakukan hal berikut.
Catatan Jika Homebrew belum diinstal: Ikuti instruksi di https://brew.sh/ untuk menginstal manajer paket homebrew.
brew tap cyclone-scheme/cyclone
brew install cyclone-scheme/cyclone/cyclone-bootstrap

Pengguna Arch Linux dapat menginstal menggunakan AUR:
git clone https://aur.archlinux.org/cyclone-scheme.git
cd cyclone-scheme
makepkg -si

Topan tersedia dari repositori paket Gentoo resmi.

Untuk menginstal siklon di mesin Anda untuk pertama kalinya di Linux, Windows, FreeBSD, dan untuk pengguna Mac yang ingin menginstal tanpa menggunakan homebrew, menggunakan Bootstrap Cyclone-Bootstrap untuk membangun satu set binari. Instruksi disediakan untuk Linux, Mac, Windows (melalui MSYS), dan FreeBSD 12.
Setelah menginstal, Anda dapat menjalankan perintah cyclone untuk mengkompilasi file skema tunggal:
$ cyclone examples/fac.scm
$ examples/fac
3628800
Dan perintah icyc untuk memulai interpreter interaktif. Catatan Anda dapat menggunakan rlwrap untuk membuat interpreter lebih ramah, misalnya: 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
Baca dokumentasi di bawah ini untuk informasi lebih lanjut tentang cara menggunakan topan.

Manajer Paket winds menyediakan kemampuan untuk menginstal perpustakaan dan program kemasan untuk topan. Lihat situs Winds untuk informasi lebih lanjut.
Wiki angin berisi daftar lengkap paket dengan dokumentasi.
Manual pengguna mencakup secara rinci cara menggunakan siklon dan memberikan informasi tentang fitur bahasa skema yang diimplementasikan oleh topan.
Referensi API tersedia untuk semua perpustakaan yang disediakan oleh topan, termasuk daftar alfabet lengkap.
Panduan disediakan untuk konvensi kode skema.
Jika Anda memerlukan sumber daya untuk mulai mempelajari bahasa skema, Anda mungkin ingin mencoba buku teks klasik seperti struktur dan interpretasi program komputer.
Akhirnya, halaman tolok ukur ini oleh Ecraven membandingkan kinerja siklon dengan skema lain.
Topan menyediakan beberapa contoh program, termasuk:
Optimalisasi Panggilan Ekor - Contoh sederhana optimasi panggilan ekor skema; Program ini berjalan selamanya, memanggil dua fungsi yang saling berulang.
Threading - Berbagai contoh program multi -threaded.
Game of Life - Program Game of Life Conway's Game of Life dan perpustakaan dari R 7 Rs.
Game of Life PNG Image Generator - Versi Game of Life yang dimodifikasi yang menggunakan libpng untuk membuat gambar dari setiap iterasi alih -alih menulisnya ke konsol. Contoh ini juga menunjukkan penggunaan dasar antarmuka fungsi asing C (FFI).
Akhirnya, program terbesar adalah kompiler itu sendiri. Sebagian besar kode terkandung dalam serangkaian perpustakaan yang digunakan oleh cyclone.scm dan icyc.scm untuk membuat executable untuk kompiler dan penerjemah Cyclone.
Menulis kompiler skema siklon memberikan detail tingkat tinggi tentang bagaimana kompiler ditulis dan cara kerjanya.
Ada panduan pengembangan dengan instruksi untuk tugas -tugas umum saat meretas kompiler itu sendiri.
Kolektor sampah Cyclone didokumentasikan pada tingkat tinggi. Dokumen ini mencakup detail tentang memperluas Cheney pada MTA untuk mendukung banyak tumpukan dan menggabungkan pendekatan itu dengan kolektor penandaan tri-warna.
Hak Cipta (C) 2014 Justin Ethier.
Topan tersedia di bawah lisensi MIT.