開発環境
- macOS Sierra - Apple (OS)
- Emacs (Text Editor)
- Scheme (プログラミング言語)
- kscm(コンパイラ(ksc)・インタプリタ(ksi)、実装)
- 計算機プログラムの構造と解釈(参考書籍)
Head First HTML5 Programming (Elisabeth Robson (著)、Eric Freeman (著)、O'Reilly Media)の Chapter 2.(Introducing JavaScript and the DOM: A Little Code)、Getting Expressive の EXERCISE(No. 1351) を Scheme で取り組んでみる。
EXERCISE(No. 1351)
コード(Emacs)
Scheme
(begin (load "./lib/stdlib/base.scm") (define res1 (+ (* (/ 9 5) 10) 32)) (define res2 (string-append "Number" " " "2")) (define res3 (>= 5 5)) (define res4 (not (string=? "blue" "pink"))) (define pi (angle -1)) (define res5 (* 2 pi 3)) (define results (list (cons res1 50) (cons res3 #t) (cons res4 #t))) (for-each (lambda (pair) (display (car pair)) (display ": ") (display (eqv? (car pair) (cdr pair))) (newline)) results) (display res2) (display ": ") (display (string=? res2 "Number 2")) (newline) (display "π (angle -1): ") (display pi) (newline) (display res5) (newline) 'done)
入出力結果(Terminal, REPL, ksi, ksc)
$ ./ksi < sample1.scm > 50: #true #true: #true #true: #true Number 2: #true π (angle -1): 3.14159265358979323846264338327950 18.84955592153875943077586029967702 => done > $
0 コメント:
コメントを投稿