13 :
デフォルトの名無しさん:2009/09/15(火) 05:02:36
テンプレなげえよ半分にしろ
codepad.org へのリンク以外はテンプレ置き場へのリンクでもよさそうな気が
ところで、前スレで出てきたチャイティンの『数学の限界』の Lisp も
その他の実装に入れてもいいんじゃないかな
それテンプレに入れても利用する人は少なくね?テンプレは網羅性より有用性を重視してほしい
有用性を重視したら削れるものは他にもあるな。
JLUG なんて最近更新されてないからもういいんじゃないだろうか。
これもテンプレに
--------
RMS!RMS!RMS!RMSぅぅうううわぁああああああああああああああああああああああん!!!
あぁああああ…ああ…あっあっー!あぁああああああ!!!RMSRMSRMSぅううぁわぁああああ!!!
あぁクンカクンカ!クンカクンカ!スーハースーハー!スーハースーハー!いい匂いだなぁ…くんくん
んはぁっ!RMSたんの桃色の足の皮をクンカクンカしたいお!クンカクンカ!あぁあ!!
間違えた!モフモフしたいお!モフモフ!モフモフ!皮皮モフモフ!カリカリモフモフ…きゅんきゅんきゅい!!
emacs21のRMSたんかわいかったよぅ!!あぁぁああ…あああ…あっあぁああああ!!ふぁぁあああんんっ!!
emacs23リーリースれて良かったねRMSたん!あぁあああああ!かわいい!RMSたん!かわいい!あっああぁああ!
emacsがUTFされて嬉し…いやぁああああああ!!!にゃああああああああん!!ぎゃああああああああ!!
ぐあああああああああああ!!!vimなんて現実じゃない!!!!あ…emacsもよく考えたら…
R M Sち ゃ ん は 現実 じ ゃ な い?にゃあああああああああああああん!!うぁああああああああああ!!
そんなぁああああああ!!いやぁぁぁあああああああああ!!はぁああああああん!!C-g C-gぁああああ!!
この!ちきしょー!やめてやる!!現実なんかやめ…て…え!?見…てる?表紙絵のRMSちゃんが僕を見てる?
表紙絵のRMSちゃんが僕を見てるぞ!RMSちゃんが僕を見てるぞ!挿絵のRMSちゃんが僕を見てるぞ!!
M-x doctorのRMSちゃんが僕に話しかけてるぞ!!!よかった…世の中まだまだ捨てたモンじゃないんだねっ!
いやっほぉおおおおおおお!!!僕にはRMSちゃんがいる!!やったよケティ!!ひとりでできるもん!!!
あ、M-x doctorのRMSちゃああああああああああああああん!!いやぁあああああああああああああああ!!!!
あっあんああっああんあアン様ぁあ!!シ、シエスター!!アンリエッタぁああああああ!!!タバサァぁあああ!!
ううっうぅうう!!俺の想いよRMSへ届け!!ハルケギニアのRMSへ届け!
だからハルケギニアをボストンにしろよ
この流れは盛り上がる!(自転車置き場の議論的な意味で
・現実じゃないってどゆこと? RMSは人工知能? グレアムじゃないんだからさ…
・どうしてここで vim が出てくるんだ?
・表紙絵って何の表紙絵だよ
・ケティ、シエスター、アンリエッタ、タバサは関係ないだろ
・ハルケギニアってどこだよ
>>1乙
ってか次スレへの誘導がないのに埋めるのは止めれ
スレ立てるときテンプレをただコピペしただけだけど、今見直したらだいぶ古い情報も入ってるし、
過去スレが参照出来なかったりでひどい状況だから、ちょっと見直してみるね。
> codepad.org へのリンク以外はテンプレ置き場へのリンクでもよさそうな気が
そうだねー
了解。次スレ立てはテンプレ置き場とcodepadへのリンクのみで。
lispbox、windosに簡単にlisp環境作れるけどasdfもcffiも動かないね
LOLの作者はEmacsが嫌いでviを使ってるみたいだけど、
みなさんはどうですか?
エディタ論争は不毛。
どのエディタで書いても、他のエディタで読めるんだからいいじゃないの。
構造エディタって古の趣があって好き。
実用性は?だけど。ChezSchemeのおまけに付いてる。
Lisp/SchemeでVerilog/VHDLみたいなFPGA用の言語はありますか?
昔のBasicみたいなLisp環境があるといいなぁ。
スクリーンエディタが付いていて命令と編集を行ったり来たりできる。
ファイルを操作する命令もついている。
Lisp処理系に入ったらそこからOS操作から何から全部、操作できる環境があったらうれしい。
厨のせいでスレの流れが異常。
エディタスレでやれよ。
なんだよ、また糞スレ継続か
>>1は全然乙じゃない
>>30 行つながりに気付かず苦しんだ日々を思い出した
トントカイモ
テニシカク
ソラミト
ソチス
ソシス
チカラモ
イタ
そろそろID導入してアク禁することも検討しないといけなくなったな。
携帯の場合はアカロムになるから覚悟しとけよ。
アク禁とIDは別の話だろ。
IDがなくても中の人はIPを知りうるから
まとめて通報して中の人に判断を委ねれば良い。
Shibuya.lisp でLT募集してた。
面白いネタ持ってる奴は見せてくれよ。
>>41 妄想ネタ。今日から発足する新政権のためにLisperが結集して
予算編成支援システムをLispで書くっての。
セールスポイント
○エキスパートシステム内蔵ですから財務官僚との論争を支援します。
○急な政策変更があっても動的に変更可能なLispなら心配ありません。
○政策失敗によりハイパーインフレがおこってもBignumがあるLispなら大丈夫です。
>>42 それで Shibuya.lisp の TT のネタにすれば二度おいしい
>>42 Symbolicsの本物、見てみたいっす。
AI雑誌で写真を見たことしかない。
中村正三郎さんや、たけおかさんの記事を読んで憧れるなあ。
>>48 歴史的名機なのでコンピューター博物館のようなところがあったら
良い状態で保管してもらいたい。
博物館訪問者がちょっとだけさわれたらうれしい。
>>47 「エミー」ってのがあったな。懐かしい。
パターンマッチじゃなくて意味を解析して返答するようなのを
作れたらすごいな。
51 :
sage:2009/09/18(金) 19:48:14
sbclのsb-posixライブラリで知っていたら教えてほしい。
ファイルを他のプロセス対してロックしたいのだがうまくいかない。
処理系はsbcl ver 1.0.30 (os xで使用)
コードは以下の通り
;;defmacro! はlolのコードを拝借した
;;g!で始まるシンボルは(gensym)で生成したもの
(require :sb-posix)
(defmacro! with-locking-open-file ((s pathname &rest params) &body body)
`(with-open-file (,s ,pathname ,@params)
(let ((,g!flock (make-instance 'sb-posix:flock
:type sb-posix:f-wrlck
:whence sb-posix:seek-set
:start 0 :len 0)))
(sb-posix:fcntl ,s sb-posix:f-setlk ,g!flock) ;;lock file
(unwind-protect
,@body
(let ((,g!unflock (make-instance 'sb-posix:flock
:type sb-posix:f-unlck
:whence sb-posix:seek-set
:start 0 :len 0)))
(sb-posix:fcntl ,s sb-posix:f-setlk ,g!unflock))))))
(with-locking-open-file (f "test" :direction :output :if-exists :supersede)
(sleep 100))
;;ロックされなーい
>>51 POSIX のロック機構そのものがアドバイザリーロックだから
無理に書けば書けるんじゃね?
無理にっつうか、その「他のプロセス」もPOSIXロックを使っててくれないと意味無いよね。
書き込むこと自体はノーチェック。
>>52,53
誠にかたじけない。修行が足りませんでした。強制ロックはあきらめました。
OSXではファイルシステム上、無理臭いですし。
ttp://developer.apple.com/jp/technotes/tn2037.html やりたい事はとりあえずは、以下のコードでできました。
ありがとうございました。
(defmacro! with-locking-file ((s) &body body)
`(let* ((,g!flock (make-instance 'sb-posix:flock
:type sb-posix:f-wrlck
:whence sb-posix:seek-set
:start 0 :len 0))
(,g!result (sb-posix:fcntl ,s sb-posix:f-setlk ,g!flock)))
(unwind-protect
,@body
(when (zerop ,g!result)
(setf (sb-posix:flock-type ,g!flock) sb-posix:f-unlck)
(sb-posix:fcntl ,s sb-posix:f-setlk ,g!flock)))))
(defmacro! with-locking-open-file ((s pathname &rest params) &body body)
`(with-open-file (,s ,pathname ,@params)
(with-locking-file (,s) ,@body)))
(handler-case (with-locking-open-file
(f "test" :direction :output :if-exists :overwrite)
(sleep 60))
(sb-posix:syscall-error
()
(format *error-output* "stream lock error~%")))
(handler-case (with-locking-open-file
(f "test" :direction :output :if-exists :overwrite)
(princ "get file lock"))
(sb-posix:syscall-error
()
(format *error-output* "stream lock error~%")))
最近のFPGAならリスプマシンそのもの載っからない?
やってみろよ
>>55 Lispマシンコアは作れるけどそこに全部の環境のっける手間とか考えたらイヤかも
っていうか68K位のMPUならくめるけどX68Kを作る気あるかと言われたら('A`)な感じ
Movitzじゃだめなの?
>>58 たぶん「タグアーキテクチャのCPUじゃないといや」なんだと思うよ
イマイチわからんのですが、
黒板の人、の由来ってなんですか?
なんかエピソードあるんだろうとは思うんですが。
表示的意味論は黒板でやれって事かな
>>63 Scheme を書くのに最適なエディタは黒板、という旨の発言があった。
要するに Scheme は教育目的、あるいは研究目的のものであって実用には適さないとする意見。
CommonLisp 最強という立場を象徴するような Dis り方であったし、印象に残りやすかったと思われる。
67 :
デフォルトの名無しさん:2009/09/21(月) 10:49:15
Lispの型宣言のやり方ってどこかに解説のっていますか?
今までは末尾再帰の最適化とかインラインとかで行けたのですが
型宣言をつける必要がある最適化箇所が見つかったのでやりたいのですが。
よろしくおねがいします。
Lisp ってのが CommonLisp のことなら HyperSpec 読め。
わかりました、あとsageわすれすいません。
>>66 概要を読む限りでは、OS無しでなんとか最低限のLISPが動いてるみたいね。
Lispマシンみたいな命令のハードウェア実行の直接実現は難しいだろうけども。
>>70 ありがとう。
夢のLispマシンが量販店で売られている格安PCで動くような日が
訪れてほしいなぁ。
ストールマンは最初、そうした環境をつくろうと思ったけど、Lisp向けになっていないコンピュータで
十分な性能のシステムをつくれるか不安だったし、つくれたとしても使ってくれる人は少なそうな
気がしたので、Unix互換なシステム、GNUをつくることにしたのだそうだ。
ストールマンが最初の思いどおり、Lispマシンみたいな環境をつくることにしていたら、今どうなって
いただろう。
「つくれたとしても使ってくれる人は少なそう」という予想が当たっていたことが
証明されただけだったりしてw
あとLinuxがカーネルだけで途方に暮れてたかも。
Lisp 環境が OS の上で動いても、ベアメタルでも、性能的には
そんなに変わらなそうな気がするけど、どうなんだろ…
どうせ仮想メモリとかスケジューラとかドライバとか書かないと
いけなくって、それが C + ASM か Lisp + ASM かの違いだよね。
C なんか書きたくないってことなのかな。
>>74 コンピューター内部が全部Lispで記述されていてほしいというのは
個人的には信仰、信念みたいなもので。
アインシュタインが「神はサイコロを振らない」って主張して
ハイゼンベルクと張り合ったようなものかもね。
あ、自分のはそんな高尚なもんじゃないけど。
VHDLをLisp構文で書ければ、コンピューター内部が全部Lispで記述されているというのは実現できるだろう。
CPUに相当するMicroBlazeをLispで記述すれば、よく使うLispのサブルーチンをハードウェア化するのも簡単になる。
Lispに限らずソフトのハードウェア化というのは目前に迫ってきている。
> VHDLをLisp構文で書ければ、コンピューター内部が全部Lispで記述されている
verilog HDL あたりだと構文は Lisp 化しやすげだけど, 膨大な量の
*HDL 用標準ライブラリあたりもすべて Lisp 化するとなると大騒ぎだw
>>73 その代わりに*BSDがもっと普及してたかもね。
ドライバベンダのブラックボックス化願望を叶えるのにWindowsは都合がいいのだ
BSDは声が小さすぎる
ダメだよ!もっと声出さなきゃ!
>>77 edifとかsdfがlistって事は、
どっかにLispで書かれたin houseな開発環境があるはずだ。
と昔から妄想している。
>>80 アレ初めて見たとき自分のLispをコピペしたのかと思ってあせったw
>>65 黒田さんの中じゃCommonLisp = Allegroだからなぁ、CL最強って言われてもしょうがないかも
幼稚な人間の声がでかいと苦労するなあ
冗談を粘着されると苦労するだろうなあ
Schemeに粘着している黒田キモい
決められた規格の中に閉じこもるより、他の言語をdisるほうが断然おもしろいからな
同じ規格でも色々と差別化できるのかも知れないけど実際には
速度を競うことしか思いつかない、想像力の足りない奴ばっかだしね
bit誌で黒田さんの記事読んだことある。ホンダの衝突実験のデータベースを
Lispで構築する話。黒田さんの印象は仕事に対して生真面目な人。
会ったことないから文書だけの印象だけど。
Schemeへの言及はショーとして面白くするための派手なパフォーマンスなんでは?
意味論に不備があるとかそいうのは、実装がちゃんとしてれば
どうでもいいしなあ
説得力があまりない
もっと具体例を挙げて、「こういうマクロ書くときにSchemeは困る」と
バシッといってくれんかね
>速度を競うことしか思いつかない、想像力の足りない奴ばっかだしね
実用でつかうにはものすごく大きな要件だと思うが
>>89 大きいと言うだけでは具体性が足りないと思うなあ
その「大きさ」をリアルに感じられるような何かが足りない
現実の問題があればいいのだ
例えば、Emacsが遅すぎて困っているみたいな
「Schemeはarithmetic-if が書けない」
「え?書けますけど何か?」
「意味論がくぁwせdrftgyふじこlp」
「R6RSでは問題ありません」
「・・・」
R5RSの時代に書かれた文書じゃん…なんでそんな拘ってんの?粘着質なの?
ShiroさんがWilikiで書いてたけどSICPがSchemeのイメージを
歪めてるのかもね。SICPはコンピューターサイエンスを
教えるために見えやすいように根本的なところから
いちいち書いてるんで誤解を与えてるのかも。
Schemeの教科書じゃないからね。
というか扱いが所々に不自然なんだよな。>SICP
話題を聞くたびに思うよ。
"そんな本か??"
『あの SICP で使われている』、『MIT の授業で使われている』、
というフレーズで Scheme を紹介してるから仕方が無い。
いや実際、Schemeインタプリタとコンパイラをプログラムする本だから、あれ
SICP の勉強以外の用途で Scheme 使ってる人って日本にどのくらいいるのかね
Gauche は日常的なスクリプトを書くのに便利だからよく使ってるよ。
以前は Ruby を使ってたけど、 Scheme の方が断然書きやすい。
マクロで遊んだりするのは Ypsilon かなぁ。
案外実用できると思うよ。
Ikarus とか Larceny は使われてない感じなんだよな。不思議。
Ikarus は早く次のリリースを出してほしい
gaucheって本も出てたと思うけど、実際のとこどう?
特に実用性って意味では実用的なライブラリがどの位あるかってのが大事だと思うんだけど。
あと日本語文字列の扱いは?
分かっててネタで訊いてるとしか思えないがGaucheが良く出来てるのはそのライブラリと日本語の扱いの方面
Lisp 勉強してみたいんだけど、 Common Lisp と Scheme どっちから始めたらいいですか?
emacs lisp が いいです
>>108 昔ならそういう質問は『セリーグとパリーグはどっちが強い?』と質問するようなもんだと諭されただろう。
Schemeの方が名前がかっこいい。
>>111 そして、昔なら「強さなら、メジャーリーグじゃね」と返されるんだろう。
>>108 アルゴリズムの勉強なら Scheme
実践的プログラミングなら Emacs Lisp
ハッカーになりたいなら Common Lisp
下二つは逆ではないのか
CL は初心者を抜けた頃になると、日本語の情報だけだと物足りなくなるかも…
CL は良くも悪くも仕様がデカすぎるんだよ。
一貫性が無いから豆知識がたくさんあればうまく使えるような言語になっちゃってる。
実用に便利な機能が多いのも CL なのは確かだけどさぁ。
宝物が沢山詰まってる蔵みたいなもんなんだろうけど、
自分に審美眼が無いから持ち腐れorz
119 :
デフォルトの名無しさん:2009/09/22(火) 21:42:45
ようやくランバダに慣れてきたぞ。極めてみせる!
ねんがんのアイスソードをてにいれたぞ
じゃあ俺はジプキン極める。
忘れられたEuLisp
http://sites.google.com/site/shidoinfo/Home/programing-lang/関数型プログラミング言語/lisp/様々なlisp方言/eulisp * EuLispはLisp方言、とは言ってもきちんとした仕様書が存在するLisp方言である。
* EuLispのEuとはEuropeのEuである。つまり、ヨーロッパで策定されたLisp方言である。
* 目標は「Common Lisp程バカでかくなく、Scheme程ミニマリスティックでもない」Lisp方言。
* Common Lispタイプの動的オブジェクト指向システム(総称関数ベースのCLOSに近い)を備えている。
* Scheme程強力ではないが、継続も備えている。
* 名前空間に於いて関数用が分かれていないシングルスペースLisp(Lisp-1)である。
* EuLispの仕様書作成会議は1985年にパリで始まって、1993年に最終版が決定された。
かなり長い時間がかかっている。
* 現在、入手可能な実装は、FEEL (Free and Eventually Eulisp).とyootooの二種類である。
両者ともイギリスのバース大学数理科学部のyootooのページに保管されている。
>>100 5章で、今で言うところの「ASMチャート」を使ってScheme流VHDLを展開しているSICPが
そんなちゃちな目的の本ではないことだけはガチ。
ときどきでいいから ISLISP のことも思い出してやってください
前世紀のLispなんて忘れて、Clojureの話でもしようぜ
Clojureはエラーメッセージが酷すぎ
>>122 ヨーロッパ勢がアメリカのCommon Lispに対抗
するのに頑張ってたんだっけ?
あれASMチャートっていうのか
>>103 Ikarusはtrunkとstable releaseの差があり過ぎて困る。
Azizが引越しと求職で忙しかったから、ってのが5月の話だったと思うけど、
今でも絶賛放置中。0.0.4なんて無かった。trunkは絶好調。
Larcenyは割と原理主義的で、キーワードとかCLOSとか無いし、
POSIXスレッド前提っぽいのが嫌で、スレッド関係のSRFIスルーしたりとか、
そういうのがお固く感じるってのはあるかも。ライブラリは割と充実してるけど。
あとは対応OSが少ない。BSD系は未対応。
とはいえ、両者ともR6RSに対応してるし、YpsilonとかMoshとかとも協力してるから、
今後は使い勝手は良くなっていくとは思う。というか、なって欲しい。
もう実用性はcommon lispに任せて、
schemeには美しいままでいてほしい。
黒板でもいいじゃない。
ポールがArcの実装にSchemeを使ったという現実
実用性でもSchemeだとポールが判断したという現実
CLの実装ないの?>ARc
初期はCL
>>131 schemeを選択したのはサイズがコンパクトな方が配布に便利という理由だろ。
実用性を云々するレベルにArcはまだ達してないよ。
lisp最大のキラーアプリって実はルンバじゃね?
てかまずArcをわざわざ作ったってことはCLよりSchemeが優れてるとかいう以前の話にならないか。
いや確かに使ってるSchemeは褒めてたけど。MzSchemeだっけ?
schemeにミニマリズム的な美しさが求められるのは
SICPに使われていることが大きいと思う。
実用性の追求とは別に、教育用のschemeサブセットの
仕様を定義しちゃえばいいんじゃない。
コードネームはblackboardで。
いや、RxRSのシンプルさはともかくとして、SRFIで十分に拡張セットも定義されてるから。
Stalinでコンパイルした関数をshard lib にして他のプログラムから呼ぶこと出来ないのでしょうか
できるよ。
>>142 ありがとうございます
もうすこしman stalin を探してみます
man に直接的な記述があるかな?
stalin は C のコードを吐くわけだから
C コンパイラに妥当なオプションをつけて
コンパイれば共有ライブラリになるよ。
stalinでコンパイルしたfoo.cがとても読めないコードみたいなので
あきらめた方がいいみたいですね
そうみたいですね
コードネームは「Mockingbird」で良いじゃない。
簡単なプログラムでもテキストフィルタ系はついついCで済ませてしまうよ
LISPやschemeはS式に直すまでがしんどい
自分も大体Cで書いちゃうな。Cの方が楽な事も多いしハックも楽しい。
Lispはまだまだ経験不足で…
テキストフィルタならPerlでいいじゃんけ
前にCLでテキスト処理書いたら、perlの何倍も遅くて泣いた
勿論自分のヘボさに
cl-awk て、Cより速いとか言ってなかったっけ?
CLのpcreがCのpcreより速いという話は読んだことがある
stalinって
(load "data.scm")
すら動かないんだね
maximaのコードを高速化するためにstalinに書き換えしてたら
もうそろそろmaximaの計算がおわりそう
>>144 stalinがCのコードを吐くことを初めて知った。
「Cより速い」という宣伝文句は「人間が書くCより速い」という意味?
普通はそうだと思うが
>>153 CLのpcreは仕様がちょっと古いけどね。
>>154 そりゃ、全部静的解析するのが売りだからね。loadはevalしなくちゃならないから無理だろう
(再コンパイル・リンクするなら別だけど)
リテラルデータを読むだけならreadでいいんじゃない?
stalinみたいなとんがった処理系が1つでもあると言語ユーザー的に安心するよな
使った事ないけど
諸君 私はschemeが好きだ
諸君 私はschemeが好きだ
諸君 私はschemeが大好きだ
MITが好きだ
PLTが好きだ
Biglooが好きだ
Guileが好きだ
Gaucheが好きだ
Stalinが好きだ
Ypsilonが好きだ
Sigが好きだ
Moshが好きだ
Windowsで MacOSで
Linuxで BSDで
Solarisで HP-UXで
AIXで IRIXで
Monaで 黒板で
この地上で実行される ありとあらゆるschemeプログラムが大好きだ
命令列をならべたS式の手続きが 轟音と共にリストを吹き飛ばすのが好きだ
空中高く放り上げられたリストがapply valuesでばらばらになった時など心がおどる
filterの操る高階関数の述語が 要素を選択するのが好きだ
悲鳴を上げて 燃えさかるリストから飛び出してきた要素を
map (lambda (n) (...))で変換した時など胸がすくような気持ちだった
アキュムレータをそなえた再帰の手続きが 末尾の再帰を最適化するのが好きだ
恐慌状態の新兵プログラマが 既に()に達したリストを
何度も何度もcdrダウンしている様など感動すら覚える
t-nil主義の逃亡兵達が#f上にconsしていく様などはもうたまらない
泣き叫ぶclist達が 私の降り下ろしたknilとともに
金切り声を上げるkonsに ぱたぱたとfoldされるのも最高だ
哀れなCommon Lisper達が 雑多な小機能で健気にもdisってきたのを
R5RSのhygienic macroがgensymごと木端微塵に粉砕した時など絶頂すら覚える
仕様策定の混乱に滅茶苦茶にされるのが好きだ
必死に守るはずだったKISSの原則が蹂躙され ミニマリズムが犯され殺されていく様は
とてもとても悲しいものだ
純粋関数型言語の参照透過性に押し潰されて殲滅されるのが好きだ
Haskellに追いまわされ 害虫の様に地べたを這い回るのは屈辱の極みだ
諸君 私はschemeを 地獄の様なschemeを望んでいる
諸君 私に付き従う大隊戦友諸君
君達は一体 何を望んでいる?
更なるschemeを望むか?
情け容赦のない 糞の様なschemeを望むか?
鉄風雷火の限りを尽くし 三千世界の言語を殺す 嵐の様なschemeを望むか?
よろしい ならばschemeだ
我々は満身の力をこめて今まさに振り下ろさんとする握り拳だ
だがこの暗い闇の底で四半世紀もの間 堪え続けてきた我々に
ただのschemeでは もはや足りない!!
大schemeを!! 一心不乱の大schemeを!!
我らはわずかに一個大隊 千人に満たぬ言語オタクにすぎない
だが諸君は 一騎当千の古強者だと私は信仰している
ならば我らは 諸君と私で総兵力100万と1人のハッカー集団となる
我々を忘却の彼方へと追いやり 眠りこけている連中を叩き起こそう
髪の毛をつかんで引きずり降ろし 眼を開けさせ思い出させよう
連中に恐怖の味を思い出させてやる
連中に我々のevalの音を思い出させてやる
天と地のはざまには 奴らの哲学では思いもよらない事があることを思い出させてやる
一千人の言語オタクの戦闘団で
世界を燃やし尽くしてやる
僕の肛門もdisられそうです><
>165
ヘルシング OVAを見れば判るさ。
(let loop ((try (read the-file)) (accum '()))
これってloopマクロが展開されたら、letで代入文として扱われるようになってるってことでいいの?
マクロ名と見なされるのは先頭要素だけだから、単に loop という名前を再定義するだけ
R6RSはidentifier macroがあるから、一般的に「マクロ名と見なされるのは
先頭要素だけ」とはいえない。
ただ、
>>168 の例についていえば、マクロや構文の解釈は外から内へなので、
loopをどう見るかはletがどう解釈するかにかかっている。標準のletの仕様
では次の要素が単一のidentifierであればnamed letになるので、loopが
identifier macroであるかどうかはそもそもチェックされない。
天気予報を見ていると「満潮」「干潮」の時刻まで画面に表示している。
干潮 (かんちょう) というと当然ながら浣腸を連想するわけだ。
肛門にぶっ挿して中に出すあれだ。
では満潮 (まんちょう) というと、もちろん差し込む場所は…
誤爆しました。 すまんこってす。
>>173 >すまんこ
までで定型なんじゃないかと邪推
(Snow Leopard にあげたら mac ports で gauche がビルドできなくなった、何時になったら修正されるんだろう)
>>175 >>176 開発版のコンパイルには0.8.14が入ってることが前提なので、次の手順が必要。
雪豹以外のマシンに0.8.14をインストールした状態で開発版をチェックアウトし ./DIST tgz
できたtarballを雪豹マシンで展開してconfigure + make
ああそうか、ブートストラップ問題があるのか
マシンが一台しかない環境だと困りそうだな
32bitか
schemeでソケット通信の標準規格はあるのでしょうか?
処理系ごとにばらばらなんでしょうか
処理系ごとに独自。
あるいはそんな機能を持っていないかもしれない。
CommonLisp でも同じだけど。
言語の規格に入れちゃうと、
ソケットの概念のない環境の上では100%の処理系を提供できないじゃないか…。
SRFIにあるんじゃないかと思ったら、ないのね。
次のコードが、mzschemeで、末尾再帰になっていないようなんですが、理由が分かる方がいらっしゃれば、教えてください。
(define (search-current-page-dump port filer map)
(let loop ([data (begin
(regexp-match #rx"</siteinfo>" port)
port)]
[list '()])
(let ([page (with-handlers ([exn:xml? (lambda (exn) #f)])
(read-xml/element data))])
(if (not page)
list
(if (filer page)
(loop data (cons (map page) list))
(loop data list))))))
186 :
185:2009/09/27(日) 16:12:02
あら、うまく貼れん。
どうして末尾再帰と解釈されてないと思うの?
ところで (map page) ってどういうこと?
188 :
185:2009/09/27(日) 20:08:35
>>187 反応、サンクス。
(map page)の「map」は引数なので、普通の「map」じゃないです、はい。
なんで、末尾再帰でないと思うかというと、loopの途中でターミナル(Emacs)からシグナルを送って止めると、
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
d:\Program Files\PLT\collects\xml\private\reader.ss:303:14: loop
という感じのスタックダンプ的なものが延々と出るので。
…いま気づきましたが、この「loop」は、自分の「loop」ではなく、
組み込みライブラリの中の函数かも…
>>187 そのmapは引数で渡されたやつだから、たぶん1引数の手続きを想定してるんだろう。
>>185 コード上は末尾再帰になってる。もしスタック溢れとかが起るなら、デバッグ
トレースがonになってるとか、何か外部要因があるんじゃないか。
>>188 MzSchemeには末尾再帰でもスタックトレースをとれる機能が無かったっけ?
もちろん厳密な意味での「スタック」トレースじゃなくて、呼び出しログみたいなもん。
スタックは消費してないし、たぶんログバッファのサイズにも上限があるんじゃないかな。
SICPがScheme教本じゃないことなど一目瞭然。
だから、俺なんて1ページも読んだことないぜ。
むしろSICPのためにSchemeをかじった
>>188 > …いま気づきましたが、この「loop」は、自分の「loop」ではなく、
> 組み込みライブラリの中の函数かも…
MzScheme は知らんが、仮にそういうものがあっ
ても Scheme の規格通りならシャドウイングされる。
おれは後輩に聞かれたら「SICPは読む価値があるよ」と言うためだけにSICPを読んだ。
だがおれには後輩ができなかった。
fin
>>188 d:\Program Files\PLT\collects\xml\private フォルダ内の reader.ss の 303 行目 14 桁付近の loop
という意味
>>191 1ページも読んだことないのに
なぜ一目瞭然なんだ?
Amazonの書評みればわかるだろ
一目って言ってるんだし表紙だけ見たんじゃない?
>>195 最近、関数型言語って流行ってるみたいで、
僕もそろそろJava以外にもなんか触ろうかなと思ってるんですよ。
何かいいの知りませんか?
javascriptも悪くないよ
Rhinoなんかいいんじゃない?
アナホリックマクロで
パッケージ名:it
とかなるのなんとかなんないの?
itだけで動いてほしい
>>200 Javaに慣れてるならScalaとかどうよ?
JVMで動くからJavaライブラリとかそのまま使えるよ
>>200 お前ひょっとしてちんこじゃね?
まぁJavaだけでなく関数型言語を学ぶのはいいことだ
つーわけでここのスレタイ通りLisp/Schemeを学べ
その前に数学をやれ
>>200 Javaで書かれたKawa Scheme
穴掘りっく真っ黒
天気予報を見ていると「満潮」「干潮」の時刻まで画面に表示している。
干潮 (かんちょう) というと当然ながら浣腸を連想するわけだ。
肛門にぶっ挿して中に出すあれだ。
では満潮 (まんちょう) というと、もちろん差し込む場所は…
誤爆しました。 すまんこってす。
>>209 (define kancho ...)ではどちらか分からないから、漢字で定義できる言語でなくてはならないと。
拾ってみました。
ソースコード中の全ての関数定義を拾って
メモ化付き遅延評価の関数に置き換えたいのですが
いい手段はありませんか?
readでソースコード読み込んで、関数定義だけ拾って
マクロで置換が一番楽でしょうか。
>>212 さっさと諦めるのが一番楽でしょう
欲を言えば、原理的に不可能であることを証明すると良いですね
>>212 R6RS Scheme なら関数定義に対して適当なマクロを定義して
(import (except (rnrs) define) memoize-defun)
みたいなのでできるんじゃない
リーダーマクロと言ってみる
>>213-215 レスありがとうございます。
>>212があまりにも言葉足らずだったので追加。
前提としては当然のことながら元のソースは
副作用を含まない関数プログラミング的な書き方をしているとします。
ttp://d.hatena.ne.jp/SaitoAtsushi/20050902/p1 を参考に、たとえば
(define (fib x)
(if (<= x 1)
1
(+ (fib (- x 1)) (fib (- x 2)))))
を
(define (fib-maker f)
(lambda(x)
(if (<= x 1)
1
(+ (f (- x 1)) (f (- x 2)) ))))
(define fib (fix fib-maker))
に置換するという操作を全ての関数定義について行いたいのです。
汎用性を持たせるため、R5RSやCommonLispの基本的な範囲で
実装できれば好もしいですが、不可能なようならR6RSやリーダーマクロも
検討したいと思います。
>>216の方法にこだわっているわけでは全然ありません。
関数定義をメモ化付き遅延評価に変換することさえできればOKです。
よろしくおねがいします。
KawaからJavaライブラリにアクセスってできるん?
>>216 そのブログの中の人です。 拙い記事ですが、参考になったのなら幸いです。
すべてのケースを網羅するのはちょっと無理ですが、 define を再定義すれば define で定義するものについては自動的にメモ化されるように出来ると思います。
r6rs で書いてみました。 とりあえず Ypsilon で動作確認してます。
lambda も再定義すればもっと広範に対応できるかもしれませんが、力尽きました…。
(import (prefix (only (rnrs) define) rnrs:)
(except (rnrs) define))
(define-syntax define
(syntax-rules ()
((_ (i a ...) body ...)
(define i (lambda(a ...) body ...)))
((_ i o)
(rnrs:define i
(let ((ob o))
(if (procedure? ob)
(let ((ht (make-hashtable equal-hash equal?)))
(lambda args
(if (hashtable-contains? ht args)
(hashtable-ref ht args #f)
(let ((r (apply ob args)))
(hashtable-set! ht args r)
r))))
o))))))
(define (fib x)
(if (<= x 1)
1
(+ (fib (- x 1)) (fib (- x 2)))))
(write (fib 2000))
>>216 誤解があってはいけないので念のため。
それはメモ化を表現するのに使われることがある
不動点演算子が面白いという話で、
メモ化そのものはしていません。
Scheme ではメモ化に不動点演算子が必須というわけでもありません。
223 :
216:2009/09/29(火) 11:15:38
>>221 わざわざありがとうございます。
自前で書いたソースを念頭に置いていますので、defineで充分です。
マクロが定義する関数などへの対応は絶望的な気がしますし。
>>222 ありがとうございます。しっかり読んでないのがバレバレですねorz
>>223 そのマクロが define に展開するなら適用されるよ。
でも、マクロはマクロが定義された環境での define を使おうとするので、
「既に定義されているマクロ」の意味を後から変えることは出来ない。
もっとも、そのマクロが展開するときの環境を利用するように書いてあれば、話は別だが。
225 :
223:2009/09/29(火) 23:47:56
>>224 >そのマクロが define に展開するなら適用されるよ。
ああそうか。ずっとreadでソースをS式で読み込んでゴニョゴニョという方法を
考えていたので勘違いしてました。
>>221 plt-r6rsで試しました。非常にいいです!
fibに(display x)(newline)を入れておくと、各xについて
fib本体が呼ばれるのは一回だけというのがわかりました。
このままの形で使えそうです。本当にありがとうございました。
CLispがトロイ認定されて削除されてしまった。
使ってないけど。
コードセクション (のメモリ領域) を書き換えるプログラムはほとんど問答無用でマルウェア扱いされてしまう。
これでしょっちゅうイラっとさせられるのでアンチウイルスソフトの類を使うのはやめた。
アンチウィルスソフトつかわないとか人としてどうなの
自分のマシンのトラフィックは監視してるから問題なし
230 :
227:2009/10/02(金) 14:46:44
実行ファイルを書き換えるツールまでマルウェア扱いだよ。
自己展開パッチとか全部マルウェアだよ。 コンチクショウ。
1年に一度くらいはフリーの検知ソフト (AVG) をインストールしてチェックしてるけど、
ウイルス見つかったこと無い。
スレ違いすまんこってす。
社会が過保護になればなるほど
自己責任でやらなきゃならないことが増えるんだな
なんか矛盾してる気がするけど
VMWareやcoLinux上で走らせてみては?
まあいろいろと嬉しくないシノギカタダケド
うーむ。LZEXEとかDIET.EXEとか面白いプログラムだったのになぁ
234 :
デフォルトの名無しさん:2009/10/06(火) 01:58:53
clojureの日本語の本でないかな
もうじき出るらしいよ。ソースは前スレのtwitter。
shiroさんが誠意翻訳中。
>>236 「鋭意」の間違いじゃね?
揚げ足取りだけど、マジで間違えてたら恥ずかしいヤツなので一応指摘しておく。
うわぁ。間違えた。吊ってくる...
自前主義のライバルだ
自前主義なの?
Javaのライブラリにオンブにダッコという印象だけど。
gaucheのほうも自前主義と言われてもピンとこないな
Gaucheは自前のGC入れてくれ
Boehmのがまともに動いてくれない
>>242 環境は?
ボームのGCはいろいろな環境で実績があるけどな。
あと、GCのディレクトリーでmake testするとどうなる?
245 :
デフォルトの名無しさん:2009/10/07(水) 00:56:35
>>235 情報ありがとう。
>>239 netbeansのプラグインやeclispのプラグインがあるから、windowsの人でも
楽しめるのではないかと思う。ただし、スクリプト言語的な楽しみは期待
しないほうがよいかも。
どう実装するのかは処理系によると思うんですが
alistのリスト ≒ 環境で正しいです?
実装がそうなっていなくても、
仕様がそれと同等のLispは今では珍しい。
Lisp 1.5ならその通り。
なんでlisp系言語は分裂ばかりしてるの?
C# は C++ からの分裂、って言うとどう受け取る?
C# は C++ を元にして作られた新らしい言語だってことになるだろ?
でも Lisp はどうころんでも Lisp なんだ。
だから、むしろ分裂なんかしてない。 新らしくなっても、それはやっぱり Lisp なんだから。
はなししとは?
>>251 へみ猫が書いてないけど、某 void さん?
Lispは泥団子のようなものだ。何を入れてもいいけど、Lispであることに変わりはない。
254 :
249:2009/10/07(水) 21:09:13
俺の SKK-JISYO.L には
あたr /辺/当/新/中/邊/邉/
という一行がある。
これが正しいのかどうかは知らん。
辞書作ったやつに言え。
Lispが流行っていない理由を知りたければ、鏡を見てみなよ
鏡を見たら誰もいなかった
おや泥団子と鏡が写っている…
>247
うおおありがとう
259 :
デフォルトの名無しさん:2009/10/08(木) 00:34:27
lispは宇宙だ。lispは仏教だ。全ての道はlispに通ず。
lispは心だ。lispは生き物だ。lispはすべての親玉だ。
でも神託はくれない
ある場所にLispよりもずっと古い神がいてな、そこには太古の言葉が
沢山保存されているそうな。尤も誰もその意味なんて分かっちゃいない。
ただその言葉を唱えると単位とか言う物が取り易くなるんだとか聞いたわ。
Lisp神様も元はと言えばその古い神様の一部だったんだと
ナイアルラトホテップの予感
Fortranを唱えて取れる単位はなかったな。
Cobolは、データベース論の授業で扱ってたが、同じ時間の自然言語処理論のほうが
面白そうだったんでそっちを選んだので取れなかった。
Fortranで単位が取れるというのは工学系の先輩から聞いた話で、
研究室に代々伝わる秘伝のライブラリがあって、それを使わないと
解けない課題が出されて、訳も分からず使ってたんだってさ。
学部の頃はそういうことが結構あったみたい。
おーい、磯野、Lispしようぜ!
磯野「うるせぇ。いまRuby書いてんだ。」
マスオ「えぇ!??それがacceptable LISPなのかいぃ!!??」
波平「カーさん!」
ドラえもん(四次元ポケットから)「lisp マシーン!」
ふね「cdrん」
Lisp Lisp Lisp マシーン (Wow Wow Wow Wow)
Lisp Lisp Lisp ステーション (Yeah Yeah Yeah Yeah)
Lisp Lisp Lisp ファクトリー (Wow Wow Wow Wow)
Lisp! Lisp is so wonderful
>>275 こわれやすいんじゃない。使いにくいだけだ!
タイムマシンは継続で実装説
誰が過去の時代にcall/ccしたんだよ
元々世界のシステムにあるのを利用しただけさ
おにいちゃんをガーベージ・コレクションしに来ました
by ドラミ
継続内で環境を書き換えるとタイムパトロールにつかまるぞ
タイムパトロールは実は単なる闇ブローカー
知識がないのをいいことに拉致換金
ドラみたいな情弱は餌食
四次元ポケットはまだ私が参照しています。
本体は回収してくれてOKです。
>>267-
>>282 変な奴はスルーに限るとはいうが
こういうのは延々と一人で続けるんだよな
妄想はいいから
世に出てる歴史書が真実かどうかなんてわからないのに
医は仁術と申しますが、これは「痔は淫術」とでも言うべきものでしょうな。
しつこいよ
なんだかsbclの開発速度が数年前にくらべて落ちてきたな。
cmuclは19e->20aの開発期間は短かったな。意外
> なんだかsbclの開発速度が数年前にくらべて落ちてきたな。
sbcl-develの流量が減ってるわけでもないし、そんなことないんじゃないか?
release版まとめる人が忙しくて作業時間が取れないとか言って、頭抱えてる
らしいけど…
cmuclはこのウン年かけてやっとこさunicodeブランチをマージしたわけで
急にペースアップしたとかではない。
はじめに「りすぷ」があった。
「りすぷ」は神とともにあった。
「りすぷ」は神であった。
新約聖書、ヨハネ福音書1章1節
>>283 一人かどうかは知らないが、しつこいなーとは思ってた
同意見がいて安心したよ
と自分にレス
SBCLはとっととSnow Leopard対応版をリリースしてほしい。
今は俺様パッチでしのいでいるけど。パッチを報告した方がいいかな?
もちろんですとも!
DSL-likeな書き方を学ぶのにお勧めのコードはないですか?
今はparenscriptを読もうと思っています。
closure clじゃないのね・・・・
JVM使うやつは使いたくならないふしぎ!
Closure「大船に乗ったつもりでついて来い!!」
りすぱ「い、いや...それコーヒーカップなんですけど...」
どっちかってーとJavaの資源目当てのLisper向け言語じゃね>Clojure
それだったらKawaの方がいいなぁ
そうは言っても従来 Lisp のオブジェクト指向ってのは CLOS が源流になってて
Java のスタイルとは相性の悪いところもあるんでないかい。
Java を前提にして作ったものとはやっぱり使い勝手の良さに違いが出てくると思うな。
それでもLispなら・・・Lispならきっと何とかしてくれる
まあまぢれすすれば、無理にCLOSベースのシステムを使う必要は無いし
スタイルの違いを埋めるプログラミング手法はLispの得意とする領域だし。
実際のclojureでどうなってるかは知らないけど。
clojureはクラス指向じゃないなあ。かなり緩い動的型システム。マルチメソッドはあるけど、
型でディスパッチするだけじゃない (デフォルトは型でディスパッチだけど、自由に変えられる)。
きっちりクラス設計したい人には向かないかも。データ主体ではなく、あくまで関数主体で考える感じ。
javaの資源ってそんなに豊富なの?
機能を資源と呼べるのならイエス。使いやすいかは別問題として。
むしろ、(ほぼ)プラットフォーム独立なのがありがたいのでは?
____
/ \
/ _ノ ヽ、_ \
/ o゚((●)) ((●))゚o \ ほんとはWindowsをサポートしたいんだお…
| (__人__)' |
\ `⌒´ /
____
/ \
/ _ノ ヽ、_ \
/ o゚⌒ ⌒゚o \ でもMicrosoftは金貢ぐドレイしか相手してくれないお…
| (__人__) |
\ ` ⌒´ /
____
/⌒ ⌒\
/( ●) (●)\
/::::::⌒(__人__)⌒::::: \ だからJVMでやるお!
| |r┬-| |
\ `ー'´ /
リッチヒッキーがマカーだからじゃないの?
MacにおけるJavaの扱いはひでぇぞ
何年か前にjavaで数値計算する方法さがしてたら
必要なものが全然ないので全部自作してられるかとなって
諦めた記憶が
Apatch commonsで基礎的なことまではたいていは何とかなるだろ
JVMで動くといえば、SISCはどうだろう?
>>311 必要なものって自作できるものだからクラスライブラリのこと?
Javaの場合、言語仕様(浮動小数点)に問題があるから、そういうレベルじゃない。
やはり、汎用言語を作る時は、数値計算屋の意見もちゃんと聞いとかないとな。
Javaの事件で言語屋にも周知されたと思うけども。
> Javaの場合、言語仕様(浮動小数点)に問題があるから
ポインタおせーて
java numerics
> Javaの場合、言語仕様(浮動小数点)に問題がある
くわしく
319 :
318:2009/10/18(日) 09:51:34
すまん, 寝惚けてたorz
Javaの言語仕様のどこにどういう問題があるのかjava numericsでぐぐってもさっぱりなんだが。
「言語屋にも周知された」というほど周知されてるとは思えんぞ。
それなりに言語屋としてアンテナを張ってはいるつもりだが。
わかんないんです(><)
俺も分からん
java numerics でググると数値計算に大変便利に使っているという話ばかり出てくる…
おもわせぶりはいいから、具体的にどこがどうまずいのか説明しろや。
>>315 ガイ・スティールって数値計算屋じゃないの?
確か Fortran の研究もしてなかったっけ?
え、何で?
>>328 そのページにリンクがある、
How Java's Floating-Point Hurts Everyone Everywhere か?
これってJavaの言語仕様云々より、浮動小数点の問題じゃないの?
>>328 それ普通の言語の浮動小数点数とどこが違うの?
俺にはさっぱり分からん
>>327 うん。このスレの住民の風上にもおけない。(笑)
え、何で?
>>321に引用されてる記事読めば分かるでしょ。
>>328の参考文献にも挙げられてるね。
> 不完全なJava浮動小数点の実装については、
> IEEE 754の主要な設計者の1人であるWilliam Kahan氏による、
> 「How Java's Floating-Point Hurts Everyone Everywhere」(PDF) を参照してください。
>>328 の記事そのものは、普通に浮動小数点とBigDecimalを紹介してるだけだな。
>>338 読んだよ。単なるインタビューじゃん。
最後から2番目のパラグラフに多少は書いてあるけど、
大部分は『浮動小数点数の父おおいに語る』って感じ。
>>337 の PDF を読むのが一番速い。
>>340 PDF 読みました?
例外フラグの件ってどのくらいの実害があるの?
自分は詳しくないので判断が付かないんだけど、
もしよかったら教えてください。
以後、じゃばの話題は禁止で
ーーーーーー再開ーーーーーーーー
じゃばの話題っつーか Lisp の実装言語としての Java の話だったんだが…
おまえらってほんとめんどくさいよな
Common LispやSchemeでの浮動小数点計算は
Javaと違ってちゃんとalgebraically completedなの?
俺もどのぐらい実害があるのかはっきりしてもらいたい
>>315の「Javaの場合そういうレベルじゃない」という口ぶりからすると
恐らく、数値計算用途ならば、どんな用途でも全く使えないということだろ
それだけ実害が出るという口ぶりに見える
それは本当なのか?
そして、もうひとつ聞きたいのは、仮に浮動小数(doubleとか)が
Javaでは使えないとしたときに、BigDecimalはどうなるんだという話。
JavaにはBigDecimalがあるから、仮にdoubleなどがまったく使えなくても、
数値計算は別に出来るのではないかと思うのだが
お前らほんとlispプログラミング以外の話題になると盛り上がるよな
いいぞもっとやれ
Lisp以外の話題に食いつきたくなるのは
Lisperは潜在的に括弧にうんざりしてるからさ
上の口は慣れたと言っても下の口は正直だからな
オブジェクト指向言語でコード書いてるとイチイチ名前をつけるのが面倒だ…
関数型に飢えてくる
浮動小数まわりに問題があると
すごい小さい数字同士の引き算で問題がおきて(桁落ち)
例えば固有値にゼロまじってしまうようなケースですごい恐ろしいことがおきたような記憶が
>>314 の中に固有値計算のライブラリーもあるけど,本当にちゃんと動くんだろうか
桁落ち情報落ちはどこでも起こる
桁落ちなんてJavaの問題じゃないだろ
固定バイトの浮動小数なら何でも起こる問題
そして、
>>314はいろんな型に対応してるから、万が一のときは
BigDecimalもある
>>334 common lispのまとめやschemeは誰が作ったかということからだろう。
>>353 つまり君は言語屋と数値計算屋は両立しないと主張したい訳かな?
言語屋は一生涯、言語仕様だけを相手にして生きていく他無いと?
そりゃ窮屈な世界だな…
確かチューリングも亡くなる直前は生物学の研究をしていたんだっけ
つ 鏡
鏡 λ 鏡 < 再帰ヒャッハー
>>315>>317なんですけど…
スレ違い気味の話題で荒れさせてすまん。
JavaはIEEE 754と仕様が違う/足りないところがあるから、
FORTRAN 77(拡張版)、C99で書かれたコードを
まんま移植するとオリジナルより精度が悪くなることが多い。
場合によってはまるっきり使い物にならないこともある。
Javaの浮動小数点の性質に合わせたものに書き換えないと。
>>346が前半で書いているように
>>315はちょっと表現がきつかったかもね。
ただJava用の書き換えは相当の注意と知識が必要だよ。
それはLisp Schemeでも変らん。それじゃ!
煽りまくりの口調はどうにかしろよ。
だいたいIEEE754以前は指数が16進とか、浮動小数点の扱いなんてもっとぐっちゃぐっちゃ
だったんだから、それを思えばJavaの仕様なんてかわいいもんだ。
まじめな技術者を苛立たせる 3 つの秘訣を思い出したわ。
Fear
Uncertainly
Doubt
Donut に見えた
ドーナツ見るとイライラする!
半分に割ると括弧に見える!
ちゃんと閉じるから落ち着くやないの
種数1はむかつく
(require (lib "61.ss" "srfi"))
(define a (lambda (x) (+ x 3)))
(cond
('() number? => a)
(#t number? => a)
(1 number? => a))
こんな風にcondが使えることを覚えた。>自分用メモ
へー、cond 使わせてもらうよ。
cdrなすぎて屁ーこいたぜw
lispプログラムが書き込まれるとすぐに話をそらそうとする住人たち
それは仲間探しかい?
そろそろ俺のdefunかい?
何が楽しいんだか、どこでも見かけるなこいつ
この流れになるとふらっとやって来て
「すべて同一人物のレスだ」という前提で捨て台詞吐いていく
この人には見覚えがある。
全て同一人物ってか全部俺だよ。正解。
でも、それ 2ch だけの話じゃないぞ。
今お前の後ろに
たたんでない上着が放り出されたまま
それが俺だよ。よう、ご主人様!
シワにならないようハンガーにかけてね
ラムダ型のハンガー
なで肩ね?
お食事にする?それともお風呂に先eq?
gaucheのリファレンスなんかをみていると仮引数に elt って名前がよく付かれているけど、これって何の略?何の意味?
たとえばこんなの:
(fold2 (lambda (elt a b) (values (min elt a) (max elt b)))
256 0 '#u8(33 12 142 1 74 98 12 5 99))
eltはelementの略で、(elt sequence index)
という形で使用し、sequence中のindexで指定されたelementを返すlispの関数である。
えぶりりとるしんぐといったらだめよ。
変な名前
変な顔
define-macro にできて、define-syntax (というよりは syntax-rules?) にできないことって、例えばどんなこと?
レキシカル変数の宣言を省略するマクロが作れない。
たとえば構造体を定義するマクロなんかで
make-構造体名とか構造体名-スロット名などの名前の関数を定義するコードが書けない。
syntax-rulesでは、マクロ使用の外から可視の束縛は、マクロ使用式内に出現するものしか作れない。
syntax-rulesで構造体定義マクロを書こうとしたら
定義する関数、変数名をすべてマクロ使用の引数にしないといけない。
式を評価した結果を名前とする束縛が作れないってこと。
syntax-caseならdefine-macroにできることは全て可能。
チューリング完全であってもできないことはできない
LispもBrainf*ckもチューリング完全性でいえば等価だが機能は等価でない
プログラミング言語の能力は計算能力だけじゃないからね
そうですか
>>386-387 ありがとう。よくわかった。
syntax-case はそこをクリアしてるわけね。
393 :
デフォルトの名無しさん:2009/10/23(金) 11:47:31
Schemeの解説を分かりやすく説明した文章を
PDFファイル等で落とせるサイトってどなたか知りませんか?
もちろん、日本語での話です。
395 :
デフォルトの名無しさん:2009/10/23(金) 12:01:07
お早いレス有難うございます。
早速、おとしてみます。
それあまりいいとは思わなかったな。英語でもTSPL読んだ方がはやい。
398 :
デフォルトの名無しさん:2009/10/23(金) 13:03:46
実は、最近、Schemeを触りだしたので、初歩的な質問で申し訳御座いません。
現在、Chez Scheme Version 7.0なるもので、勉強中なのですが、これだと
カッコなどで、一度間違えると、また、最初からdefine文から、書き直さないと
動かないみたいなのですが、DOS窓のように、↑などで、再入力しなくても
すむような、方法か?エディタって、ないのでしょうか?
meadowかnt emacsあたりを中心にして、goshにquack.elなんかを各種設定済みで同梱して
展開してバッチファイル実行するだけでschemeがたのしめるようなパッケージがあったらいいよね
「たしなめる」に見えた
Emacsを勧めるのはやめてください
つGauchBox
>>402 Lisp 系言語をまともに使おうと思ったら Emacs か vi しかないじゃん。
でもEmacsは基本テキストエディタだしねぇ
S式エディタだったらよかったのに
font-lockなどで正規表現を書くときなど悲しくなる
S式でS式のためのコードを書いてるのに何が悲しくて正規表現を使わにゃならんのか?って
自分でelispを書けば実現できるんだろうがそこまでやる気が起きないから結局そのまま使い続けてるけど
自分はEmacsよりマシなものがない(商用のものを除く)から使ってるってだけだな
あ、SLIMEとやらを使えば万事解決なのかな?
SchemerだけどScheme48使いじゃないんで使ったことないや
Chez Scheme に付属している古風なS式構造エディタってのも
懐かしむにはいいかも。
DrSchemeでいいじゃん
408 :
デフォルトの名無しさん:2009/10/23(金) 22:20:09
DrSchemeって、traceが出来ないのですが、どうすれば出来ますか?
ちなみに自分のScheme-Modeはこんな感じにしてる
(local-set-key "\C-m" 'indent-and-newline-and-indent)
(local-set-key "\C-c\C-m" 'newline)
(local-set-key "(" #'(lambda ()
(interactive)
(indent-for-tab-command)
(insert-parentheses)))
(local-set-key ")" "\C-[\C-u\C-[\C-n")
(local-set-key "\C-[(" #'(lambda ()
(interactive)
(insert ?\()))
(local-set-key "\C-[)" #'(lambda ()
(interactive)
(insert ?\))))
M-(と普通の(を入れ替えてるだけなんだけどね
S式エディタって具体的にどんなの?
括弧でジャンプする以外に何か良い機能があるのかな。
リニアなキャラクタストリームとしてじゃなくてS式としてエディタが認識してくれたら
font-lockをもっとインテリジェントに実装できないかなぁ、って思ったのがきっかけ
検索とかも文字列ベースじゃなくてS式ベースにできたりとか
あんまりたいしたことは考え付かないがw
つうか正規表現くらいでgdgd言うなよ。あんなもん空気の如く使いこなせて当然だろ
お前の脳みそは有限オートマトン未満か
>>411 HTML に対する CSS とか、JavaScript で DOM を弄るみたいなのが
S 式に対してできたら良いのかな。それは面白そうですね。
>>413 正規表現を使いこなせてないんじゃなくて
正規表現だけではS式の構造を扱えないといってるだけ
>>408 普通に (trace foo) でできたけど。
普通のエディタでも、行を移動する時に、
折り返しのある行の移動を、論理行でやるか物理行でやるか、
状況によって使い分けたいことあるでしょ?
構造エディタはテキストエディタよりももっと構造フレンドリに使えるけど、
その分制約が厳しくなるので、苦しいこともある。
結局色分けや特殊編集コマンドのあるテキストエディタがいいってことになる。
入力もS式、表示もS式、編集もS式ならうまくいくと思ったけど所詮浅知恵だったのかな
自分でエディタ作ってそれでうまくいくか試してみればいいじゃん
ところでエディタ上では S 式しか扱わないとしても、
文字列→ S 式の lexer 部分は何らかの形で書かないといけないと思う。
S 式程度なら自分で書いちゃってもいいんだけど、
お手軽な方法としてところどころ正規表現を使うっていうのはありだと思う。
S式とXMLデータしか編集しないなら、構造エディタもいいと思うが、
平文も書きたいので、これ以上エディタを覚える気にはならない。
Emacsとviで十分です。
Lisp OS が便利かどうかって話と似てるな。
Lisp を書くには便利だけど、普段使いには必ずしも便利かどうか分からない。
425 :
422:2009/10/24(土) 14:00:16
Interlisp-D、さわったことあるよ。
完全な統合環境で、デバッガから値編集して実行再開、
そういう時も構造エディタ使える。便利だけど
>>423の通り。
Lisp Machineを過去のものに追い遣ったのは、インターネットだと思う。
開放性があることが極めて重要になった。
Mac OSもXが出るまでじわじわシェアを落とした。
UNIXはBSDがうまくやった。
MSは95plusでうまく路線変更した。
Lisp Machineやsmalltalk統合環境は、
plain textが大きな役割を担うインターネットとうまく親和できなかった。
少なくとも当時は。
最近はLispmFPGAみたいなことも個人で出来るし、
デスクトップを自分で構築できる道具、材料も整ってきたので、
もう一回トライするのも面白いんじゃないかと思ってるけど。
もうすぐ Gauche 0.9 がリリースされそう。
つーかなんでとっとと1にならないの?
本まで出てるのに
バージョンなんて気にしてないでしょ。
「そういえばバージョンあげないまま、そろそろ一年だ」みたいなこと言う位だし。
そんなことよりもSICPの日本語の新訳が早く出ないと色々滅びると思う。
独習Lispとか独習Schemeとか出てほしいよ。良い文献は洋書しかない。
とにかく若い人に使ってもらいたい。
でもSICPはScheme勉強のための本じゃないでしょ?
滅びる?
20年くらい前に比べたらずいぶんと流行ってるけど。
むしろ流行りすぎ。
俺も最近はSchemeブームなんだと思ってたw
> 日本語の新訳
和田先生の訳が気に入らない一部の人でしょ。どう見ても。
現存のSICPスレに別訳を幾つか書いた者だけれど、
確かに序文の翻訳には酷いものが含まれてると思う。
訳本の序文は読まないか、理解できなくても気にしない方がいい。
嫌なら旧訳を探して買えば良いのに
正直、和田訳はだめ。
和田先生の訳を受け付けないのは数学書なんかの固い専門書を読み慣れていない人?
438 :
434:2009/10/31(土) 08:20:41
序文の翻訳は下手だよ。
文章が固いとかそういうレベルじゃない。
本文で身につけたい物が身につけばいいじゃん、だいたい翻訳が気に入らないなら原書読めばいいだけの話
ご飯がまずくて食べられなければパンを食べればいいのに。
原文の意味を変えないようにすれば正確な文章になるとは限らないし、
正確な文章であれば読み易いとも限らない。
間違ってるなら論外だけど、
結局は何に重点を置くかってことなんじゃないかなぁ。
バブル世代より上は翻訳脳が欠落してんだよ
今は翻訳自体のプロでなくても翻訳センスある人多い
>>443 そこまで脳内で正しい日本語(笑)に変換できるならはじめから原語版読めば良いだけ
あるいは自分で出版社に全文直してもっていけばよいじゃないか
文句つけるだけなら誰にでもできるyo.
446 :
デフォルトの名無しさん:2009/10/31(土) 15:41:53
drschemeでtraceが出来なくて困っております。
どなたか、アドバイスお願いします。
誰か知りませんか?
>>446 言語を教育用のやつにすればできると思うが。
竹内先生の本ポチった。早く読みたい。
449 :
446:2009/11/01(日) 08:25:35
>>447 有難うございました。
無事、トレース出来ました!\ ^^ \
>>437 そういう問題じゃないと思う。
関係ないけど、和田先生のブログ面白いよね。
>>448 『初めての人のためのLISP』の事かな。
読んだ事無かった辛かって見る。サンクス。
序文を飛ばして本文を読んでみるとそれほど悪くないよね
訳という意味では CLtL2 の訳も今見ると個人的にはぎこちないと思う
ところで、和田先生のブログは俺には高度過ぎて理解できないんだぜ
Larcenyがファイルの512MB以降にシークできなくてびびった。
port-positionがfixnumとか、胸で例えると貧乳過ぎる。
SICP読み始めて1章が終わったとこなんだけど、
微分した関数を生成する関数を見てちょっと気持ちよかった
今後が楽しみだわ
おまいの今後も楽しみです
せっかくLisp勉強したけど
急いで使い捨てスクリプト書こうとすると
pythonかshell scriptになってしまう
俺もそうだったよ。
でもそのうち Python とか Shell Script に飽きてくると
Lisp が恋しくなってくるかもね。そうなったら Lisp を
勉強しておいて良かったと思うかもしれないよ。
俺は今ちょうどそんな感じ。Lisp って何かイイよね。
LispかSchemeをやろうと思っています
理由はLispのマクロがすごいと聞いたからですが、Schemeが抽象化されてコンパクトで綺麗と聞きます
SchemeにLispのマクロにあたる機能が十分に含まれているのならばSchemeを学んでみようと思うのですが
そこんとこどうでしょうか?
まず混乱しないために体系がしっかりしたLispのマクロをやるべき
十分理解してないとschemeのマクロの意義は判らない
schemeのは構文定義寄りに抽象化されてるからいくつか制限がある
ただし大抵のscheme処理系はLisp相当のマクロも用意されてるから
マクロに興味あるだけならどっちからやってもいいと思う
>>457 マクロのすごさは、高速なコードを素早く書ける、という実用的なすごさなんだ。
極めて実用的なLisp、すなわちCommonLispを学ぶべき。
schemeを学ぶとschemeが美しい、ということが分かる。でもそれは後でもいい。
穴掘り熊五郎ーーー!!
>>457 まず評価器を理解するべき
SICPの4章の、構文の場合分けがずらっと並んだcond式に新しい構文を追加してみよう
それに「データ主導プログラミング」を応用すればマクロができる
ってSICPにぜんぶ書いてあるよ
例によって混沌とした流れだw
>>457 ソフトウェアを作りたいならCommon Lisp、黒板にコードを書きたいならScheme。
464 :
457:2009/11/07(土) 10:58:48
なんだか怖いですね…
黒板にコードを書きたい、というのにピンときたのでScheme学んでみます
Lisp相当のマクロもあると聞いて決心しました
ありがとうございました
shibuya.lisp行きたかったぜ
>>464みたいなやつは安心だけしてそこで終わり。絶対勉強しない
schemeにマクロは無ぇよ
面倒だから両方勉強しろよ
>>468 どっちかというと、行くべきは眼鏡屋じゃないかな。
Scheme→Common Lisp→Clojureと行きたいが、道が険しすぎる
Clojureは省いて問題なし
他の言語分かるならREPLを自前で実装するとだいぶ理解が深まると思います
475 :
デフォルトの名無しさん:2009/11/08(日) 15:49:01
>>472 一つをしっかりやれば、そんなに険しくはないよ。
>>475 こういう企画力のある人と結婚したい
アッー!
>>472 最初から Clojure やればいいんじゃない?
metabangの更新止まったのは開発者が飽きたからなんだろうか
(´・ω・`)知らんがな
竹内先生の本はまだアマゾンで予約できないのか…
Rを勉強し始めたが関数書く前に(打っちゃう癖がついてる……
地味にイライラする……
485 :
デフォルトの名無しさん:2009/11/16(月) 22:16:56
s
Rは式全体を括弧で囲んでも問題ないんじゃないか?
487 :
デフォルトの名無しさん:2009/11/19(木) 02:57:59
pairlis
最初の(は自動で入ってもいいのに
そんなemacsのモードないのかな
lispを覚えてマクロ使いこなしても、俺の仕事は他人の作ったVBとかのクソコードのデバッグだけなんだよなぁ
このスレの先輩諸氏はプログラマーらしい仕事に就けているんだろうか
SICPを少しずつかたづけてるオレだが
仕事ではexcelとaccessのVBAマクロ作ってる
そんなもんだ
先輩諸氏がヘボばかりだったから
世の中にLispの仕事がないんだよ
嫌ならやめろ
使いたきゃ使えばいいじゃん
言語指定の仕事をもらってくる方が悪い
世の中そういう仕事しかないよ
レンズ研磨で生計を立てつつ哲学をしたスピノザのように、
植木職人で生計を立てつつLisp道を究める求道者がいてもいいのではないか。
そういう人間しかいないだろ
Lispやっている奴は
>>496 そういう人間の方が真っ当だろう。
嫌嫌、VBやって文句言っているよりはいいはずだ。
現実がわかってないな
会社に入ったら命令されたことをやるしかないんだよ
と言うか、業務用として流行ってないところが魅力的なんだろ、LISPは。
趣味の言語だからこそ高尚に感じられるw。
LISPでVBコード吐かせればいいだろ
マクロを使っただけでいんちき扱いされる世の中で
そんなことが許されるわけないだろ
そこまでやったらVB直接書くほうが楽だろ
問題はreadableなコードを吐いてくれないこと
>>500 黒田さんもそんなようなことをやったって記事を読んだような。
Scheme->C の変換器を使って顧客に見つからないようにやったけど、
結局、見つかってしまったのだとか。
1度の失敗だけで挫けたらダメ!
勝手にメンテナンス不能なコード作ったら
顧客も怒るだろ
Lispって録画とか動画のエンコードとか編集作業とか出来ますか
できる
>>507 高学歴なら会社に入ったらLispがかけると思ったら大間違いだよ
再帰ですら理解不能な連中にプログラムなんて簡単とか、
プログラマーなんて不要とか言われると我慢ならん
512 :
デフォルトの名無しさん:2009/11/21(土) 10:25:30
R6RSのビット演算の手続きの名前は一種の罰ゲームなのか?
bitwise-arithmetic-shift-leftとかもうね。これarithmetic入れる必要あるの?
>>508 FFIを使えばCの関数を呼べるから、Cのライブラリを使える。
もちろん、いちから全部自作することもできる。
>>511 その辺の連中のやってるプログラミングは単なるパズルだしな。
ピースを誰が作ってるか、というところまでは想像できないんだろうな。
>512
arithmetic って名前に入ってるって事は符号拡張するんでないの?
良く知らんが。
> ■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
> このスレを見ている人はこんなスレも見ています。(ver 0.20)
> 起業して人を雇うとき 労働基準法の疑問点と対策 [ベンチャー]
> 野川さくらpart50 [声優個人]
516 :
デフォルトの名無しさん:2009/11/21(土) 20:36:41
なぜさくにゃん
野川さくらってデブだよな
外見に惑わされるな。声に導かれろ。
Gauche 0.9 キター
今日中には上がるかな。楽しみにしていよう。
sourceforge にはもう上がってるでよ
Gaucheって、どこまでできたら1.0の予定なんだっけ?
0.9はCygwinでGauche-gl動くかな?
0.8.14では動かなかったんだよなー
すばらしいλマークだな
キモ中川
はやく消えろ
今年も紅白選ばれなかったか
残念
>>489 現実には世の中そんな仕事ばかりだよ。
vbでまともなコードの書けるヤツは1割も居ない。
ヘジが草葉の陰で泣いているよ。
>>531 ソフト業界のVBと、印刷でのプリンとごっこは似ている。
あと、世界中で使われているフリー言語(Lisp、Python、Haskellなど)の成果が無かったら
効率の悪い言語でビジネスごっこをしている余裕も無くなるけどな。
読み方ヘルスバーグなんだな
Yeah! ちょっと弄ったら Mingw 版の Gauche でも c-wrapper 動いたー。
537 :
デフォルトの名無しさん:2009/11/24(火) 07:40:00
左手の0.9が出たらしいな。
PythonとLispを同列に並べるなよ
使われてる度合いが2桁は違うだろ
maximaのソースみてるんだけど
$any
ってなんだろう
やっぱりLisp(というかAllegro)は、金と人材に糸目をつけないから
高品質なものを早く作りたいっていうところでしか需要がないのかなぁ。
わかる人が少ない言語だと交代要員が確保できないからっていう
職場では採用は永遠に無理なんだろうな・・・ orz
米軍のCALSってまだ現役なの?
人を使うのは楽をするためだ
人にわからせるのが困難なら、人を使う意味はないんだから、自分ひとりでやれ
竹内先生の本は、予定通り? だいじょうぶ?
出版社の人には12月2日と聞いたのだけど。
翔泳社のサイトにはまだ何も書いてないね。
竹内の本なんていつだっていいだろうが
黙って待てよ
>>546 ご高名な方とお見受けしましたので
>>546氏がお書きになられた書籍の紹介をお願い致したいとおもいます
是非にも良き書物のご紹介をお願い致します。
ここは子供が遊ぶとこじゃないよ
じゃあ何でここに居るの?
外史先生のLisp本となると買わないわけにはいかないな・・・
>>532 フリーソフトと一括りにすると
マイクロソフトがライバルつぶすために無料で
くばったりしたものも含まれたりするからな
>>540 受注開発は難しいかもしれないけど、パッケージ売りとか
サービス売りなら実装言語はどうでも良いんじゃないの。
特に新規性の高い分野を探して。
拡張も含めて Mingw 版バイナリ配布してるサイトがあったような気がしたがそんなことはなかったぜ
>>550 書籍の誤り訂正はちゃんとだしてくださいよ…
ここの住人はいろんな言語に詳しいと思うのですが
luaって勉強する価値あると思いますか?
ないね
だいぶ前に、いろんな言語への呼び出しができる言語がないかを
どこかのスレで聞いたらluaを進められたのです
信者の言うことを真に受けたらだめ。
アンチの言うことも真に受けたらだめ。
価値を人に問うようじゃ時間の無駄。
2chに書き込んでるようじゃ人生の無駄
人生は無駄。
>>557 Luaで特別勉強する要素って何かあるの?
他言語の長所をいいとこ取りした、組み込み用途の素朴な言語だと思ってた。
Luaという言語を利用して、OOPとかFPとか勉強する、ってのなら分かるけど、
そういう意味なら悪くないんじゃない? JavaScriptで十分な気もするけど。
ぶっちゃけ凄い勢いでスレ違い。
とりあえずELFフォーマットのオブジェクトファイルが生成できれば
どんな言語からでも呼び出せるな
って思ってELFの構造について調べてみたことがあるがどうもよくわからんかった
linuxでならなんとかなるんだが、solarisとかOSが変わるともう全然違くて歯が立たなくてさ
ここらへんにコンパイラを作れる人たちとの壁があるなーって感じたよ
階段があるのに壁を登ろうとしてるだけのような・・・
>>566 コーリング・コンベンションを最初に調べるべきかと…
http://practical-scheme.net/gauche/gmemo/index.cgi?Windowsコンソール これ、vista日本語版の話だけど
フォントをMSゴシックにしてからchcp 65001するとutf-8出力で日本語表示できる。
あるいはchcp 65001の後だとフォントにlucida consoleを選択できるからフォントリンクの機能を使ってMSゴシックとリンクさせる方法もある。
ただしフォントリンクを使う方法だと文字幅の計算がおかしいらしくて表示が切れる。
cのprintfとかtypeコマンドとかでutf-8を出力すると普通に表示されるんだけど、gaucheのdisplayだとちゃんと表示されない。
まぁどっちみちchcp 65001はいろいろおかしいけど
ココの人たちって まともにアドレスすらはれないひとたちなの??
意味がわかりません。
>>569 Gauche 使いはどっちみち emacs を使うので、ぶっちゃけどうでもいい。
竹内の時代遅れ糞本宣伝してんのは
関係者かなんかか?
未踏スレで暴れてる竹内粘着のキチガイが来たよ...
竹内は未踏で馬脚をあらわしたよな
物凄い税金の無駄遣い
売国奴だ
未踏やってたのって竹内なのか
すげーがっかりだわ
578 :
デフォルトの名無しさん:2009/11/26(木) 13:16:01
未踏擁護のキチガイがいるのか
いいかげんすれ違いの竹内文書の話しはやめてもらえますか><;
発売してから話せよボケが
事業仕分けで未踏いらないってさ。
当然だけど。
竹内未踏話kwsk
スレ違いならヒントだけでも
友愛
仕分けで名指しでいらないっていわれただけだから
未踏が終わるなら嬉しいよ
肩身が狭い思いしなくてすむ
未踏いらない
そうだね、プロテインだね
プラグインなら良いのに
そうだね、プロテインだね
確かに、SchemeプログラマのほとんどにはJavaなんていらんからな。
で、Quackと比べてどうなのかな?
そうだね、プロテインだね
scalaスレで馬鹿Lisperが暴れてる
どうにかしてくれ
goスレで馬鹿Lisperが暴れてる
どうにかしてくれ
わろた
Lispスレで馬鹿Lisperが暴れてるときはどこに行けばいいんだろう
2ちゃんねる以外
>>598 黒板の前かemacsのdoctorの前じゃね?
黒板の前で馬鹿Lisperが暴れてるときは?
チョークと黒板消しで鼻と口を塞いで黙らせろ
自分が馬鹿Lisperだったことに気づいた時は?
このスレで暴れる
>604
馬鹿をやめる事は難しいだろうから、Lisperをやめるしか無いんじゃね?
おちんちん
びろびろーん
わかったしまうよ
何このスレ?
613 :
デフォルトの名無しさん:2009/11/30(月) 13:12:11
>>597 サイボウズかどっかけ? 身元が割れそうなコメントに思うから、
注意したほうがええぞ。
お前は超能力者かよw
超能力者の透視能力ハンパねー!
俺も気をつけないと。
スーパーLisperならセルをみただけで誰がconsしたかわかるというけど…
久しぶりにこのスレに来た。(嘘じゃないよ)
俺は馬鹿Lisperだったのでスレに来るのを止めたんだ。
そしてLispも諦めた。
すると不思議なことに馬鹿Lisperではなくなったのだ。
そしてもう二度と再帰も継続もマクロも理解しなくても良いという解放感も味わえた。
偶然だが職も失ったのでなおさら自由を味わうことになった。
ここで言いたいことは、Lispをやらなくても死にはしない、ということ。
盲点になってる人も居るんじゃないかと思ったので筆をとった次第。
バッカジャナイノ
619 :
デフォルトの名無しさん:2009/12/01(火) 09:30:15
虚言癖は危いよ。
「俺は人間をやめるぞ!ジョジョーッ!!」
621 :
デフォルトの名無しさん:2009/12/01(火) 11:09:24
おまえらほんとlispプログラミング以外の話題が大好きだな
次スレはマ板に立てろよ
どっちでもいいだろ
アナホリックマクロがそんな便利に思えないんだけど
本当に使ってる人いるの?
>>623 Scheme だと cond の => や and-let* があるから必要になったことないな
it が勝手に束縛されるのが Scheme っぽくないというのもあるかもしれない
>>623 つ Google Code Search
aand で検索してみるとそこそこ defmacro されてるみたい。
使ってるところより defmacro の方が目出つくらいなのはどうかと思わなくもないが。
aif はそれなりに使われてるのかなあ。
穴掘りっく真っ黒
ああ、穴ってそういう
アナホリックマクロを知らなかったので、
そういう意味のネタだとしか思えなかった。
(define-syntax and*
(syntax-rules (=>)
((_) #t)
((_ expr) expr)
((_ expr => var) expr)
((_ expr => var rest ...) (let ((var expr)) (if var (and* rest ...) #f)))
((_ expr rest ...) (if expr (and* rest ...) #f))))
今更だけど、S式のパターンマッチめちゃ便利だな。
てか ... とかって最後の部分にしか使えないのかな。
(x ... y ...) みたいに出来たら良さげ。
>>633 どのパターンマッチの話かわからないけれど、とりあえず
Andrew Wright の match の話で。
(x ... y ...) を (1 2 3 4 5 6) にマッチさせたとしたら何が返ってくるの?
最左最長一致すると x = (1 2 3 4 5 6), y = () になっちゃうような気が。
([and (lambda (x) (< x 3)) x] ... y ...) みたいなのだったら
x = (1 2), y = (3 4 5 6) とかはできそうだけど。
まああれだ、昔の COMMAND.COM (今の CMD.EXE も同じかな) で、
REN *.TXT *.OLD みたいにできたように、DWIM 的な挙動
x = (1 2 3), y = (4 5 6) だとか。
くだらねえ
>>635 そんなことできたんだ。
ワイルドカードの展開を各コマンドがやってたからできたんだろうね。
パターンマッチでやろうとすると
((1 4) (2 5) (3 6)) に ((x y) ...) をマッチさせて
x = (1 2 3), y = (4 5 6) くらいがせいぜいかなあ。
DNSすら届かないね。
640 :
デフォルトの名無しさん:2009/12/05(土) 10:48:01
Linux版のdrscheme最新バージョンをインストールしたのですが、 key入力が出来ない状態
ですが、何が悪いのでしょうか?
maximaの中でアナホリックマクロ使おうとすると
leftとかrightとか別なとこで使われてないか不安になる
とくに拡張パッケージが不安
>>634思ってたのはまさしくその通りの感じ。
ところで思ったんだが、二つのS式を入れると枝が重なる部分をパターンとして抽出してくれるのがあったら便利だよね。
そのパターンを同値条件とする曖昧なequal?とかあったらかなり便利そう。
643 :
デフォルトの名無しさん:2009/12/06(日) 19:40:46
【問題】 以下の仕様のmatchを作れ。
(match kwd-list pattern expr)
(match '(a b c) '((a) b . c) '((1 2) (3 4) (5 6) (7 8)))
=> #f ; aが一致しない
(match '(a b c) '(a b . c) '((1 2) (3 4) (5 6) (7 8)))
=> ((a (1 2)) (b (3 4)) (c ((5 6) ( 7 8))))
(match '(a b c) '((1 2) a b . c) '((1 2) (3 4) (5 6) (7 8)))
=> ((a (3 4)) (b (5 6)) (c ( 7 8))))
644 :
デフォルトの名無しさん:2009/12/06(日) 19:43:37
最後は
=> ((a (3 4)) (b (5 6)) (c ((7 8))))
の間違い。
宿題は自分でやれ
646 :
デフォルトの名無しさん:2009/12/06(日) 20:59:48
【問題】二つのS式を入れると枝が重なる部分をパターンとして抽出してくれる
関数を作れ。
(pattern-extractor '(2 3 4) '(1 2 3))
=> #f
(pattern-extractor '(1 2 3) '(1 2 4))
=> ((a) (1 2 a))
(pattern-extractor '(1 2 3) '(1 2))
=> ((a) (1 2 . a))
(pattern-extractor '((1) 2 3) '((1 4) 2))
=> ((a b) ((1 . a) 2 . b))
...や繰り返しをサポートするとprologみたいに複数解になるかね
>>643 は書けた。
>>646 は、いまいち問題設定がよくわからないんだけど、
(pattern-extractor '(2 3 4) '(1 2 3))
=> ((a b c) (a b c))
ってならないのはなんで? この場合だけ特別扱いするのが面倒。
649 :
642:2009/12/07(月) 11:18:39
とりあえずgaucheでやっつけ。無駄と汚さあるかも。
シンボルはgemsymで。
(define (pattern-extractor t1 t2)
(let ((n1 (if (not (pair? t1)) t1 (car t1)))
(n2 (if (not (pair? t2)) t2 (car t2))))
(cond ((and (null? t1) (null? t2))
'())
((or (null? t1) (null? t2))
(gensym))
((and (not (pair? n1)) (not (pair? n2)))
(cons (if (equal? n1 n2) n1 (gensym))
(pattern-extractor (cdr t1) (cdr t2))))
((and (pair? n1) (pair? n2))
(cons (pattern-extractor n1 n2)
(pattern-extractor (cdr t1) (cdr t2))))
(else
(cons (gensym)
(pattern-extractor (cdr t1) (cdr t2)))))))
gosh> (pattern-extractor '((1) 2 3) '((1 4) 2))
((1 . G1) 2 . G2)
650 :
648:2009/12/07(月) 11:43:24
貼っとく。 649 と同じくシンボルは gensym で。
(define (extract-pattern x y)
(let loop ((x x)
(y y)
(vars '()))
(cond ((and (pair? x) (pair? y))
(let*-values (((res vs) (loop (car x) (car y) vars))
((res* vs*) (loop (cdr x) (cdr y) vs)))
(values (cons res res*) vs*)))
((eqv? x y)
(values x vars))
(else
(let ((g (gensym)))
(values g (cons g vars)))))))
(extract-pattern '(1 2 3) '(2 3 4))
=> (#:G37 #:G38 #:G39)
(#:G39 #:G38 #:G37)
(extract-pattern '((1) 2 3) '((1 4) 2))
=> ((1 . #:G40) 2 . #:G41)
(#:G41 #:G40)
>>647 繰り返しは不要な場合もあるし、
rest部にmatchを必要回適用すれば似た効果になる。
schemeマクロはこういうのを体系化したフロントエンド。
>>648 結果が#f以外の時、
carがパターン内で使われる置換キーワードのリスト、
cadrが抽出したパターンのリスト。
>>643の関数の1番目と2番目の引数に対応する。
652 :
648:2009/12/07(月) 17:05:00
>>651 うん。
>>646 の結果が
>>643 の入力として使えるのはわかるんだけど、
(pattern-extractor '(2 3 4) '(1 2 3))
=> ((a b c) (a b c))
となったとしても、
(match '(a b c) '(a b c) '(1 2 3))
=> ((a 1) (b 2) (c 3))
となって、
>>643 の手続きの入力としては問題ないよね?
それこそ、
(pattern-extractor 1 '((1 2) 3 ((4))))
みたいな場合でも、 #f じゃなくて ((a) a) という結果を返せる。
で、
>>646 が #f を返さないといけないのはどういう場合なのかなあ、と。
lushって便利だなって思ったけどダイナミックスコープなんですね
lushの変わりになりそうなものってないのだろうか
>>652 (pattern-extractor '(2 3 4) '(1 2 3))
=> #f
ね。一応。
(pattern-extractor 1 '((1 2) 3 ((4))))
=> #f
この場合も#f
((a) a)は全体一致、すなわちパターンが
これ以上細かく抽出できない終端=抽出失敗を意味している。
その意味で問題では#fにした。
たしかに#fの代わりに((a) a)を返しても同じだし、
出力の形が一意だと綺麗かもしれないね。
あ、
(pattern-extractor 1 1) => ((a) a)
(pattern-extractor 1 2) => #f
になるか。
まあ関数仕様は細かく定義してないから
どうでもいいけど。
もっと抽象的に仕様を定義してくれ
657 :
642:2009/12/07(月) 20:34:56
649で書いたコード、見直したらとんでもない糞コードだった。恥ずかしい。
修正
(define (pattern-extractor t1 t2)
(cond ((and (null? t1) (null? t2))
'())
((and (not (pair? t1)) (not (pair? t2)))
(if (equal? t1 t2) t1 (gensym)))
((and (pair? t1) (pair? t2))
(cons (pattern-extractor (car t1) (car t2))
(pattern-extractor (cdr t1) (cdr t2))))
(else
(gensym))))
お目汚し失礼。
>>655の最初の2行目は1の間違い。
いかんなあ。
match はこんな感じかな
(define (match kws pat expr)
(define (kwd? p)
(member p kws))
(let loop ((pat pat)
(expr expr)
(res '()))
(cond
((and (pair? pat) (pair? expr))
(let ((res* (loop (car pat) (car expr) res)))
(and res* (loop (cdr pat) (cdr expr) res*))))
((kwd? pat)
(cons (list pat expr) res))
((eqv? pat expr)
res)
(else #f))))
インデントされてないと全く読めない…。みんなこれ読めるの?
navi2chではインデントされてます。
みんなありがとう。V2Cではインデントされてないように見えるんだ。
>>663のリンクを踏んでインデントされたコードが見えるようになった。
PPってPretty Printのこと?ググってもよくわからんかったな…
これって単一化とかそういうのに繋がったりする?
構文定義でパータン同士の比較は必要ないか
>>650さんの多値版を勝手にリストにして
答えを
>>646の問題に合わせて入れ替えたもの
多値っていまいち馴染めないですfirst classじゃないのが原因?
(define (extract-pattern x y)
(let loop ((x x)
(y y)
(vars '()))
(cond
((and (pair? x) (pair? y))
(let* ((res (loop (car x) (car y) vars))
(res* (loop (cdr x) (cdr y) (car res))))
(list (car res*) (cons (cadr res) (cadr res*)))))
((eqv? x y)
(list vars x))
(else
(let ((g (gensym)))
(list (cons g vars) g))))))
(defun match? (atom pattern expr)
(cond
((equal atom pattern)
(values (list atom expr) t))
((equal pattern expr) (values expr nil))
(T (values nil nil))))
(defun match-recur (kwd-list pattern expr result)
(if (atom pattern)
(multiple-value-bind (ptrn true?)
(match? (car kwd-list) pattern expr)
(when true?
(append result(list ptrn))))
(multiple-value-bind (ptrn true?)
(match? (car kwd-list) (car pattern) (car expr))
(if true?
(match-recur (cdr kwd-list) (cdr pattern) (cdr expr)
(append result (list ptrn)))
(if ptrn
(match-recur kwd-list (cdr pattern) (cdr expr) result))))))
(defun match (kwd-list pattern expr)
(match-recur kwd-list pattern expr nil))
--
CL-USER> (match '(a b c) '((a) b . c) '((1 2) (3 4) (5 6) (7 8)))
NIL
CL-USER> (match '(a b c) '(a b . c) '((1 2) (3 4) (5 6) (7 8)))
((A (1 2)) (B (3 4)) (C ((5 6) (7 8))))
CL-USER> (match '(a b c) '((1 2) a b . c) '((1 2) (3 4) (5 6) (7 8)))
((A (3 4)) (B (5 6)) (C ((7 8))))
GIMPのscript-fuからファジー選択を呼び出して機能させたいのですが、検索かけて関数を調べるところまでは、
理解できたのですがその後がさっぱり理解できません。どなたかご教授よろしくお願いいたします。
「検索かけて関数を調べる」の意味がよくわからないし、
(ググったってことか?)
おまえがどれくらいSchemeを知ってるのかもわからないし、
なんにもわからないから答えようがない
script-fu ってcall/ccあるのかな
>>669 Script-Fu→Script-Fu コンソール→Script-Fuプロシージャブラウザで、
必要そうなプロシージャを検索したということです。
Schemeについては、GIMPのマニュアルの中のScript-fuの項目とGIMP wikiのScript-Fu 青空教室を
読みながら、落ちている簡単なスクリプトの中を見て、書き換えてみたりで、ほとんど出来ないと言って構わない
と思います。
この板で質問してるのに、なぜ学ぼうとしないのか
GIMPの使い方なら板違い
すいません
Script-Fuからlush呼べるかな
できたら便利そうなんだけど
はい
>>671 関数名が分かった後やることなんて決まってるじゃないか。呼びなさいな。
今初めてプロシージャブラウザとかいうのを使ってみたけど、
見付けたのはgimp-fuzzy-selectかな? パラメータとか全部載ってるじゃない。
何が分からないんだい? 各パラメータの意味が分からないってのは無しで。
それ画像処理に関する知識の有無の問題で、Schemeの話じゃないから。
英語が読めないってのはもっと無しで。
高校生以上で英語が読めないとか言ってる奴は読む気が無いだけだから捨て置け
(let* ((i (car (gimp-image-new 100 100 RGB)))
(l (car (gimp-layer-new i 100 100 RGBA-IMAGE "l1" 100 NORMAL-MODE))))
(gimp-image-add-layer i l -1)
(gimp-display-new i)
(let ((d (car (gimp-image-get-active-drawable i))))
(gimp-drawable-fill d WHITE-FILL)
(gimp-fuzzy-select d 0 0 15 CHANNEL-OP-REPLACE TRUE FALSE 0 FALSE)))
手元のGIMPのScript-Fuコンソールでは動いた。説明? 知らんがな。
何でgimp-image-newとかの戻り値ってリストなんだ?
英語は読めるんだが理解できない
サンプルコードまで提示したんだから、使い方くらい察してくれ。
sicpの2.55がわがんね
"Eva Lu Atorは解釈系に対して式(car ''abracadabra)と入力した。
驚いたことに解釈系はquoteを印字してきた。なぜか。"
(car (quote (quote abracadabra)))になってるってのはわかる。
でもこの式だと真っ先にabracadabraが評価されてエラーになる気がするんだが。
>>681 quoteってSpecial Formだと思うんだが。
sicpの2章じゃspecial formの話は出てこない。
あとspecial formって言って意味がわかる奴は
問題をもう一歩進んで考えてみたらおもしろいのかもしんない。
特殊形式の解説とか抜きにしても、
quoteのセマンティクスについては分かってるんじゃないの?
だったら、同じような考え方で結論まで持って行けそうだけども。
'abracadabraは何故エラーにならないか、ってのと同じことだし。
でもquoteを普通の関数のように誤解してると、どうしてもまず引数が評価されて…とか考えるんじゃ無いかな?
>>685 > でもquoteを普通の関数のように誤解してると、
それは死んでいいレベル
687 :
デフォルトの名無しさん:2009/12/12(土) 10:48:19
(- 1 12345)を実行すると、0.8765499999999999になる
なんで?
688 :
デフォルトの名無しさん:2009/12/12(土) 10:49:21
ごめん間違えた
(- 1 0.12345)を実行するとだった。ごめん。
浮動小数点の特性
CMU Common Lisp Port: 41079 Pid: 18662
; SLIME 2007-09-27
CL-USER> (- 1 1.2345)
-0.23450005
CL-USER> (- 1 0.12345)
0.87655
CL-USER> (- 1 0.1234)
0.8766
CL-USER> (- 1 0.12345678)
0.8765432
CL-USER> (- 1 1.2345)
-0.23450005
CL-USER> (* 0.1 0.1)
0.010000001
CL-USER> (* 0.1 0.01)
0.001
CL-USER> (* 0.1 0.001)
1.00000005e-4
>>687 何故誤差が発生するのかも分からないのか?
お前アホだろ?
>>690 正確な値がほしければ有理数を使え、なぜかが知りたいなら浮動小数の原理を学べ
浮動小数の原理と言うか、コンピュータ内部で「数」がどのように表現されてるか知らないといろいろ戸惑う事はあるだろうな。
つまり、コンピューターハードウェアの基本も少しは勉強しないとどの言語も満足には使いこなせない。
別にLisp固有の問題では無いので。
浮動小数の誤差がどうのこうのって言う人は一度IEEEの規格書読んでからにして欲しい
wwwwwwwwwwwwwwwwwwwwwwwwww
「浮動小数」つってるやつは素人
「浮動小数点数」と呼べって? そりゃ、そうだが。
対義語は「固定小数点数」だからな。
(「整数」では無い)
後、Common Lispなら無限多倍長計算(整数だと当たり前なんで実数)なぞやってみると面白いと思うよ。
浮動小点数?
浮動少数 floating number
浮動小数点 floating point
浮動小数点数 floating point number
浮動小数点数 に一致する日本語のページ 約 136,000 件中 1 - 10 件目 (0.10 秒)
浮動少数点数 に一致する日本語のページ 約 94,900 件中 1 - 10 件目 (0.48 秒)
浮動小数 に一致する日本語のページ 約 240,000 件中 1 - 10 件目 (0.15 秒)
浮動少数 に一致する日本語のページ 約 283,000 件中 1 - 10 件目 (0.23 秒)
ひどすw
不動小数点数 に一致する日本語のページ 約 146,000 件中 1 - 10 件目 (0.22 秒)
不動少数点数 に一致する日本語のページ 約 24,200 件中 1 - 10 件目 (0.26 秒)
不動小数 に一致する日本語のページ 約 170,000 件中 1 - 10 件目 (0.36 秒)
不動少数 に一致する日本語のページ 約 369,000 件中 1 - 10 件目 (0.22 秒)
浮動小数点 の検索結果 約 450,000 件中 1 - 10 件目 (0.10 秒)
略すならこれだろ。
「浮動少数」なんて略し方してる奴は意味分かってないだろ。
浮動小数点数の事を浮動小数点と書いてる人がいたらちょっとな…
おまいら、この話をいつまで続けるんだ?
小数点の位置が有効数字の特定の位置に固定されてるのが浮動小数点で
小数点の位置が有効数字に対して浮動するのが固定小数点だよね?
なぜそんなひねくれた理解のしかたを
不動裕理 の検索結果 約 125,000 件中 1 - 50 件目 (0.22
不動さんより多いな。<浮動小数点
>小数点の位置が有効数字の特定の位置に固定されてる
正規化された表記を知っていればそんな発想は出てこないはずだが
浮動明王!
また不動小数点数かよw
そう言えば、Lispと不動点定理って関係があるんだったな。
不動明 の検索結果 約 525,000 件中 1 - 50 件目 (0.56 秒)
浮動明はデピルマソ
スレが伸びてるから見てみたら……
おまえらそろそろスレタイ読み直せ
本当にここは、浮動小数点数の時は盛り上がるよなw
浮動小数点数って英語ではFloating Point Number、略してFPだろう?
日本語でも浮点、あるいは浮点数と略そうぜ。
フロポン
ええいめんどくせぇ
ここから先このスレでは"浮動少数[^ -zあ-んア-ン]*"で統一でどうだ?
突っ込んだら負けな
誘惑に凄い負けそう。
lushが一瞬便利にみえたけどやっぱpythonの方がいいや
ニッ!
ニダー
pythonは日本語訳ドキュメントが充実しているわね。
>>677 >677 デフォルトの名無しさん [sage] 2009/12/11(金) 01:37:37 ID: Be:
> 高校生以上で英語が読めないとか言ってる奴は読む気が無いだけだから捨て置け
日本語の Common Lisp 情報ってどこを勧めればいいんだろう
Scheme は WiLiKi とか Gauche 界隈からなんとなく辿れるけど
726 デフォルトの名無しさん [sage] 2009/12/15(火) 18:56:24 ID: Be:
>>677 >677 デフォルトの名無しさん [sage] 2009/12/11(金) 01:37:37 ID: Be:
> 高校生以上で英語が読めないとか言ってる奴は読む気が無いだけだから捨て置け
>>727 ANSI Common Lispとか
On Lispとか
実践Common Lispとか
Let Over Lambdaとか
しょーもない質問で申し訳ないのですがプログラムをemacsで書く時に
( をどのように打っているのでしょう?
普通に shift + 8 キーですと少し打ちづらいので
何か他の打ち方をしている人がいたら是非教えて欲しいです。
>>730 >shift + 8 キーですと少し打ちづらい
うちは shift + 9 だけど、全然打ち辛くないよ
>>730 ふつうにshift + 8で打ってるけど
打ちづらいなら8とshift + 8を入れ替えてみるとか
自分としては変なクセがつきそうで嫌だけど
733 :
318:2009/12/15(火) 22:47:14
俺は M-( でペアを入れちゃうことが多いかな。
quack.el の括弧の種類によらず ] で閉じられるのはかなり便利。
慣れると何のモードでも ] を叩いてしまう。
省スペース型のキーボードに変えるといいよ
俺もShift-9。
8はちょっと遠い。
窓使いの憂鬱を使って
無変換 + J で(
無変換 + I で)
こんな感じでホームポジション付近に色々な記号を配置してる
もう8とか9とか0は遠くて駄目だ
自分は 8 は遠いけど 9 は問題ないというかちょうど良い感じ
指の長さにもよると思うけどね
左手でShift押せば、遠いも何も無いと思うんだが。
みんな shift は左手で押す事を前提で話してるもんだと思ってたけど…
右手中指のホームポジションの K から 8 へ指を運ぶのが遠いという話でしょ
(もし 8 を人差し指で押すなら、J から 8 への移動)。
一方、K -> 9 は自然な上下移動なので打ち易い。
8と9が遠い・遠くないとか、わけわからないよ。
どうもSHIFT+8を右手で打っている人がいるようでござる
Shift + 8 が遠いと * で困るじゃないか
まあ人によっては普通のキーボードでは大きすぎるということもある
特に女性の場合
>>743 各指をホームポジションに置いて、1から0まで順番にキーを押せば絶対に分かる
わかんね
ホームポジションの位置で掌開いて置くと中指と薬指の指先が丁度8と9に行くし
6と7は人指し指の短かさと手の角度で遠くなるけどな
手首をストレートにしているか少し捻ってるかで、
中指薬指に89が近いか、90が近いか変ってくる。
>>747 わかんね。
実際は英語圏のキーボードではないけど、タイプライター時代に早くタイプできないように配列されているのが今のキーボード配列ではないの?
俺は「無変換」キーをシフトに割り当ててるんだが、
これってメジャーな方法?
俺はEsc
>>750 早くタイプできないように云々は都市伝説だと聞いた
>>751 わりとメジャーじゃないかな
あとは emacs で ctrl にしたり super にしたりという人もいるんじゃないかと
lushをcommon lispから呼ぶ部品として使いたいんだ
だけどlushにソケット通信機能らしきものがない
パイプ使っては呼べるみたいだけどパイプからすごい頻繁にlush呼ぶのって
ハードディスク毎回lushのバイナリー呼びにいったりするんだろうか
起動が遅いなら終了しなきゃいいだけ
それなんてEmacs
>750 >753
敢えてタイピング速度が遅くなるようにQWERTY配列キーボードが設計されたと言うのは都市伝説でも、連続タイプした時にタイプバーがなるべく絡まないように配列が設計されたと言うのは本当みたいだよ。
で、後にIBM製電動ボール・タイプライターなんて物も売られていました。(これなら幾ら速くタイプしてもからまないw)
>>759 そのページにも、
(※田之上注: 「初期機械式タイプライターにおけるタイプ・バーの『絡み』を避けるために
QWERTY 配列は考案された」という説明は誤りであると言えそうです。詳しくは,上にも
挙げた安岡先生(京大)の「QWERTY配列再考」を参照。)
と書いてあるが?
すれ違い
762 :
757:2009/12/16(水) 19:40:41
>760
「これは、タイプ・バーの「絡み」を避けるというQWERTY配列の設計意図が、打鍵感覚の上でも利点となっている――少なくとも偶然そういう結果を生んでいる――例です。」
私はこの一文に注目したのですが、このページ全体を書いた人とその注を書いた田之上と言う方の見解が少し異なっているようですね。
>>748 そこまで分かるなら類推できるだろう
少なくとも俺には出来るから、君と俺の間に何か違いがあるのかもしれない
残念ながらこれ以上君を助ける事は出来ない様だ
765 :
757:2009/12/16(水) 20:18:53
>764
そうなの?
だとしたら、書いた時期によって見解が少し変わったと言う事かな?
lispのキラーアプリってなんかあるかな?rubyで言うrailsみたいなやつ
l
lispの話がちっとも出てこない件について舌っ足らずで書いてみるテスト
キラー泥団子。
webフレームワークなんかは lisp で出来たやつが出てきてもよさそうなのにな
※オリジナルの抗議文です!自由に使ってください!各所にバラまいてください!!
**********************************************************************
【抗議文テキストとPDF】
専用ブログに飛びます
http://so-smart.be/~t6kggb 民主党本部や議員にFAX・郵送するなど、どうぞ自由に利用してください。
メールや電話よりも、FAXや郵送が効果的かと思います。
特に、地元民主党議員宛てに郵送して頂ければありがたいです。
**********************************************************************
竹内さんの本まだかなぁ。
12月中旬発売って事で予約したのに何の音沙汰もないや。
そういやLand of Lisp 今日じゃんと思って確認したら3月に延期かよ
出てない本の話はいいよ
延期するたびに書き込むな
>>775 焦らしプレイたな。
本当に気持ちよくさせてくれるのだろうか。
>>779 ごめん、 Rails つながりで脊髄反射で言った
Web フレームワークはよく知らないんだけど、 Weblocks も評判いいみたいね
>>766 Lispache だろ。
フレームワークっていうかサーバだけど、
サーバも含めたフレームワークっていうか…。
そもそも枠に収まらない気もする。
えっ
Scheme(Gauche)でAllegroCacheみたいなの無いのかな。
Kahuaの永続クラス分離してくれたらすごく都合が良いんだけど。
またムダな宣伝をしますか
竹内本はまだかよ
あとClojure本はどうなったかな。
どっちも年内には無理なのかな。
延期なら延期でいいから情報出してほしい。
>>789 Clojure 本って発売日の情報出てたっけ。
8月末に進行中って情報が出てたから来月くらいにはと思うけれど。
12月に出るとか言われてたよなあ>Clojure本
おねがいですからせんでんをやめてください
違うよ。全然違うよ。
まんじゅうコワイヨ
予想ではアウトラン3Dのあとにでる
マークIIIユーザとLisperってかぶるのか
ヒント : おっさん
schemeとかの関数型言語やってみようと思ってるんだけど
何に向いてるんだ?
作るものの目標が欲しい
lisp は関数型言語じゃない、って let over lambda に書いてあった
好きなものを書けばいいんじゃね
関数型っぽく書くのも良し
手続き型っぽく書くのも良し
自分は懐かしいZ80アセンブラを書こうと思っているとこ。
CLやSchemeはともかく"Lisp"は関数型言語じゃなかったっけ?
>802
Common Lispは純粋な関数型言語では無いよ。
幾らでも手続き型風に書ける。
>>802 setqとかある段階でマルチパラダイムだと思う。
不純なの最高!
取っ付き易くていいわー
807 :
803:2009/12/22(火) 23:25:09
ああ、>802は「CLやSchemeはともかく」と書いてるね。
彼が言うLispとはいわゆる普通のLispでは無く、Pure Lispの事か。
そうなんじゃないのかな。
>>798 個人的な最初のオススメは、日常で使ってるツールを移植すること。
手軽かつ気軽。で、慣れるにつれて徐々にリファクタリング。
履歴を残しておくと、変遷が分かって面白いと思う。
向いてる物はウェブアプリケーションとか?
継続ベースのフレームワークとかあるし。
システムプログラミングとかの例外を除いて、
それほど苦手なジャンルはないと思う。
lispでやると大変そうなことって言うとGUI全般だな。
qtとかwxwidgetsが使えるのかよくわからん。
使えるんだろうけど、誰も使ってるように見えないからすぐ落ちそうで怖い。
個人的にはARToolkitとかopenCV使いたいけど、これも大変そう。
pure lisp って何だ? LISP 1.5か?
Lispが関数型かどうかというよりも、関数型という言葉の定義によるわけで
>799の文脈で言う「関数型」とは代入操作も副作用も無い純粋な関数型の事だと思います。
Haskell スレではしょっちゅう「副作用」の定義の話になる。
>>810 C++のライブラリは、Cでラッパーを書かないと、
黒魔術を駆使しなきゃならなくなると思う。かなり面倒。
そこまでするならGTK+でいいじゃん、という結論に多分落ち着く。
そもそも、よほど自動化されたFFIの仕組みでもない限り、
テキストデータを適当に出力するだけでそれなりのUIが作れる、
ウェブの手軽さに流れちゃうと思う。
結局lispが主流になれないのはそこらへんが原因なのかも。
ユーザーが求める高速でリッチなものを作るのが難しい。
何やるにしてもライブラリが無いから最終的にはCを呼ばなきゃならないんだもの。
それなら最初から別言語でやろうかって話になっちゃうような気がする。
s/lisp/VB/
最も歴史あるプログラミング言語なのにライブラリが無くてVBと比較されちゃうのってどうよ
ライブラリライブラリ言う奴はKawaとかClojureでもつかってろ
>>817 Lispに限らず、ライブラリのターゲット言語以外は全部同じ条件だよ。
余所の言語が頑張っているというなら、それはマンパワーの差というだけ。
やってること変わらんもの。
高速でリッチ〜という部分は良く分からん。速度は諸言語の中でも速い方だし、
リッチクライアントというなら、フロントエンドだけ別言語で作るのは定番だよね?
むしろ、そういう敷居は低くなってきてると思うんだけどなー。
ひとつの言語で完結させたいなら、Clojure使うといいんじゃないかな。
あれ、Javaのライブラリなら好き放題アクセスできたと思う。
clojureはメーリングリストとか見てるとかなり活発だね。Scalaより来ると思う。
Javaのクラスライブラリ直接使えるのは本当に強力。
Clojureのロゴの小綺麗さは異常
会社でclojure使いますって言ったらどうなるんだろう。
やっぱ保守できないからjavaで書けって言われるんだろうな。
敷居は下がるけど、中身はLisp丸出しだしな。
clojureはlispだからいいんだけど、scalaは何がしたいのかよくわからんね
静的型付けなRubyになりたいんじゃね
>>827 分かりたければ、Scalaの型システム(型理論)、並列計算モデルを勉強しなよ。
型の理解よりも重要なのは開発者の経歴
clojureの為にjava勉強するならcffiでインターフェイス書いた方が楽だった
clojureはなんでdefnとか中途半端なアイデンティファイア使うんだ?
defunとかdefineとかはっきりすればいいのに。
>>830 無名歌手より盗塚愛なんですね
わかります
> 新タイトル「MAD DAEDALUS(仮称)」が完成しましたら、その成果をイプシロンにフィードバックいたします、どうぞしばらくお待ち下さい m(_ _)m
ついにScheme搭載ピンボールゲームが来るのか?
>>832 def,defn,defstruct,defmultiとか沢山あるからじゃないの?
おれは Common Lisp チックでしかも短いから好きだけどね。>defn
>>832 clojure.core で短かめのよく使いそうな識別子がもう使われててちょっと不安になる
Scheme で list とか使われてても平気だからたぶん大丈夫なんだろうけど
>>832 defunもそんな変わらないじゃない。
そもそも、lambdaがfnだからdefnなんじゃないの? あれ。
しかしlispのくせにLisp-1とはどういうことだ
俺はLisp-1の方が正しいと思うけども
>>833 キミに盗の字を使わせている情報もまた略歴の一部だし、
言語の世界においてはむしろどんどんアイディア盗んで欲しいところ。
>>835 New! のマークが付いてるFairy Towerがそうなのかな?
最終目標は現代版PCS (Pinball Construction Set) だということらしいけど。
>>815 ちなみに最近なんかよく出てくるBlackも副作用を許していないんだよね。
正確にいうとLevel1でしか副作用が発生しないようになっている。
上位レベルはあくまで自己反映のための複製でしかないから、上位レベルで
書き換えが起こるとシステム的におかしくなるからだと思われ。
Blackって話題になってるの?
いやシラン。それに、話題になってるとは言ってないぞ。
面白そうだったのでちょっと調べてみただけ。
俺も気になったんだけど、Black って最近なんかよく出てくるの?
どこで?
関数型言語を使うと生産性が上がるって記事を読んだことがある。
他にも普通の奴らの上を行けとかでlispは高い生産性があるだとか
Haskellもpugsを3ヶ月くらいで作ったって言ってるけど
成功した人たちが特別に優秀なだけなんではなかろうか
関数型言語の使用という選択をさせたのもその優秀さの一旦なのでは?
生産性の高い特別な人間が使う道具を凡人が使っても、生産性が高くなるとは限らない
しかし特別な人間を追いかけないかぎり、凡人はいつまでも凡人のままだ
そんな難しく考えなくても、単純に高階関数とかって便利じゃん。
言語の選択を変えるだけで、優秀になれるわけがないのに、
そんなこと分かりきっているのに、なにをぐだぐだ言っておるのだ。
そんなこと書いている暇があったら(以下各自自由に補完
「言語の選択を変えるだけで優秀になれる」と誰かが言ったわけではないので、
キミ本人が思っているより遙かにこの場にハマってないです、そのレス。
で、実際どうなん?
相対的に普通の人々のlisp/schemeスレ住人がlisp使ってもそんなすごいの?lispって
そりゃlisp使おうって時点でそこらのえせプログラマーとは格が違うから
一般人が使った感想と違うのはわかるけどね
ポールグレアムらのlisp評に嘘、誇大広告、まぎらわしい部分あるんじゃないの?
知らんがな
調べてわかったら教えてくれ
広告屋の文案を鵜呑みにするバカはいないだろ
グレアムのエッセイ読む暇があったら、
コードか論文読んだ方がいいよ。
>>854 色んな意味で凄すぎてここで説明するのは面倒
自分で他の言語と比較するがいい
>854
まあ、馬鹿除けにはなるかね。
抽象的なプログラムが出来無いとLispらしいプログラムはできない気がする。
>848
そんなあなたに"Let Over Lambda"
ベータマックスはVHSより優れてる!
>>854 >相対的に普通の人々のlisp/schemeスレ住人がlisp使ってもそんなすごいの?lispって
別にそんな事無いと思うよ。凄くない。全然凄くない。超普通。
興味無い人が使っても何も起きない。気にする必要ナッシング。
至って平均的。まぁそりゃ多少は変わってるけど。基本的には
他の言語で十分。人類最大の発明みたいなことを言ってる人が
いたらごめんなさい。先に謝っておきます。
リストの使い勝手が良いからプロトタイピングに向いているとか、
プログラム自体もリストだから言語自体が発展して行く様な
プログラムが書けるとか、REPLがあるから小さいコードをテスト
しながら対話的にプログラムを大きくして行けるとか、再帰的な
コードが書き易いとか、そんな事は多分どうでも良い話なんです。
まじで大した事無いです。実際こんなスレを覗くだけ時間の
無駄ですよ。CとかJavaでも凄いコード書く人は凄いコードを
今もバンバン書いているわけで、コーディングに時間を割いた
方が断然いいと思います。Lispが凄いとか言ってる人がいたら
こちらで何とかしておきますから、こっそり教えてください。
これくらいで良いですか?
>862
適当にあしらってスレから追い出す気、満々ですねw
lisp業界は平均年齢が毎年1増える業界だからそれでいい
あと分母も減るよ
だってSICPで計算機科学の入門してscheme覚えて
その後に実践common lisp読んで、on lisp読んで、Let Over Lambda読まなきゃならんでしょ
Cでも勉強に1年くらいだってのに仕事しながらlisp覚えようとしたら数年はがんばらなきゃならん
これじゃlisp人口が増えないのもしょうがない
とりあえず「初めての人のためのLisp」を一通り読めば、わかったような顔はできるぞ。
宣伝はやめてください
>866
目的が実用的なCommon Lispなら無理してSICPとSchemeを勉強しなくても。
ラムダ計算の理論なんぞ知らなくてもLispは使えるよね。
チューリング・マシンの理論を知らなくてもCやC でプログラムは書けるのと同じ。
ていうか、SICPってScheme学習本じゃないよね
今はlispの本が揃ってて充実してるけど、昔の人は大変だったろうね。
それはどの言語も同じだと思うが
例外はFortranくらいか?
地方の本屋などでの入手可能性はともかくとして、
ちびちびと出版されてはいたよ。
昔から充実してたよ。
むしろ昔の方が多くなかったか
処理系作る本もあったし自然言語処理とかの応用分野の本もあったし
>>866 そんなに難しく考えることもないと思う。
とりあえずLisp/Schemeを動かしてみて、後は興味しだいで。
Lispは宝の山なんでハックしがいがあるよ。
お前らの「昔」っていつだよ
>877
25年くらい前じゃね?
>>866 Cの勉強に一年って、それ文法とセマンティクス覚えただけじゃん。
それを言うなら、LispなんてCよりよっぽど早くそこまで行くよ。
計算機科学の基礎教養があるかどうかで全然違う。
しかし誰もlispはマクロ使って生産性がどーんとアップ!って断言しねーのな
やっぱ人月の神話にあるとおり、そんな都合のいい魔法は無いのね
そんなの相手によるだろ
>880
理論上は生産性がどーんとアップしても、仕事で使わせてくれる会社が滅多に無いので、事実上Lispによって生産性がアップすると言う現象は起きない。
魔法の価値は魔法使いしか分からない
マクロ使いまくりのLispコードなんて、他人から見りゃ魔法以外の何ものでも無いだろうな。
業務ではあまり使われないのも当然だろう。
マクロ使いまくるのも関数使いまくるのも、
読み手に要求される記憶容量・読解力ともに、さして変わらないよ。
>>866 それを言ったら C++ の方がよっぽど大変なはずなんだが。
マクロは状態を持たない(出力が一意)から継承使いまくりのOOよりは読みやすいと思う
pythonスレでリスト内包表記がどうのこうのって言ってるのでわかった気がする。
lispは必要になったら自分で作れるのね。簡単に、自然に。
>>888 うん。それが強み。構造体とかベクタで実装してたりするし。
こういうのができるだけで、全然違うと思う。
>>880 オブジェクト指向で生産性アップ! くらいの効果はあるよ。たぶん。
define-pstructなるマクロ → select,insert..etcなるマクロ → SQLのトークンのリスト → 生のSQL
みたいな感じで永続化の仕組み作ったら驚くほど便利になった。
初めてマクロの凄さとボトムアップで作る便利さ実感したよ。
gauchで、perl -e expr 相当のオプションは何になりますか。
gosh -e expr とするとインタラクティブモードに入ってしまうので、そうならないオプションを教えてください。
Railsの黒魔術を、もっと綺麗に実行速度を落とさずに
実装できるくらいの効果はある
マクロを使って ActiveRecord 相当の仕組みを実装するという話か
>>892 gosh の -e は perl とは意味が違って、複数渡せるので
gosh -e expr -e'(exit)'
とする。 exit のまわりの括弧がうっとうしいなら
gosh -e expr -Eexit
とか。詳しくは man gosh とかリファレンスマニュアル参照
REG 解析表現文法 を検索してみたら
実装しようとしてる人がschemeで書いてたから興味を持ったんですけど
言語処理に向いてるのですか?
その言語をscheme上で仮組みして即動かせるぐらいには向いている
竹内本、年内には出ないのかなぁ。何の音沙汰もないんだけど。
時間かかってる分、改訂の手が沢山入ってるってことなのかな。
個人的な話、年明けたら落ち着いて読む時間取れなくなりそうなんだよな…orz
来年からがんばる
何かアクシデントでもあったのかね。
空港のエックス線検査でマスターテープが消えてしまったとか。
>>898 宣伝はよせ、としつこい奴がいるんで書かなかったけど。
12月2日の予定に間に合わなかった時点で書店より電話があった。
来年1月8日の予定とのこと。
>>896 PEGのことだと思うけど。
論文でも使ってるHaskellが、遅延評価の関係で頭ひとつ出る。
他の言語ではだいたい似たようなもの。
Cみたいにプリミティブだけの言語は別として。
>>901 だからやめてください
ついったーあたりでおねがいします
こんなに宣伝やめろやめろ言われていなければ俺はこの本に興味を持たなかったのに
俺も、ここまでして邪魔したい物とは何なのか知りたくなってきた。
>>902 > 論文でも使ってるHaskellが、遅延評価の関係で頭ひとつ出る。
ただのメモ化としか使ってないだろ。
しかも呼び出しがコード中に散在とかじゃなくテーブルの要素なんだから、
そんないうほどのことはない。
竹内はうんこ
殿、殿、こんな夜更けに、他所様の掲示板にうんことか書いちゃダメでござる。
マ板の未踏スレに張り付いて、必死に竹内先生を叩いてる基地外か?
竹内に先生とか付ける必要ないだろ
竹内に天才とかおだてられた馬鹿か
竹内は老害
こいつのせいでいくら税金が無駄になったか
基地外だから、何を言っても無駄だよ。放置するしかない。
竹内の馬鹿がいくら税金使っても
役に立つものは何1つ作れない
早く消えろ
919 :
デフォルトの名無しさん:2009/12/29(火) 09:14:16
scsh、guileの日本語の扱い可能程度を知っていたり、使っている方
コメントください。
gaucheは初めから日本語を使えることを考えて作ったということですが・・.
日本語の定義による
確かにそうでした。
scshは*shの名前のとおりに、現在のbashが実現している程度と比較した時の程度を
考えています。うちではbashはコメント、や引数、ヒアドキュメントに日本語を使えます。
対話的な利用ではコマンドラインで日本語打つこと可能でファイル名などはアクセスはできても表示はうまくありません。
guileはアプリケーションなどにも組み入れられているようなのでgaucheと比較して欠けている部分が
どこかと言うのが気になります。
今年はLispは捗らなかった。反省。
そうしているうちに自分が老人になってるんですね
わかります
それではよいお年を。
いやいや、そちらこそよいお年を
どうぞどうぞ
明けおめ、コトヨロ。
今年こそLispで仕事ができますように
あけおめ!同じく!
島内剛一>>>|超えられない壁|>>>竹内郁雄
後藤英一先生、島内剛一先生、和田英一先生など高名な方々がおられますが
これらの諸先生方と比べ竹内郁雄先生の業績を教えてください。
※出版書籍と竹内関数は除いてください。
P.S.
シグマ計画ってなんですか?
>>933 対象の選び方に恣意的なものしか感じないけれど、
とりあえず比べるのは後にして
http://www.nue.org/nue/index.html から論文リストでも追ってみればいいんじゃない。
そのあたりの単語からシグマ計画がどうこう言うのも解せないけれど、
最近なら Google とか Wikipedia とかあるんだからそこから調べればいいと思う。
というか、スレ違い
>>921 guile は SCM + α なので、機能満載な gauche と比べてしまうと欠けは多数
なお、次のメジャーバージョンアップに向け、Unicode 対応化進行中
scsh は Scheme48 の古いバージョンをコアに使っていて、内部的な理由から
Scheme48 の Unicode 対応な現バージョンへの切り替えは非常に困難なため
その予定はまったくないらしい
いずれも、単なるバイト文字列としてなら日本語の読み書きは一応できる程度
何だこのスレ
>>933 ふつうのひとが知ってるなら、タライの権威でしょ。
940 :
デフォルトの名無しさん:2010/01/08(金) 10:27:25
Lisp面白そう
でも色々ありすぎて何から手をつけたら良いのやら
タライは世界的な大発見だろ
Common Lisp でもいいと思うよ。
ここでは歴史的事情で別スレだったりするが。
>>941 私は「対話によるCommon Lisp入門」と言う森北出版から出てる本(ただし絶版)を
古書で買って基本的なところを学んだよ。
「入門Common Lisp」(新納 浩幸著)とか「関数プログラミング」((萩谷昌己著)とか
いろいろパラパラ読んだけど、あれが一番、書き方がユルイ感じで肌に合ったw
いろいろ眺めてみて自分が気に入った入門書を読むのが良いと思う。
Common Lisp入門用の処理系ならばLispboxが一押し。(いろんな処理系がある)
「紫藤のWiki」 「初心者の為のLisp環境」と言うページが参考になる。
Schemeから入りたい場合は良く分からない(経験が無いので)。
8日だけど竹内本出た?
>>946 3月上旬に延期なんだって。書店から連絡があったよ。
やりだしたら徹底的にやる竹内先生のこと、単なる復刻版じゃなくて
あれこれと仕掛けを仕込んでるんで時間がかかってるんじゃないかな。
気長に待つよ。
Schemeの参考書は昔のLISPのだけで、
Scheme関係の本はSICPぐらいしか買ってないな。
ほぼWeb上のリソースと処理系のソース読むだけで済んだ。
Scheme版OnLispみたいなマクロ本が出たら欲しいかも。
竹内はやく消えろ
竹内本、前の版持ってるんだけど、買うべき?
まだ出てもいない本を買うべきかとか
馬鹿か
>>945 > 「対話によるCommon Lisp入門」と言う森北出版から出てる本(ただし絶版)
今は POD で出てるので、それでよければ普通に買える。
Scheme 関連の本は Dybvig の『プログラミング言語 Scheme』くらいしか持ってないな。
SICP は、抽象化とかそういった概念についての本なので
別に読まなくても Scheme プログラムは書ける。
今なら、 Web で手に入るものを参考に勉強日記でも書いてれば
運がよければ誰かがコメントで教えてくれるんじゃないだろうか。
マクロは…… On Lisp のマクロを R6RS マクロに移植して
逆引き Scheme に書いたりすると需要があるのかなあ。
ありがとう3月までのびるのか〜。
徹底的に加筆したのなら嬉しいけど、、
せっかく復刊リクエスト出して予約もしたのに12月中旬と発表したきり
何の情報もない。復刊.comは本当に何をやってるんだろうか。
次からはリクエストだけだして他から買うよもう。
利用するだけ利用して他から買うとか
死ねよカス
復刊.comがカスなんだからしょうがない。
延期した大本が一番カスなわけだが
本当にこの話題好きね
復刊リクエストしなかった奴には売らなくて良いんだよな。
本来は。
復刊リクエストしなかった奴も買うだろうという見込みで復刊を決定する。
リクエストした奴にしか売らないということならば、復刊のハードルが高くなる。
これくらいわからないのか? 馬鹿だな。
馬鹿だから相手にしないほうがいいよw
>>942 Gaucheですか これはSchemeの処理系?ですよね
>>944 その歴史的事情とやらも調べてみることにします
確かに分かれてますね
>>945 参考になります
絶版の本は古本屋であされば見つかったりして...
>>947 可能性が見えてきました
親切な人たちありがとう
>>945 >「紫藤のWiki」 「初心者の為のLisp環境」と言うページが参考になる。
これは紫藤さんが書いているのではなくて別な人が書いてると思うのですが、
その書いている人って信用できるのでしょうか? 偏りがあるような気がするのですが。
>>961 なら自分もリクエストすりゃあ良いだろw
傍観していて復刊決まったら俺にもよこせとか下品な奴w
意味不明
スレ違い
浮動小数点数とか、復刊.comの話の方が盛り上がるよw
麻布卒かよw
今までcだけで書かれてたソフトウェアが少しずつc++に書き換えられてる
squid
とか
lispはcffiだけで大丈夫なんだろうか
cppのインターフェイスが必要な気がする
>>970 C++なら、extern "C"でラッパー書けばいいんじゃない?
不毛なmanglingの地に踏み出すのは賢明じゃないと思う。
コンパイラやバージョンでコロコロ変わるようなものをサポートするのは、
正直、人的資源の無駄だと思う。
>>971 それはC++からCのライブラリ呼ぶ時だよね?
lispのcffiからc++のライブラリ呼ぶのって凄くめんどくさくない?
必要性が出てきてからで良いでしょ。
どうしても今必要なの?。もしそうだったレスで心配ごと言う前に実装してるはず。
>>972 > それはC++からCのライブラリ呼ぶ時だよね?
なんか勘違いしてないか?
>>971 は C++ のラッパーを C で書くって話だと思うんだが。
>>972 >>971 は C++ のライブラリに C でラッパー書いて
CFFI から呼べばいいって言ってるんじゃないの
あと使ったことないけれど、 SWIG は CFFI もサポートしてるみたいだからそれを使うとか。
>>972 C++のABIは無いに等しいから
対応しようとすると地獄を見るぞ
ご自分で好きなだけどうぞ
けっこう変わったりするしな
boost.python
におんぶにだっこすればOK
pythonが終了したら終わりじゃん
そんな簡単な話か?
C++が例外使ってたらどうすんのよ
>>981 LISP側でsetjmpして他所からlongjmpしてくるわけにはいかんのと同じで
C++側で全部捕捉して手渡ししかない
>>981 だから、C++の機能は外に見せないのよ。
クラスもテンプレートも例外も、その他諸々も。
ラッパー部分で捕捉して、エラーコードを返すなり、
errno方式にするなり好きにしてくれ。
次スレどうする? また今の無駄に長いテンプレ貼んの?
全く話題にも上らない処理系がいっぱいあるわりに、
それなりに知名度のある処理系が抜けてたり、かなりぐだぐだだけど。
Shibuya.lispとかGaucheNightとかも、第何回がどうとか、毎回書くの?
もう、テンプレサイト決めて、そこに好きなだけ書けば良くない?
Wikiなら情報の集積地にもなるしさ。
もうあの長いテンプレはWikiまかせでもいいような気がするな
そろそろ
>>1の過去スレ一覧も2以降に移動してくれ
Gaucheがcmakeでコンパイルできるようになることはありますか?
988ので建てに行ってみたが俺のホストでは駄目だった
誰か頼む
乙
えらいすっきりしたなw
ワロタ
乙
ume
\∧_ヘ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴ……!! ,,、,、,,,
/三√ ゚Д゚) / \____________ ,,、,、,,,
/三/| ゚U゚|\ ,,、,、,,, ,,、,、,,,
,,、,、,,, U (:::::::::::) ,,、,、,,,
//三/|三|\ ,,,, ,,、,、,,,
∪ ∪
,, , ,,,, ,,、,、,,, ,,、,、,,,
,,,,, ∧_∧ うまいモナー,,,,, 、 ,,,,,, ,,,,,,,, ,,,,,
,,, ( ´∀`)___,,,,___ ,, ∧_∧ ゲンキニ シテルカナ・・・___,,
/ ̄ ( つ日ヽ ∧_∧ ( ) /
/ (__)) (´∀` ) ( ) ∧_∧∧_∧ / マターリモナー
∧_∧∧_∧ドーゾ (日ノ ) | | | ( ´∀`) ´∀`)
( ´∀`) ´∀`) ((__) ,(_(_) (○)⊂ ) つ日⊂ ) モーナー
―(つ⊂ ) つ⊂ )―――――――――――ヽ|〃(⌒)(⌒) (⌒)(⌒)
(⌒)(⌒) (⌒)(⌒)グーグー
uma
うめ
最近boostもcmake(Cross Platform Make)に変更になったから
きっと便利なんだと思う
埋めますか
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。