トップページ⇒tech
1001コメント385KB

LISP Scheme

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
'(hello world)
0951デフォルトの名無しさんNGNG
(cons 1 (cons 2 (cons 3 '())))と
(list 1 2 3)
てどっちが速いの?
0952デフォルトの名無しさんNGNG
>>951
作りによるだろ
終端がnilで良いならlist使っとけ
0953 NGNG
`(,x ,y ,z) と
(list x y z)
てどっちが速いの?
0954デフォルトの名無しさんNGNG
>>953
quasiquoteの実装具合によるだろ
おれっちの環境ではlistが圧倒的に速いけどさ
0955デフォルトの名無しさんNGNG
(list* a b c)
と
`(,a ,b ,@c)
てどっちが速いの?
0956デフォルトの名無しさんNGNG
guileを使っていろいろと遊んでいるところなんですが、
これを終了させるのになにかいい方法はないですか?
いまはCtrl+zしてからkill -9してるんですが、皆さんどうされてますか?
0957デフォルトの名無しさんNGNG
>>955
list*
qquoteは余計な解析パスが掛かる。
>>956
(exit)とか(quit)って無かったっけ。
0958デフォルトの名無しさんNGNG
>>957
!!!ありがとうございます!!!
これを知らずに何日苦労したことか・・・
0959デフォルトの名無しさんNGNG
>>958
Ctrl-D(=端末からのEOF)でもOK。
0960デフォルトの名無しさんNGNG
そろそろ次スレ立てて欲しいところなんだけど、
その前にリンクの整理と参考書籍をまとめようよ!
0961デフォルトの名無しさんNGNG
>>960
とりあえず次スレ立てておきました。
リンク先とかは2以降ということで。
LISP Scheme Part2
http://piza2.2ch.net/test/read.cgi/tech/1002584344/
0962デフォルトの名無しさんNGNG
Schemeについて日本のポータルサイト(?)
http://www.sci.toyama-u.ac.jp/~iwao/Scheme/
0963デフォルトの名無しさんNGNG
■■■■ 推薦書籍 ■■■■

【計算機プログラムの構造と解釈(SICP)】
日本語 http://www.amazon.co.jp/exec/obidos/ASIN/489471163X
原書 http://www.amazon.co.jp/exec/obidos/tg/detail/glance/-/english-books/0262011530

私はこれだけしか読んでないヘタレなので、あとは識者の方、下のリンクから推薦書籍をあげて下さい。
よろしくお願いします。
個人的にはいつの間にか刷られていた、CommonLisp 2edが欲しいところです。
http://www.amazon.co.jp/exec/obidos/tg/detail/glance/-/english-books/1555580416


アマゾン "Scheme" 和書検索結果
http://www.amazon.co.jp/exec/obidos/search-handle-form/250-7032484-4473008

アマゾン "Scheme" 洋書検索結果
http://www.amazon.co.jp/exec/obidos/search-handle-form/250-7032484-4473008

アマゾン "Lisp" 和書検索結果
http://www.amazon.co.jp/exec/obidos/search-handle-form/250-7032484-4473008

アマゾン "Lisp" 洋書検索結果
http://www.amazon.co.jp/exec/obidos/search-handle-form/250-7032484-4473008
0964デフォルトの名無しさんNGNG
SICPへのリンクは?

http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%25_toc_start
0965デフォルトの名無しさんNGNG
すいません、検索結果へ直接は飛べないみたいです。
ごめんなさい。
0966デフォルトの名無しさんNGNG
>>963
Web で読めるよ
0967デフォルトの名無しさんNGNG
>>966
http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%_toc_start
0968964NGNG
>>967

俺の書いたのと何が違うんだ?まあいいけど。
0969Part2の1NGNG
2へ適当にリンク貼っておきました。
足りない様でしたら補完おねがいします。
0970デフォルトのん足NGNG
>>969
ありがとうございます
0971 NGNG
がいしゅつ?

"The Scheme Programming Language Second Edition"
http://www.scheme.com/tspl2d/index.html

日本語訳では「プログラミング言語Scheme」という本になってるよ。
0972デフォルトの名無しさん NGNG
>>971
初出みたいですね。でも関数言語の本ってWebに公開されて
いるものが多いですね。教科書として毎年生徒の数だけ
売れることが約束されているからあんまりセコくならないのかな?
英語だと世界中で教科書として使われるわけだし。
0973デフォルトの名無しさんNGNG
Common Lisp the Language, 2nd Edition
http://www.math.uio.no/cltl/clm/clm.html
0974デフォルトの名無しさんNGNG
C言語 a = b = c;
Scheme (set! a (begin (set! b c) b))
うむむ・・
0975デフォルトの名無しさんNGNG
>>974
副作用が基本の言語と比べるのって...
0976デフォルトの名無しさんNGNG
>>974
記述量を問題にしてるならマクロつかえ
0977デフォルトの名無しさんNGNG
(define b a )
(define c a)
ぢゃだめなの?
0978 NGNG
{hoge ... } => (begin hoge ...)
みたいなマクロって書ける?
0979デフォルトの名無しさんNGNG
>>978
まずカッコが無いとだめ。
(operator args)
が基本なので、無理矢理やるとしたら
({ hoge... ) => (begin hoge ...)
0980デフォルトの名無しさんNGNG
>>980
マクロ文字というのがある。
Schemeでは規定されてないけど、
厳密なLISP処理系ではマクロ文字が定義できる筈。
`',,@(←こういうのは本来マクロ文字。)
マクロ文字は演算子に近いので、シンボルなどと
くっつけて書いても区別される。
'a => (quote a)
マクロ文字は無いけど、どうしても使いたい場合、
(read)を修正するとか。
0981デフォルトの名無しさんNGNG
>>978
0982デフォルトの名無しさんNGNG
>>981
はげしくどうい!
0983デフォルトの名無しさんNGNG
プログラマー板「リスプ」より
http://mentai.2ch.net/test/read.cgi/prog/963134110/

> franz Lispにあるfexprって言う関数は
> XLispにありません。
> exprから誘導出来ますか?

FEXPRは、可変個引数でかつ引数を評価しない関数なので、
マクロで書き直しましょう。引数が評価されてもいいなら、

(defun fname (&rest arg) ふにゃふにゃ)

で可変個引数にしてもいいです。
0984Lisp板の753NGNG
>>983さん
Thanx
今問題のソースPLT Schemeに移植してますがてんとう虫が出まくってます。
あと もし関数に渡す引数が評価されては、まずい場合はどうなんでしょうか?
0985デフォルトの名無しさんNGNG
>>984
だから、マクロで全部解決するって・・
0986Lisp板の753NGNG
(define-macro prove fexpr (wff)
(wang (addr (car wff) (line 0 nil nil nil nil)))
こんな感じでしょうか?
0987デフォルトの名無しさんNGNG
)
define-macro: malformed definition
>
ちゃんちゃん
>malformed definition
    ↑
これもう見飽きました
Xlisp-statに帰ります。
0988デフォルトの名無しさんNGNG
>>986
> (define-macro prove fexpr (wff)
> (wang (addr (car wff) (line 0 nil nil nil nil)))
> こんな感じでしょうか?

XLispってschemeじゃないよね。

< (defmacro prove (wff)
< `(wang (addr (car ,wff) (line 0 nil nil nil nil)))

じゃねーの? XLispにbackquoteあるかどうか知らんけど。
0989デフォルトの名無しさんNGNG
Schemeでnilを定義するばあい、
(define nil '())
(define nil #f)
どっちがいいんでそ?
0990デフォルトの名無しさんNGNG
Lispスレの765さん
>(define-macro fexpr (lambda rest body...))
これはマクロでfexprを定義しているって事ですよね?
カキコしながら またダメ
> (define-macro fexpr (lambda rest body))
> (define prove fexpr (wff)
(wang (addr (car wff) (line 0 nil nil nil nil)))
)
define: malformed definition
>         ↑
       ちゃんちゃん
0991デフォルトの名無しさんNGNG
>>988
ありがとうございます
0992Ruby戦隊NGNG
Ruby >>>>>>>>> Scheme
0993Ruby戦隊NGNG
             
Ruby >>>>>>>> Scheme
0994ruby!NGNG
Ruby!!!!!!!!
0995Ruby!NGNG
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
0996ああああああああNGNG
                         
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
0997Ruby戦隊NGNG
                        
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
0998__ruby!__NGNG
_______________                       
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
0999__RUBY__NGNG
^^^^^^^^^^^^_______________                      
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
るびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびーるびー
10001000!NGNG
Ruby >>>>>>> Scheme
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。