Menggunakan sekte dan slot di Skema
Saya mencoba mempelajari awal dari FP, dengan bantuan "Algoritma untuk Pemrograman Fungsional". Pada bab 2 penulis memperkenalkan kata kunci sect
dan <>
. Salah satu prosedur dalam buku tersebut adalah:
(define add1 (sect + <> 1))
Saya menggunakan Repl.it untuk menghitung prosedur. Tapi sayangnya, itu menimbulkan kesalahan berikut:
Error: execute: unbound symbol: "<>" []
Kemudian saya mencoba Racket, karena saya baca di sini Repl.it menggunakan BiwaScheme yang tidak sepenuhnya mendukung standar Skema apa pun. Tapi kemudian saya mendapat kesalahan lain:
sect: undefined;
cannot reference an identifier before its definition
Jadi, apakah saya melakukan sesuatu yang salah? Atau apakah ada editor / IDE lain yang harus saya gunakan?
Jawaban
Saya salah, keduanya sect
dan <>
bukan kata kunci Skema. Dalam kata pengantar disebutkan penulis menggunakan (afp primitives)
perpustakaan untuk prosedur primitif dan ekstensi sintaks. Dengan menggunakan pustaka ini, Anda mendapatkan banyak prosedur tambahan yang siap Anda pakai.
Anda bisa mendownloadnya disini .
Raket hadir dengan suatu add1fungsi; tidak perlu mendefinisikan sendiri.
Dan itu mendukung SRFI-26 cut
, yang sect
terlihat dengan nama lain yang lebih umum:
> (require srfi/26)
> ((cut + 1 <>) 2)
3