【激突】関数型言語 VS オブジェクト指向言語2at TECH【激突】関数型言語 VS オブジェクト指向言語2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト343:デフォルトの名無しさん 12/04/14 05:45:13.46 次は関数型言語使いがお題を出したらいいんじゃないか Rubyじゃこんなの書けないだろ的なのを スレタイの趣旨にも沿ってる 344:デフォルトの名無しさん 12/04/14 05:58:16.50 それ以前に「使える言語機能を恣意的に制限する」アホを 排除しておかないと比較にも議論にもなんねーんだよ 345:デフォルトの名無しさん 12/04/14 05:59:25.03 じゃあ、型的に間違ってるプログラムをコンパイルエラーにしてください、という問題はどうだろうか。 fizzbuzzのscheme多値版ね。マクロ使っちゃっちゃったけど。 (define-syntax fizz (syntax-rules () ((_ arg) (receive it arg (fuzzbuzz it "Fizz" 3))))) (define-syntax buzz (syntax-rules () ((_ arg) (receive it arg (fuzzbuzz it "Buzz" 5))))) (define fuzzbuzz (lambda (arg name m) (let* ((is-num (null? (cdr arg))) (s (if is-num "" (car arg))) (a (if is-num (car arg) (cadr arg)))) (if (= 0 (mod a m)) (values (string-append s name) a) (if is-num a (values s a)))))) (define main (lambda (_) (letrec ((loop (lambda (n) (if (<= n 30) (begin (print (buzz (fizz n))) (loop (+ n 1))))))) (loop 1)))) 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch