08/05/27 10:22:35
そっか、日本語ですねww
全角文字と半角文字を区別できるやつで!
お願いします。
723:デフォルトの名無しさん
08/05/27 11:14:53
>>722
standard-char-p あたりかな。
URLリンク(www.lisp.org)
724:デフォルトの名無しさん
08/05/27 11:26:20
ありがとうございます!がんばってみます^^
725:デフォルトの名無しさん
08/05/27 11:39:44
こんなんだからアンケートの答に全角を強制するとこばかりなのかなぁ…。
726:デフォルトの名無しさん
08/05/28 20:55:44
コードヒョウミタラトオモッタノオレダケ?
727:デフォルトの名無しさん
08/05/29 10:22:29
結果が標準出力に表示されるこの機能の名前を教えてください。
(+ 1 2)
3
728:デフォルトの名無しさん
08/05/29 11:04:44
>>727
出力されるのは単にprint
一連の流れはrepl(read eval print loop)
729:727
08/05/29 11:57:32
>>728
ありがとうございます。
lispの特別な機能だと思っていたんですが、よくよく考えればSQLでもそうだし、勉強になりました。
730:デフォルトの名無しさん
08/05/29 14:00:32
レンタルサーバーにcommon lispをいれるには
自前のlinuxでコンパイルしたbinaryを~/binに転送しちゃえば大丈夫なのでしょうか?
731:デフォルトの名無しさん
08/05/29 14:06:46
レ ン サ バ の 管 理 者 に 聞 け
732:デフォルトの名無しさん
08/05/29 17:52:05
>>730
処理系によってちがうけど、binにバイナリをいれておしまいにはならない。
bin以下に入るのはコアではないからです。どの処理系を入れるにしても
bin とコアを置く場所だけは必要でしょうね。
できればレンタルサーバーが利用しているOSディストリビューションバー
ジョンを聞いたほうがいい。場合によってはlibcのバージョンの違いで動か
ないことがあるので。
733:デフォルトの名無しさん
08/05/30 17:53:50
>>731
あるよ。
以上。
↓次どうぞ
734:デフォルトの名無しさん
08/06/01 10:03:40
|
|
|
└─────.‐┐
. |
∧_∧. |
( ; ) |
( ̄ ̄ ̄ ̄┴-、. |
| ( *←┼─┘
/ / ∧ \
/ / / U\ \
/ / ( ̄) | |\ ( ̄)
/ ( ノ ( | | \ ノ (
⊂- ┘( ) └--┘ ( )
UUUU UUUU
735:デフォルトの名無しさん
08/06/02 13:37:05
lispをtechnoratiでしらべてたら、ホモセクシャルラッパーの動画につながってしまった。
そうゆうなまえのひとがいるんだって。
youtubeでlispを検索した結果をどうぞ
URLリンク(www.youtube.com)
736:デフォルトの名無しさん
08/06/02 13:41:40
なんだとこの舌足らずな奴め
自分はslimeの紹介動画をみてからlisp使うようになったヘタレです。
737:デフォルトの名無しさん
08/06/02 13:45:45
URLリンク(www.guba.com)
これね
738:デフォルトの名無しさん
08/06/02 21:20:25
URLリンク(clojure.sourceforge.net)
739:デフォルトの名無しさん
08/06/05 13:12:20
URLリンク(pastebin.windy.cx)
shcemeはあるのにcommon lispはなかった
まあschemeで代用すればいいんだろうけど
740:デフォルトの名無しさん
08/06/05 13:36:42
Ruby on Rail
と
URLリンク(www.cliki.net)
が似てるのだけど、どっちが便利なのだろう
webを検索すると出てくるコードの量はrubyが多い
741:367
08/06/05 22:25:25
(他スレで聞いてもNGだったもので、…)
Lispって人工知能とかで使われたりしてるって
よく本とかに書いてあるのをみるんですが、
何が(どこが)人工知能にむいているんでしょうか?
逆に、他の言語だと何が(どこが)向いていないのでしょうか?
742:デフォルトの名無しさん
08/06/05 22:36:42
コンパイラスクリプトエンジンスレだな
あれだけ人を馬鹿にしておいてよく聞けたものだな
743:デフォルトの名無しさん
08/06/05 22:47:43
そっちのスレを見てきたがワラタ
・本が古い
・著者の知識が古い
・未知の分野への適性が高い事の実例として人工知能を挙げた
のどれかジャマイカ
744:デフォルトの名無しさん
08/06/05 23:02:59
>741
人工知能と言う概念(分野)自体が今や、廃れている。
と言うか昔、人工知能の対象とされた分野は(ある程度、成熟すれば)
それぞれが既存の技法を持った固有の分野となる。
つまり「人工知能」と言う概念自体が幻(見果てぬ夢)なんだよ。
745:デフォルトの名無しさん
08/06/05 23:13:23
その昔、Lispが人工知能に向いていると言われていたのは
記号処理だけで「人工知能」的な事が可能になると言う誤解
(あるいは願望)が蔓延してた頃の話だな。
その後、フレーム問題だ、記号着地問題だ、で記号処理だけでは
全く不十分な事が分かって、今に至る。
746:デフォルトの名無しさん
08/06/05 23:37:06
て言うか、比較対象が FORTRAN とか COBOL なんだから、そもそも
文字列を処理するだけでも、LISP 圧勝 と言う時代だったわけで。
747:デフォルトの名無しさん
08/06/05 23:46:41
なんだ、そんな古い時代の比較の話なのか?と言いつつ
「Lispが人工知能に向いている」と言う文章ひとつで
たっぷり四半世紀(25年)以上昔の匂いがしてくるw。
当時からPrologだのSnobolだの他にもいろいろ有ったからな。
748:デフォルトの名無しさん
08/06/05 23:50:32
Lispは人工知能向け言語
Lispはインタープリタ用言語
聞き齧りだけで文章書いてる人によくある間違い
749:デフォルトの名無しさん
08/06/06 00:52:35
>>747
> たっぷり四半世紀(25年)以上昔の匂いがしてくるw。
既に半世紀分の匂いがついてるんだが。
Prolog とか Snobol はだいぶ後の話。
750:デフォルトの名無しさん
08/06/06 01:13:25
>749
うん、私がLispを、と言うかその他コンピュータ言語と
言うものの存在を知ったのがその頃なもんでね。
751:デフォルトの名無しさん
08/06/06 01:18:34
>750
和田先生ですか?お疲れです!
752:デフォルトの名無しさん
08/06/06 01:19:52
SICPの4章のプログラムを動かしたときは感動があった。
でもNorvigのAI本を読んだときは良本とは思ったけど感動はしなかった。
やっぱり時代によって評価って変わってくると思う。
753:デフォルトの名無しさん
08/06/06 05:17:40
>>746
当時も今も、Lispは文字列処理はあまりしてない。
SNOBOL4は良く使われていたが。今はperlかな。
754:デフォルトの名無しさん
08/06/06 05:23:30
Wintonの「Artificial Intelligence」、
安西祐一郎他「LISPで学ぶ認知心理学」、
"Artificial Intelligence"はマッカーシーの造語、
SHRDLUはLispで書かれていた、
あたりが大きかったと思う。> 人工知能言語
755:デフォルトの名無しさん
08/06/06 08:59:22
maximaはlisp
756:デフォルトの名無しさん
08/06/06 14:06:53
文字列処理というとemacsが思い浮かぶ
757:デフォルトの名無しさん
08/06/06 14:09:04
>>750
なんだ、お前の人生の匂いか。次から主語は明確にしてくれ。
758:デフォルトの名無しさん
08/06/06 21:07:02
Dick Gabrielは、
743の
・未知の分野への適性が高い事の実例として人工知能を挙げた
ってどっかでいってた記憶がある。
Paul Grahamも似たようなこといってるよね。
つまり、AIとかはどうでも良かったりするのかもしれない。
759:デフォルトの名無しさん
08/06/06 22:54:50
>>753
> 当時も今も、Lispは文字列処理はあまりしてない。
別に誰も Lisp で文字列処理をガンガンやってるなんて書いてないんだが。
レスする前に、文章をよく読む訓練した方がいいと思うよ。
760:759
08/06/07 02:03:37
アンカーミス
×>>753
○>>759
761:デフォルトの名無しさん
08/06/07 02:44:45
>>759
別に誰も、誰かが「Lisp で文字列処理をガンガンやってると書いた」なんて書いてないと思うよ。
762:デフォルトの名無しさん
08/06/07 02:49:46
結局 >>753 は >>746 に何を伝えたかったのだろう
あまり話が繋がっている様には見えないけど…
763:デフォルトの名無しさん
08/06/07 02:58:31
例え、話がつながってなくてもそれぞれが言いたい事を言う。
それが2ch(女性の世間話みたいなもん)。
764:デフォルトの名無しさん
08/06/07 03:02:08
つう事で、真意を掘り起こしても何も無いから次へ行こうぜって事で良いよね?
765:デフォルトの名無しさん
08/06/07 08:44:26
次に行く先が無い
766:741
08/06/07 11:18:17
>>742
いろいろ煽り書いてたのは私ではありません…(汗
767:741
08/06/07 11:32:45
皆さんいろいろとありがとうございました。
まとめると、
(1)当時、未知の分野への適性が高い実例として人工知能を挙げた
(2)ただし、肝心の「人工知能」自体は現在でも実現困難である
こんなところでしょうか?
768:デフォルトの名無しさん
08/06/07 13:54:58
>>760-762
夜中に人の自演までしてご苦労さん。
> 別に誰も、誰かが「Lisp で文字列処理をガンガンやってると書いた」
> なんて書いてないと思うよ。
たったら、なんで >>753 へのレスで「Lispは文字列処理はあまりしてない」
なんて書くんだ?
> あまり話が繋がっている様には見えないけど…
自分が理解できないレスはスルーしたら?
文章よく読む訓練しても無駄な奴もいるからさ。(w
769:デフォルトの名無しさん
08/06/07 14:03:37
こりゃダメだ
↓次の話題どぞー
770:デフォルトの名無しさん
08/06/07 14:47:39
OnLispを読んで、少し大きいプログラムを書いてみたくなったんですが
Windows厨にはどの処理系がおすすめですか
今はxyzzyでちょろちょろプログラムしてみてます。
771:デフォルトの名無しさん
08/06/07 15:01:05
sbclかclisp+emacs+slime こっちは最初の設定が面倒かもしれない
ACLのExpress版(要登録) できが良すぎて製品版が欲しくなってもしらない。
772:デフォルトの名無しさん
08/06/07 15:09:21
windowsなら
xyzzyで学習してるのもいいと思うよ。ただし、common lisp完全準拠ではない。
準拠を考えるならeclipse+cupsか商用系(acl lispworks)あたりが導入が一番楽じゃないか。
本格的に使うなら、仮想環境でもいいからlinux系を導入してそこで構築する方が楽だよ。
windowsはcommon lispのプログラミングに向いてないよ。
773:デフォルトの名無しさん
08/06/07 15:21:16
一番良さそうなのは、xyzzyを国際化して、ユーザーを増やすことだな。そうすれば、
emacsからslimeを移植する人は出てくると思うよ。そうすると、clispだろうがsbclだろうが
導入はグッと楽になるだろうな。
xyzzyのライセンスはどうなってるのか知らないけど、あれが日本だけで収まってるのは
もったいないな。ということは思う。
774:770
08/06/07 16:09:23
色々ありがとうございます。
比較的楽に環境が構築したいというのもあり
お二方おすすめのACLについて、Express版いれてみようかなと思います。
WindowsはLISP向きでないというのは、Win厨にはちとショックですが;
775:デフォルトの名無しさん
08/06/07 17:00:45
>>773
先日ソースが公開されましたから、あとは神を待つだけでしょうか。
776:デフォルトの名無しさん
08/06/07 19:46:34
>>760
このレスって何なんですか?
metacircular レス?
777:デフォルトの名無しさん
08/06/07 19:48:25
>>774
> WindowsはLISP向きでない
なことはないから安心しる
ただ処理系は少ない.UNIXよりは。
778:デフォルトの名無しさん
08/06/07 19:54:37
>>777
処理系だけの問題じゃないのよ。ちょっと拡張してパッケージを使おうとするときに
辛いのよ。
779:デフォルトの名無しさん
08/06/07 20:08:43
URLリンク(www.lingr.com) 勉強会をかいさいしたはるで
780:デフォルトの名無しさん
08/06/07 20:24:07
>>778
禿同。でも業務仕様はどうにもならんね。世界中が一斉にUNIX移行するか、
WindowsがMacみたいにUNIXへ移行するしかないわけで。
781:デフォルトの名無しさん
08/06/07 20:29:25
>>778
例えば?
782:デフォルトの名無しさん
08/06/07 20:45:02
>>781
具体例はないけど外部ライブラリを呼ぶところかな。ffiがらみのライブラリは特に頭
を痛めると思うよ。対策がされているものは大丈夫だろうけど。グラフィックまわりな
んても商用なら先に揃ってるようだから大丈夫だろうがな。
783:デフォルトの名無しさん
08/06/07 21:14:22
>>781
asdf-installでtarにはめられた
784:デフォルトの名無しさん
08/06/08 04:37:33
こんなのあるんだね。しらなかった。
URLリンク(examples.franz.com)
785:デフォルトの名無しさん
08/06/08 04:48:33
つ URLリンク(www.cs.cmu.edu)
786:デフォルトの名無しさん
08/06/08 06:23:48
おまいらって頭いいよな。
やっぱ学校の勉強とかもできたん?
787:デフォルトの名無しさん
08/06/08 09:21:22
俺はできなかったよ。頭良い連中はSchemeとかが好きなんじゃねーの、みたいな
788:デフォルトの名無しさん
08/06/08 11:15:35
興味のあることしかしないので異端児扱いされますた‥‥‥。
789:786
08/06/08 13:14:57
>>787
そっか。
学校の勉強ができなくても、なんとかLispを習得できるんかな?
・・・頑張れば。
今、Paul Grahamの言葉を信じて苦行中(笑)。
なかなか身に付かん。
>>788
たしかに・・・
もう、凡人には踏み込めない領域かも。
仕事以外でプログラムやってるだけで、変人扱いされるよな?
790:デフォルトの名無しさん
08/06/08 13:32:17
「おまえもうちょっと外に出る趣味を持てよ」と言われた俺がきますた
791:デフォルトの名無しさん
08/06/08 14:17:37
>>787
ヲイヲイ、両方使えるだろJK
792:デフォルトの名無しさん
08/06/08 14:58:00
>>789
> 仕事以外でプログラムやってるだけで、変人扱いされるよな?
変人扱いされるぐらいに認知度が上がってきたからまだマシ、
以前は「なんかわけわからんことやってる暗い奴等」でひとくく
りだったし。
793:デフォルトの名無しさん
08/06/08 15:46:53
>>792
>変人扱いされるぐらいに認知度が上がってきたからまだマシ、
なぜか泣ける。
プログラミングが、せめてパズルと同じくらい市民権を得てくれたら・・・
と切に願う。
794:デフォルトの名無しさん
08/06/08 16:15:17
さっき秋葉で殺されたじいちゃんもしかしてリスパーでない?
795:デフォルトの名無しさん
08/06/08 16:31:00
URLリンク(www.naklab.k.dendai.ac.jp)
名前が同じだけど、どうなんだろうかね・・・。
796:デフォルトの名無しさん
08/06/08 16:34:42
そういう話を聴くと何か切なくなるな…
797:デフォルトの名無しさん
08/06/08 17:05:11
>>795
yahooで調べたけど、微妙に名前が違ったよ。
798:デフォルトの名無しさん
08/06/08 19:10:23
先輩方,
おすすめのCommon Lisp入門の方法を教えてください。
入門書にあたるようなものはAmazonでも見当たらないようですし
(ANSI Common Lispは評価が悪いので心配です)
OnLispはまだ自分には早いようです。
今はインタプリタで関数を作ってみたりしているのですが
いまいち実力がつきません
先輩方のようにLispで本格的なアプリケーション開発を始められるようなレベルになるための
過程をご教授願いたいのですが。
よろしくお願いします。
799:デフォルトの名無しさん
08/06/08 19:17:53
ちょっと値段は張るが、
WinstonのLisp(3rd edition)を読む事をおすすめする。
800:デフォルトの名無しさん
08/06/08 19:26:29
>>798
ANSI Common Lispは無駄がない良い本だよ。ただ、情報が濃すぎるから
敷居が高くなるところがあるかもしれない。もう一つはloop嫌いがそのまま
反映されているから、実際に作られてるコードをみたときにloopを多く使わ
れるのをみると嫌悪感を持ち兼ねない。その点だけわきまえて、3ヶ月で
12章を終わらすペースでやればよいよ。
おっしゃるようにon LispはANSIで難しいという人には手を出す本ではないよ。
Winstonっていいかときかれるとちょっと古いような気がする。winstonの本の
当時はcarよりfirstを多用してた時期らしいです。和書は図書館で取り寄せでも
すれば借りられるでしょう。
801:デフォルトの名無しさん
08/06/08 21:01:58
「 初めての人のためのLISP」 ってAmazonでは評判よさそうだがどうなんだろう?
絶版で古本にけっこうな値もついてるようだが..
802:デフォルトの名無しさん
08/06/08 21:10:40
良い本だが、どうしてもって内容ではない。面白いが。
運良く古本屋で見かけたら即ゲットだが、プレミア価格なら買わない。
俺の基準だとそんなところ。
803:デフォルトの名無しさん
08/06/08 21:24:44
ANSI Common Lisp どこが悪いの? いいと思うけどなあ。
足りない部分はあるにせよ。そこはPCL読むと丁度よい。
804:デフォルトの名無しさん
08/06/08 22:47:38
つか、lispでは実用性がないから
どの本読んでもあまりかわらんだろ?
読みやすければ、それでOK
805:デフォルトの名無しさん
08/06/08 23:09:26
>>804
>>798以上の経験を持っているように見えない人間がアドバイスしているように
みえるコメントだな。>>798を混乱させるだけじゃないか?
806:デフォルトの名無しさん
08/06/08 23:18:39
>>799-805
ありがとうございます。
ANSI CommnLispを書店でチェックしてみて自分に合うようでしたら
購入してみます。
807:デフォルトの名無しさん
08/06/08 23:29:43
黒田さんおすすめのPAIPはどうなの?
808:デフォルトの名無しさん
08/06/08 23:33:35
Peter Norvig の PAIP とSeibel の Practicalが最強でしょ。
ANSIとかwinstonは悪くないけどちょっと古いから2,3冊目にどうぞ。
809:デフォルトの名無しさん
08/06/08 23:35:14
ANSI CommnLispの日本語版が一番安価に入手できる。
810:デフォルトの名無しさん
08/06/09 00:04:10
あれ?とおもったからしらべたけど、
PAIPは1992でANSIは1996だったよ。PCLは2005かな。
811:デフォルトの名無しさん
08/06/09 00:05:25
>>809
あれ難しいわw
つか、Lisp自体が難しいんだろうけど、
812:デフォルトの名無しさん
08/06/09 00:33:57
>>810
内容が。。。
813:デフォルトの名無しさん
08/06/09 00:36:27
>>811
Lispはコード量が少なくて済む分、一行の重みが濃密だからね。
そのかわり、一度臨界点を越えると生産性が高い。
814:デフォルトの名無しさん
08/06/09 00:37:12
>>813
まあ、関数型はみんなそういえるかな。
815:デフォルトの名無しさん
08/06/09 00:44:20
>>813
可読性はどうですか?
修行が足りないせいか、めちゃくちゃ読みにくいです(涙)。
816:デフォルトの名無しさん
08/06/09 01:00:36
>>815
はじめて最初の1~2ヶ月はバックグラウンド次第ですごく混乱します。
この辺はJava/C++/C組が挫折するところ。これらのグループよりプログラミングバージン
の方が上達が速いかもしれません。
当初のとっつきにくさを乗り越えると、単純な法則のもとでプログラムがかかかれている
のがわかるから、それから理解が深くなってくるよ。
もっとも、自然言語学習と同じでボキャブラリを増やす過程は苦しいかな。
わからんでもいいからとりあえずなれることを重視して続けていけば良い。
感覚的な理解ってのは論理的な理解より時間がかかるんで、そのギャップが多いときは
どうしても辛くなりがちだから。
817:デフォルトの名無しさん
08/06/09 01:09:03
>>816
アドバイス、ありがとうございます。
僕は、まさにその通りのバックグランドを持ってて
再帰に少し慣れてきたかなぁ・・・って段階です。
ちょっと不安が解消されました。
ところで、Lispは可読性が低くないという解釈で良いですか?
818:デフォルトの名無しさん
08/06/09 01:19:26
>>817
s式の括弧を読んでインデントをサポートしてくれるエディタとペアならそれほど苦痛じゃないよ。
819:デフォルトの名無しさん
08/06/09 01:30:23
>>818
インデントの問題はないので、やはりまだ修行が足りないだけですね。
精進します。
ありがとうございます。
820:デフォルトの名無しさん
08/06/09 02:45:34
C++のvirtual, const, explicit, throwsがどうのってのよりは
よほど学びやすいと思うけどな...
Boostのソースとかもう意味不明だし
821:デフォルトの名無しさん
08/06/09 03:37:40
読みやすくはねえけど、意味不明ってほどか?
822:デフォルトの名無しさん
08/06/09 09:42:30
>>821
まじでか。
boost/iterator/*の怒涛のコメント読むだけで知恵熱出そうだが。
823:デフォルトの名無しさん
08/06/09 12:37:47
C++のテンプレやマクロはプログラムに密に作用するから
ブラックボックスとして使いにくいんだよな。
他のテンプレと競合したりする割に、やけにパーツ分割にこだわるし。
思想についていけない。
824:デフォルトの名無しさん
08/06/09 12:43:14
boost lambda は確かに動くなぁと確かめたきりで実戦で使った記憶が無い。
825:デフォルトの名無しさん
08/06/09 14:51:53
boostはvisual studio必須だと思った
lisp の自動インデントみたいなもの
826:デフォルトの名無しさん
08/06/09 17:32:03
リストの各要素を足す関数はどのように作れば良いですか
例えばxが'(1 2 3 4)だとすると
(lsadd x)の様にして>10とかえってくるような関数を作りたいのです。
よろしくお願いします。
827:デフォルトの名無しさん
08/06/09 17:57:57
applyという機能を見つけて作成することができました
CommonLispに搭載されている関数はどこで確認できるのでしょうか
828:デフォルトの名無しさん
08/06/09 18:00:43
Lisp ってあの括弧がなぁ~
インデントで、なんとかならんの?
829:デフォルトの名無しさん
08/06/09 18:10:57
>>827
(apropos シンボル)でひっかけてみな
あとはHyperSpecをググって
830:デフォルトの名無しさん
08/06/09 18:38:24
>>828
式の解析、マクロを生成するマクロでは、インデントのみだと扱いが難しい。
AST(抽象構文木)と同様の構造だから、いろいろ実験できるんじゃないか?
831:デフォルトの名無しさん
08/06/09 18:39:31
Lisp のコードを読む分には括弧は無視していい。
ちゃんとインデントつけて綺麗に書けばね。
で、書く時はエディタに助けてもらえばいい。
832:デフォルトの名無しさん
08/06/09 20:52:13
>>828
インデントベースのlispと言う物はschemeの規格に既にあるが。
833:デフォルトの名無しさん
08/06/09 21:06:32
>>831
それは良く聞くんだけど、実際は書きながらエラーがでない程度に
間違ってしまうこともあるし、
読むときも、しっかりと読んでおかないと、対応関係がインデントと
微妙にずれたコードもすくなからず存在する。
834:デフォルトの名無しさん
08/06/09 21:08:59
>>833
> 読むときも、しっかりと読んでおかないと、対応関係がインデントと
> 微妙にずれたコードもすくなからず存在する。
読むときもエディタで一度インデントしなおせばいいんじゃ?
835:デフォルトの名無しさん
08/06/09 21:58:40
与えられた「変なインデントのソース」を、何もいじらずそのまま読む必要は無いよね。
これはLispに限らず、C系でも「整形しなきゃ読めねえよ!」なソースは、多かれ少なかれ
自分でインデントいじって読むと思う。
836:デフォルトの名無しさん
08/06/09 22:08:17
おい、変態インデントはここでは禁句だぞw
837:デフォルトの名無しさん
08/06/09 23:29:14
Googleなどで探してみたのですが
解決できないのでよろしくお願いします。
ある数の約数をリストにして出力してくれる関数はどのように
作れば良いのでしょうか?
838:デフォルトの名無しさん
08/06/10 00:06:43
宿題丸投げの季節か……
839:デフォルトの名無しさん
08/06/10 00:12:41
>>838
すいません
宿題ではなくて作業自動化のために自主作成しているアプリケーションの
一部なのですが・・・・
まだLisp脳になっていないようで考え方がいまいちつかめないのです
840:デフォルトの名無しさん
08/06/10 01:12:56
>839
何にしてもLisp以前の問題
数学勉強し直せ
841:デフォルトの名無しさん
08/06/10 02:03:39
>>839
「自分のコードでは遅くて使い物にならない」ならまだしも、
「どのように作ればいいか?」は馬鹿にされても仕方ないんじゃないかな。
お前さん、ある数の約数を得たいとき、どういう風に計算する?
842:デフォルトの名無しさん
08/06/10 02:19:53
>>841
初心者さんが最初に感覚を掴めないってのはざらにあるから、バカにしないほうがいいよ。
>>839
感覚が掴めないのはなれるしかないから。最初は大きなものを作ろうとするより、ちいさな
ユーティリティーでいいよ。とかく経験をつんでいけば大丈夫だから。
843:デフォルトの名無しさん
08/06/10 02:34:13
↑ばーかばーか
844:デフォルトの名無しさん
08/06/10 03:02:05
>>839
Cでも何でもいい、まずお前さんが使える言語で書いてみたら?
それをLispに移植すればいいんじゃない
Lispは手続き型言語みたいに書くこともできるんだし
Lispっぽく書くのはその後でもいいと思うよ
845:デフォルトの名無しさん
08/06/10 03:18:38
>>842
俺自身は馬鹿にしないけど、>>840とかへのフォローもできない。
約数を求める数学的な知識があって、
Lispの入門書とか、マニュアルとかがあって、
さらにGoogleまで使えるなら、効率が悪かろうが、動かなかろうが、
自分なりの物くらいは作れると思うんだよ。
プログラミング初心者とかなら分かるんだけど、
そんな人間が「Lisp脳になっていない」とか言うか?
関数的な書き方が分からない、とかなら分かるんだけど。
846:デフォルトの名無しさん
08/06/10 04:39:15
>>239
PerlとGaucheで書いてみた
sub yakusuu {
my $x=shift;
my @y;
for (my $i=2;$i<$x;$i++) {
if (($x % $i)==0) {push @y,$i}
}
return @y;
}
print yakusuu(100);
sub yakusuu2 {
my $x=shift;
return grep {(($x % $_)==0) ? $_ : 0} (2..$x-1);
}
print yakusuu2(100);
847:デフォルトの名無しさん
08/06/10 04:39:42
こっちはGauche
(define (yakusuu x)
(let ((y ()))
(do ((i 2 (+ i 1)))
((>= i x))
(if (= (remainder x i) 0) (push! y i)))
(reverse y)
)
)
(print (yakusuu 100))
(use srfi-1)
(define (yakusuu2 x)
(filter (lambda (a) (if (= (remainder x a) 0) a #f)) (iota (- x 2) 2))
)
(print (yakusuu2 100))
どっちも似たような感じになってるのが分かると思う
あんまり変に考えないで気楽にLispに触れるのがいいよ
そのうち馴れるさ
yakusuu2はおまけですw
Lisp脳ってたぶんこんな感じのを想像したんじゃないかな?
848:デフォルトの名無しさん
08/06/10 04:41:49
239ってなんだよorz
>>846の239は839な
849:デフォルトの名無しさん
08/06/10 05:07:31
「Paul と Graham で書いてみた」に見えた
寝よ…
850:デフォルトの名無しさん
08/06/10 05:25:16
あえてコモンリスプ以外で書いたのですね
わかります
851:デフォルトの名無しさん
08/06/10 05:45:51
>>847
SRFI-42マジオススメ。
852:デフォルトの名無しさん
08/06/10 06:34:36
>>840-851
ありがとうございます。
C言語では
#include <stdio.h>
int main(void){
int a,b=1;
printf("start:");
scanf("%d",&a);
while(b<=a){
if(a%b==0){
printf("%d¥n",b);
b=b+1;
}
else{
b=b+1;
}
}
return 0;
}
となりました。
「Lisp脳」という言葉を使ったのは
偉大なLispHackerの皆さんは意外なそして美しいコードで
いつも解決しているので、何か簡潔な方法が有るのではと思い使いました。
853:デフォルトの名無しさん
08/06/10 07:44:36
>>852
それは「早すぎる最適化」かもしれない
より良い方法を探すのは、必要に迫られてからでよい
それに、探し出すよりも偶然見つかることのほうが多い
854:デフォルトの名無しさん
08/06/10 09:41:37
(defun yakusuu (n)
(let ((head '()) (tail '()))
(loop for i from 1 to (sqrt n)
if (zerop (mod n i)) do
(push i head)
(push (/ n i) tail))
(nreconc (if (= (car head) (car tail)) (cdr head) head)
tail)))
855:デフォルトの名無しさん
08/06/10 10:16:09
mod関数はCommonLispでも使えるんですね!!
余りを出す関数があると自力でも出来そうです
856:855
08/06/10 17:35:22
できました
皆さん本当にありがとうございました!!
(defun numlist (x)
(let ((nlist '()) (i 1))
(loop (if (> i x) (return (reverse nlist))
(if (= (mod x i) 0)
(progn (push i nlist) (incf i 1))
(incf i 1))))))
857:デフォルトの名無しさん
08/06/10 18:15:28
>>856
よかったな。これからもcommon lispをかわいがってやってください。
甘えすぎは非難の元だけど、分からなかったらいつでもおいでね。
858:デフォルトの名無しさん
08/06/10 21:30:08
>>856-857
名作みたいな展開。
859:デフォルトの名無しさん
08/06/11 07:32:31
WindowsでCLISPをやりたいと思って、
EclipseでCUSPをいれてちょこちょことやってるんだけど、
GUIとか、もうちょっとDLLを呼び出して、DirectXを操作とかとなると大変?
GUIだとなんか幾つかそれっぽいのが見つかるんだけど(MacOSXとかLinux・Unixが目立つが)
DLLを呼び出すのは無理??
860:入ってしまえば天国なんだね…。
08/06/11 11:01:38
LISPに最初から挫折しそうになって、あちこち見ています。
使用者例が少なすぎて発想パターンを断言できないけど、
思考‐発想タイミングから言えば基本的に敷居「だけ」が
高い言語のようだし、初心者を甘やかしても良さそう。
ところで、この言語で言えば印欧語族のロシア語みたいな
性格を見て今、ぐぐってみたんだが…ちょw大当たりww
これは…すごいのはキャラが立ってるLISPだなwww
これが、印欧語族の中では英語的なC言語系だと…
ぐぐってみた…ごめん、もう何も言う事ないwwww
(英語は「敬語」を始め、高度習得が困難です。)
対照的すぐる…(もうちょいがんばれば、あるいは…?
861:デフォルトの名無しさん
08/06/11 11:15:00
独り言はチラシの裏かnotepad.exeに書けよ。
862:デフォルトの名無しさん
08/06/11 11:17:59
というかどう見てもbotです
本当にありがとうございました
863:デフォルトの名無しさん
08/06/11 14:37:43
英語とかロシア語に例えるから挫折しそうになるんじゃないのかなw
864:デフォルトの名無しさん
08/06/11 16:17:05
>>859
cffiではdllをよべるみたいだが、詳しくはonjoさんところみてくれ。
URLリンク(lispuser.net)
865:デフォルトの名無しさん
08/06/11 16:50:56
Lispは素晴らしい言語だと思うのですが
Lispが生き残ってるのはEmacsのおかげ
実用には耐えないが一部ハッカーの趣味で使われている
など否定的な意見のみが見られてイマイチ本気になれません
Lispで作られたアプリケーションを教えていただけないでしょうか
866:デフォルトの名無しさん
08/06/11 17:04:59
無理に使う必要はないよ。
アプリは↓この辺ね。
URLリンク(wiki.alu.org)
それから独断で単純に割り切って無視しようとするのは、
プログラマとしてはそんな性格だよ。
よいところはどんどん吸収するようにしないと頭が固くなる。
867:デフォルトの名無しさん
08/06/11 17:19:56
>>865
emacs
868:デフォルトの名無しさん
08/06/11 17:38:58
>>866
ありがとうございます。
自分としては気に入っているのですが
周りがそんな事をいってくるので
ちなみにLispが向いている方面を教えてください
869:デフォルトの名無しさん
08/06/11 17:56:06
ご自分の発言を良くお読み頂き、
用法・用量を守って、正しくご使用下さい。
870:865
08/06/11 18:19:03
>>869
>Lispは素晴らしい言語だと思うのですが
これが僕の意見
>Lispが生き残ってるのはEmacsのおかげ
>実用には耐えないが一部ハッカーの趣味で使われている
これが周りの意見
>イマイチ本気になれません
Lispいいよねって周りにいうと
「やめとけよ役に立たない」とかいわれるので・・・
871:デフォルトの名無しさん
08/06/11 18:27:46
>>868
お前の人生は何に向いてますか?
>>870
Lispに向いているものをやるもんじゃなくて
解きたい問題をLispで解くもんだ。
フレームワークについての話ならともかく
汎用言語はみんなそんなもんだ。
おまえの人生や周りの事情なんか知らん。
872:865
08/06/11 18:33:31
>>871
ありがとうございます。
たとえば望んでいたreplyはLispでMacOSXで動作するGUI動画再生ソフトは
作りづらいとおもうのですが
そんな感じでどちらかというとこんな感じのを作るときには
苦労するよというようなものだったのです
すいませんでした
873:デフォルトの名無しさん
08/06/11 18:38:08
自分で良い物を判断できないってのは、現代の病なのか?
874:デフォルトの名無しさん
08/06/11 18:51:39
>>872
>MacOSXで動作するGUI
ここ何か意味あるの?
Mac OS X 上の Lisp 環境は他のプラットフォームと遜色ないし、
Cocoa を呼び出すのも他の言語に比べて難しいとは思わないけど。
875:デフォルトの名無しさん
08/06/11 19:16:43
ぅぁ…半分寝てた時の文だw
ときどきイルカ状態になるんだ…orz
(特定能力だけ寝てる。脳内血行が偏る珍体質。
血流検査結果見たら昔の級友は爆笑&納得)
吊って来る… ああ、LISPって論理綺麗だな…
876:デフォルトの名無しさん
08/06/11 19:33:21
病院行け。
877:デフォルトの名無しさん
08/06/11 19:44:20
自分が良いと思っても周りがそうでないならばそれに迎合してしまうおれはチキンorz
878:デフォルトの名無しさん
08/06/11 19:47:34
>ぅぁ…半分寝てた時の文だw
責任転嫁がお上手ですね。
その調子で残りの人生も済むといいね。
879:デフォルトの名無しさん
08/06/11 19:54:32
>>872
mcl系をしらべたらいい。最近フリーになったし。また、
closure cl(旧openMCL)はMACのGUIに合わせてるよ。
880:859 [・∀・]
08/06/11 20:05:25
>>864さん ありがとうございました。
これから、ちょっとづつ弄くって勉強してみます。
881:デフォルトの名無しさん
08/06/11 20:12:00
>>875
スレリンク(tech板:662-666番)
眠い時に書きまくるなよ。
882:デフォルトの名無しさん
08/06/11 21:47:51
>>875
そのレスも半分寝てるようだな
883:デフォルトの名無しさん
08/06/11 22:13:57
>>875
その特異能力を生かして、普通のやつらの斜め上を行ってください。
きみならできる。
884:デフォルトの名無しさん
08/06/11 22:31:41
>>883
ナナメかよ!
885:865
08/06/11 23:15:16
>876-884
なんだか皆さんの雰囲気をみだしてしまったようですいません
なんだか気になるので一応かいておきますが>>865≠>>875ですよ
886:デフォルトの名無しさん
08/06/12 22:14:13
URLリンク(www.bk1.jp)
Practical Common Lispの日本語版がとうとうでるみたいだね。原著の
評判はかなりいいので楽しみですね。
今は洋書の値段も上昇ぎみだって時だから、5000円って高価だけど
和書のほうが易くすみそうですね。
個人的には原著を持ってるのでかわないけど、訳が素晴らしければ
おすすめできますよ。でもね。なまえをみてonjoさん(lispuse.netの中
の人)でしょ。それなら予約しても大丈夫だと思う。
887:デフォルトの名無しさん
08/06/12 22:17:02
訳者も出版社も勇気あるなあ
モニタに向かってPDFで読むの好きじゃないから出たら買わせてもらうよ
888:デフォルトの名無しさん
08/06/12 23:12:11
訳書のタイトルは『実用Common Lisp』になるのかな、と思ってたけど、違ってたか。
889:デフォルトの名無しさん
08/06/12 23:23:41
表紙が心配だな
890:デフォルトの名無しさん
08/06/12 23:31:58
まだ翻訳作業中?らしいんだが来月ってマジか?
891:デフォルトの名無しさん
08/06/12 23:43:13
Schemeと違って教科書採用もあてにできないし、数がでないから高いんだろうな…。
892:デフォルトの名無しさん
08/06/12 23:49:45
サイズは書いてないけど、原書の太さを考えるとそこそこの太さになるんじゃないか?
893:デフォルトの名無しさん
08/06/13 00:45:05
原書が昨日届いたばかりだ。
894:865
08/06/13 20:01:45
CommonLispで使用できるライブラリはどこで確認できるのでしょうか
895:デフォルトの名無しさん
08/06/13 20:25:20
aproposとかdescribeの事?
それともHyperspecの方?
プロダクト探すんだったらclikiとか?
896:デフォルトの名無しさん
08/06/13 20:58:15
>>895
回答ありがとうございます。
現状では関数を羽で作っているだけなので
これからCommonLispで本格的にアプリケーションを作るにあたり
利用できるライブラリは利用する方が便利ですし、
ライブラリのソースコードをみて学習することで自分の学習にもなりますので
下さったページで学んでみたいと思います。
ありがとうございました。
897:デフォルトの名無しさん
08/06/14 13:17:23
「実践Common Lisp」の出版日は7月何日なんだろう?
898:デフォルトの名無しさん
08/06/17 00:25:52
timeマクロで,関数単位でベンチが取れますが.
値はprintで表示されてしまいますよね.
これをプログラムの中に取り込んで加工したいのですが,その場合
どうすればいいのでしょうか?
899:デフォルトの名無しさん
08/06/17 02:38:53
printを再定義すればおk
900:デフォルトの名無しさん
08/06/17 04:14:40
*standard-output*に何か別のストリームつっこんで取り出しちゃえば?
901:デフォルトの名無しさん
08/06/17 07:19:49
time の結果なら
(with-output-to-string (*trace-output*) (time ...))
print した値なら
(with-output-to-string (*standard-output*) (time ...))
でどうだろう。
902:デフォルトの名無しさん
08/06/19 22:01:53
マクロで(newaddres x y z)と入力すると
(setf (get 'x 'y) 'z)と属性リストに代入することができるようにする
マクロはどのように実現すれば良いのでしょうか
903:デフォルトの名無しさん
08/06/19 22:24:32
(defmacro newaddres (x y z) `(setf (get ',x ',y) ',z))
だが、本当にあなたがやりたい事はマクロが必要なのかな?
(defun f (x y z) (setf (get x y) z))
でもいいんじゃないの?
904:デフォルトの名無しさん
08/06/19 23:11:17
>>903
>(defmacro newaddres (x y z) `(setf (get ',x ',y) ',z))
ありがとうございます。
',の部分がわからなかったので助かりました。
>(defun newaddres (name title contents) (setf (get name title) contents))
としたのですが
定義した後(newaddres tanaka live yokohama)とするとTANAKA has no value と言うエラーが出てしまいます。
905:デフォルトの名無しさん
08/06/20 01:23:30
それだと、tanakaというシンボルを評価した結果 == 未定義な変数TANKAを参照しちゃう。評価を止めるには、'クォートをつける。
(newaddres 'tanaka 'live 'yokohama)
クォートするのが面倒だって?だが、評価を ' で ON/OFF できるっつーことはだ、↓のようにできるってこと。
(setf yokohama-list '(tanaka yamada sato steve))
(dolist (who yokohama-list)
(newaddress who 'live 'yokohama))
そもそもシンボル?評価?意味不明というならまた別途説明するよ。
906:デフォルトの名無しさん
08/06/20 09:51:27
いや、結構です。
907:デフォルトの名無しさん
08/06/20 15:10:49
>>906
やめて下さいよ
違う人がレスするのは
908:デフォルトの名無しさん
08/06/20 15:13:59
そういう用途にシンボル使う時は、印字表現に注意。特に空白。
909:デフォルトの名無しさん
08/06/20 18:31:41
scをみたけど、
巷にはcでlispインタプリタを作ってみたって人は多い。逆に
lispでcインタプリタを作ってみたという人はきいたことがないな。
作る必要もないものね。
910:デフォルトの名無しさん
08/06/20 21:58:18
てか不可能。
911:デフォルトの名無しさん
08/06/20 22:00:45
cでcインタプリタは昔Cマガで見たな。
c++ならまだしもcのインタプリタなんて教育用途でも微妙だと思ったが。
912:デフォルトの名無しさん
08/06/20 22:32:10
>>910
理由は?
# 「性能とかの実用性は度外視して」が前提だが。
913:デフォルトの名無しさん
08/06/20 22:40:25
Cインタプリタくらいあるだろ
URLリンク(wiki.osdev.info)
914:デフォルトの名無しさん
08/06/20 22:59:40
2進数を10進数に変換する関数なのですが
(defun two2ten (x)
(let ((n 0) (goukei '()))
(loop (if (< (1- (length x)) n) (return (lsadd goukei))
(progn (push (lsadd (mapcar #'(lambda (a) (* a (expt 2 n))) x)) goukei) (1+ n))))))
と言う関数がどこかが終わらないのか15秒ほど待ってみても答えが出ません。
何処に原因が有るのかおしえていただけませんでしょうか?
lsadd:与えられたリストの全要素の合計を数で返す関数
自作ですがこれは確実に動作します。
xはリスト形式で式に与えています。(1 0 0 1 1 0)の様な形式です。
915:デフォルトの名無しさん
08/06/20 23:41:06
>>914
下を見れば分かるかな。その変数 n を出力してみるといいよ。
1+ だけじゃ値は増えてないから。
cl-user(12): (setq x 10)
10
cl-user(13): (1+ x)
11
cl-user(14): x
10
916:デフォルトの名無しさん
08/06/20 23:59:58
>>715
ありがとうございます。
忘れてしまっていました。
ありがとうございます。
917:デフォルトの名無しさん
08/06/21 00:21:57
忘れるなよ。
918:デフォルトの名無しさん
08/06/21 07:42:57
LispでDLLを作って他のプログラムから呼び出すことはできますか?
919:デフォルトの名無しさん
08/06/21 08:10:47
LispWorks, ECL はできるよ。CLISP, SBCL はできない。他の処理系はしらない。
920:デフォルトの名無しさん
08/06/21 19:38:23
CommonLispのメーリングリストを開設しようと思うのですが
Yahooの提供サービスで良いのでしょうか
YahooIDをお持ちでない先輩がいらっしゃるといけないので
921:920
08/06/21 19:43:34
GoogleMLは広告が入らないそうなのでこちらも良さそうなのですが
これについても上と同様の質問についてお答え願います。