Common Lisp、SchemeをはじめとするLisp族全般のスレです
■前スレ
Lisp Scheme Part39
http://peace.2ch.net/test/read.cgi/tech/1408017352/
■テンプレ
ttp://wiki.fdiary.net/lisp/
■関連スレ
【入門】Common Lisp その11【質問よろず】
http://peace.2ch.net/test/read.cgi/tech/1411307361/
【Scheme】Schemeインタプリタ Mosh Part1【Lisp】
http://peace.2ch.net/test/read.cgi/tech/1272469779/
【Lisp】プログラミング言語 Clojure #3【JVM】
http://peace.2ch.net/test/read.cgi/tech/1380333808/
【魔法】リリカル☆Lisp【言語】
http://peace.2ch.net/test/read.cgi/tech/1183396621/
探検
Lisp Scheme Part40 [転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
2015/03/16(月) 13:45:52.92ID:EEYZoZ1i
940デフォルトの名無しさん
2018/05/30(水) 09:15:45.84ID:PA9GXtrJ ばかか?
941デフォルトの名無しさん
2018/05/30(水) 09:59:21.93ID:+JLqa4/r SBCLで「ビックリ」したのはこれ
(eq 'abc 'abc) ;=> T
(eq 'アイウエオ 'アイウエオ) ;=> T
'アイウエオ ;=> アイウエオ
'㌰㌰ ;=> ピコピコ
(setf (sb-ext:readtable-normalization *readtable*) nil) すれば変換されなくなる
http://www.sbcl.org/all-news.html#1.2.5
(eq 'abc 'abc) ;=> T
(eq 'アイウエオ 'アイウエオ) ;=> T
'アイウエオ ;=> アイウエオ
'㌰㌰ ;=> ピコピコ
(setf (sb-ext:readtable-normalization *readtable*) nil) すれば変換されなくなる
http://www.sbcl.org/all-news.html#1.2.5
942924
2018/05/30(水) 10:14:13.23ID:yDgT1YjT 皆様に質問です!
JSCLみたいに「サーバサイドもクライアントサイドもlispで!」みたいな思想のやつって他にもありますか?
単にトランスパイラというわけでなく、ブラウザでevalできるのが理想なんですけど...
よろしくおねがいします!
JSCLみたいに「サーバサイドもクライアントサイドもlispで!」みたいな思想のやつって他にもありますか?
単にトランスパイラというわけでなく、ブラウザでevalできるのが理想なんですけど...
よろしくおねがいします!
943デフォルトの名無しさん
2018/05/30(水) 12:19:21.28ID:3TWGIpcw944デフォルトの名無しさん
2018/05/30(水) 12:35:36.42ID:4OOLz1vE945デフォルトの名無しさん
2018/05/30(水) 12:43:43.30ID:ExxmvTi1 スマホで無駄にデカイバイナリーは迷惑だけどPCアプリのサイズなんて気にしない。
昔はユーザーもアプリサイズやメモリー使用量に敏感だったけど、今はそんなこと気にしてないみたいだし。
昔はユーザーもアプリサイズやメモリー使用量に敏感だったけど、今はそんなこと気にしてないみたいだし。
947デフォルトの名無しさん
2018/05/30(水) 14:20:42.30ID:jr7ON4yo すみません、LISP初心者ですが、追加の質問させてください!
JSCLを試してみようとgithubのGetting StartedとBuildの項目に挑戦しています。
https://github.com/jscl-project/jscl
サーバでnpm install -g jsclしたあと、jscl-replコマンドを打つことでreplが動くところまではできたのですが
GithubのBuildの項目のところでつまずいています。
git clone https://github.com/jscl-project/jscl.git
することでnode_modulesやpackage.jsonなどが存在するプロジェクトディレクトリ上部に
jsclディレクトリが作成されたのですが(一体これはなんでしょう?サンプルプログラム集なのでしょうか)
replで(jscl:bootstrap)を評価しても
ERROR: The symbol `"BOOTSTRAP"' is not external in the package #<PACKAGE JSCL>.
と表示されてしまい、次のステップに進むことができません。
このステップは、githubのreadme.mdで
「あなたのLispにjscl.lispをロードし、ブートストラップ関数を呼び出して実装自体をコンパイルします」
「ソースツリーの最上部にjscl.jsファイルが生成されます。 これで、ブラウザでjscl.htmlを開いて使用できます。」
と記載があるので、(jscl:bootstrap)を実行することによりgit cloneで落としたプロジェクトをコンパイルし
出力されたjscl.htmlにApacheなど使ってアクセスできるようにすれば、bootstrap?とかいうサンプルアプリが動くと思っているのですが
何がいけないのでしょう??
マニアックな質問で申し訳ないのですが、ぜひお助け願います。
(ところでbootstrapってなんでしょうか?cssフレームワークのTwitter bootstrapのことでしょうか?)
JSCLを試してみようとgithubのGetting StartedとBuildの項目に挑戦しています。
https://github.com/jscl-project/jscl
サーバでnpm install -g jsclしたあと、jscl-replコマンドを打つことでreplが動くところまではできたのですが
GithubのBuildの項目のところでつまずいています。
git clone https://github.com/jscl-project/jscl.git
することでnode_modulesやpackage.jsonなどが存在するプロジェクトディレクトリ上部に
jsclディレクトリが作成されたのですが(一体これはなんでしょう?サンプルプログラム集なのでしょうか)
replで(jscl:bootstrap)を評価しても
ERROR: The symbol `"BOOTSTRAP"' is not external in the package #<PACKAGE JSCL>.
と表示されてしまい、次のステップに進むことができません。
このステップは、githubのreadme.mdで
「あなたのLispにjscl.lispをロードし、ブートストラップ関数を呼び出して実装自体をコンパイルします」
「ソースツリーの最上部にjscl.jsファイルが生成されます。 これで、ブラウザでjscl.htmlを開いて使用できます。」
と記載があるので、(jscl:bootstrap)を実行することによりgit cloneで落としたプロジェクトをコンパイルし
出力されたjscl.htmlにApacheなど使ってアクセスできるようにすれば、bootstrap?とかいうサンプルアプリが動くと思っているのですが
何がいけないのでしょう??
マニアックな質問で申し訳ないのですが、ぜひお助け願います。
(ところでbootstrapってなんでしょうか?cssフレームワークのTwitter bootstrapのことでしょうか?)
948デフォルトの名無しさん
2018/05/30(水) 19:57:16.76ID:EPh+XEfw SBCLは実行ファイルを圧縮して作成できる
40MBが10〜15MB位になるはず
それでもデカイけどね
ちなみに起動時間は全く変わらない
40MBが10〜15MB位になるはず
それでもデカイけどね
ちなみに起動時間は全く変わらない
949947
2018/05/30(水) 23:32:16.24ID:jr7ON4yo よく考えたらスタックオーバーフローとかで質問するべきだったかもしれません(´・ω・`;)
950はちみつ餃子 ◆8X2XSCHEME
2018/05/31(木) 00:05:36.49ID:wCoAkDam >>947
> 「あなたのLispにjscl.lispをロードし、ブートストラップ関数を呼び出して実装自体をコンパイルします」
マニュアルの文章は、あなたが使っている LISP 処理系の上で jscl.lisp をロードした上で (jscl:bootstrap) を評価せよという意味だと思うんだけど、
あなたがやっているのは jscl-repl を起動した中で (jscl:bootstrap) を評価しているように読める。
そうだとしたらそんなものは無いので無いというエラーになるのはわかる。
> 「あなたのLispにjscl.lispをロードし、ブートストラップ関数を呼び出して実装自体をコンパイルします」
マニュアルの文章は、あなたが使っている LISP 処理系の上で jscl.lisp をロードした上で (jscl:bootstrap) を評価せよという意味だと思うんだけど、
あなたがやっているのは jscl-repl を起動した中で (jscl:bootstrap) を評価しているように読める。
そうだとしたらそんなものは無いので無いというエラーになるのはわかる。
951947
2018/05/31(木) 10:01:35.83ID:eRJFRV4/952デフォルトの名無しさん
2018/06/01(金) 08:07:57.22ID:vYR603xM Land of Lispはおもしろいですか?
953デフォルトの名無しさん
2018/06/01(金) 08:38:48.29ID:pJKbzob1 マンガは面白い
954デフォルトの名無しさん
2018/06/30(土) 04:32:01.74ID:7M67VtrJ stackoverflowってホントの初心者が質問してもいい雰囲気なん?
955デフォルトの名無しさん
2018/06/30(土) 21:17:22.45ID:68JzM2MV >>954
雰囲気ってのが曖昧だけど、質問内容が馬鹿げたものでもどんどんしていいよ。
初心者の質問内容がしょうもないことなのは普通のこと。
だけど、質問の仕方にはある程度の作法がある。
https://ja.stackoverflow.com/help
「ホントの初心者」というのは自分が何を知りたいのか理解していないことが多いので、
回答できる質問に修正されるまでしつこくコメントされるかもしれないけど、
それは非難ではなく回答するために必要な対話なので、面倒くさがらないでね。
雰囲気ってのが曖昧だけど、質問内容が馬鹿げたものでもどんどんしていいよ。
初心者の質問内容がしょうもないことなのは普通のこと。
だけど、質問の仕方にはある程度の作法がある。
https://ja.stackoverflow.com/help
「ホントの初心者」というのは自分が何を知りたいのか理解していないことが多いので、
回答できる質問に修正されるまでしつこくコメントされるかもしれないけど、
それは非難ではなく回答するために必要な対話なので、面倒くさがらないでね。
957はちみつ餃子 ◆8X2XSCHEME
2018/07/03(火) 11:46:05.11ID:BKTruI85 Gauche の 0.9.6 リリースが近いらしい
958デフォルトの名無しさん
2018/07/03(火) 19:48:45.16ID:BYpLJ+yC959はちみつ餃子 ◆8X2XSCHEME
2018/07/03(火) 22:38:46.07ID:BKTruI85 >>958
ずっと兼業してるみたいだよ。
俳優としての履歴はここに書かれているけど、 (実際には仕事につながらなかったオーディションも含めると) 2003 年からスタートしてる。
http://practical-scheme.net/wiliki/wiliki.cgi?Shiro%3AAuditionRecords
スクウェアの映画の仕事を終えてから Scheme Arts という名前で法人 (といっても史郎さんひとりの会社だが)
を立ち上げてコンサルティングの仕事を始めて、そのほんの少し後から平行して俳優としても活動してることになる。
ずっと兼業してるみたいだよ。
俳優としての履歴はここに書かれているけど、 (実際には仕事につながらなかったオーディションも含めると) 2003 年からスタートしてる。
http://practical-scheme.net/wiliki/wiliki.cgi?Shiro%3AAuditionRecords
スクウェアの映画の仕事を終えてから Scheme Arts という名前で法人 (といっても史郎さんひとりの会社だが)
を立ち上げてコンサルティングの仕事を始めて、そのほんの少し後から平行して俳優としても活動してることになる。
960はちみつ餃子 ◆8X2XSCHEME
2018/07/04(水) 00:27:22.72ID:afbTNZQQ 0.9.6 キタ――♪ o(゚∀゚o) (o゚∀゚o) (o゚∀゚)o キタ――♪
961デフォルトの名無しさん
2018/07/04(水) 01:17:41.82ID:OTzKBqUL 関数型言語で画像処理をやってみたいんだけれど
Common Lispで画像読み込みの定番ってある?
debianでcl-png使おうとしたらlibpng12が必要みたいで
使えませんでした。(libpng16ならある)
clwikiに載っているimageライブラリでドキュメントが充実してるのって
cl-pngが一番なんだけど。
Common Lispで画像読み込みの定番ってある?
debianでcl-png使おうとしたらlibpng12が必要みたいで
使えませんでした。(libpng16ならある)
clwikiに載っているimageライブラリでドキュメントが充実してるのって
cl-pngが一番なんだけど。
962デフォルトの名無しさん
2018/07/04(水) 07:25:53.23ID:vo63HsfH そーいやgimpがlisp系
963デフォルトの名無しさん
2018/07/04(水) 21:49:20.18ID:gFgZc5FG KI1
964はちみつ餃子 ◆8X2XSCHEME
2018/07/05(木) 03:00:09.18ID:l9X7uzb+965デフォルトの名無しさん
2018/07/06(金) 01:28:47.94ID:xqwQ2rU4 ラムダ計算と純lispはともにチューリング完全
だからlambdaだけで純lispが作れるはず
実際、cons,car,cdrは作れる
(define (my-cons a d) (lambda (f) (f a d)))
(define (my-car ad) (ad (lambda (a d) a)))
(define (my-cdr ad) (ad (lambda (a d) d)))
でも、atom?またはpair?はどう作ればいいの?
だからlambdaだけで純lispが作れるはず
実際、cons,car,cdrは作れる
(define (my-cons a d) (lambda (f) (f a d)))
(define (my-car ad) (ad (lambda (a d) a)))
(define (my-cdr ad) (ad (lambda (a d) d)))
でも、atom?またはpair?はどう作ればいいの?
966デフォルトの名無しさん
2018/07/11(水) 13:07:02.79ID:7FwajRbN 教えてください。初心者です。
(defun test ()
(let ((result '(0 0 0 0 0 0 0)))
(format t "~{ ~a ~}" result)
(incf (nth 4 result) 7)
(incf (nth 6 result) 6)
result))
この関数なんですが、実行するたびに結果が変わるのです。
HOGE 28 > (test)
0 0 0 0 0 0 0
(0 0 0 0 7 0 6)
HOGE 29 > (test)
0 0 0 0 7 0 6
(0 0 0 0 14 0 12)
(let ((result (make-list 7 :initial-element 0)))...
にすれば意図したとおりに動作するのは分かっているのですが、
何で元の関数定義でだめなのかが分からないのです。
ちなみに、Lispworks 7.0 Windows 32bitです。
他の処理系でも同じような動作になるのでしょうか。
(defun test ()
(let ((result '(0 0 0 0 0 0 0)))
(format t "~{ ~a ~}" result)
(incf (nth 4 result) 7)
(incf (nth 6 result) 6)
result))
この関数なんですが、実行するたびに結果が変わるのです。
HOGE 28 > (test)
0 0 0 0 0 0 0
(0 0 0 0 7 0 6)
HOGE 29 > (test)
0 0 0 0 7 0 6
(0 0 0 0 14 0 12)
(let ((result (make-list 7 :initial-element 0)))...
にすれば意図したとおりに動作するのは分かっているのですが、
何で元の関数定義でだめなのかが分からないのです。
ちなみに、Lispworks 7.0 Windows 32bitです。
他の処理系でも同じような動作になるのでしょうか。
967966
2018/07/11(水) 13:41:02.30ID:7FwajRbN 何でこうなるかは、何となくわからなくはないのですが(1回目の実行と2回目の実行で同じリストをletで束縛してるってことですよね?)、
letってそういう動作するのを想定して使わなきゃいけないものなのか、ってのがわかってないのです。
僕の理解では元の関数定義でいけそうな気がするのです。
letってそういう動作するのを想定して使わなきゃいけないものなのか、ってのがわかってないのです。
僕の理解では元の関数定義でいけそうな気がするのです。
968966
2018/07/11(水) 15:14:10.25ID:7FwajRbN (defparameter *FOO* '(bar bar bar))
(defun hoge-is-foo (&optional (piyo nil))
(let ((hoge '(fuga fuga fuga)))
(if piyo (setf *foo* hoge))
(format t "HOGE: ~{ ~a ~}~%" hoge)
(format t "*FOO*: ~{ ~a ~}~%" *foo*)
(if (eq hoge *foo*)
(format t "HOGE IS FOO!~%")
(format t "HOGE IS NOT FOO!~%"))))
PIYO 82 > (hoge-is-foo)
HOGE: FUGA FUGA FUGA
*FOO*: BAR BAR BAR
HOGE IS NOT FOO!
NIL
PIYO 83 > (hoge-is-foo t)
HOGE: FUGA FUGA FUGA
*FOO*: FUGA FUGA FUGA
HOGE IS FOO!
NIL
PIYO 84 > (setf (car *foo*) 'baz)
BAZ
PIYO 85 > (hoge-is-foo)
HOGE: BAZ FUGA FUGA
*FOO*: BAZ FUGA FUGA
HOGE IS FOO!
NIL
こーゆーもんなん?
(defun hoge-is-foo (&optional (piyo nil))
(let ((hoge '(fuga fuga fuga)))
(if piyo (setf *foo* hoge))
(format t "HOGE: ~{ ~a ~}~%" hoge)
(format t "*FOO*: ~{ ~a ~}~%" *foo*)
(if (eq hoge *foo*)
(format t "HOGE IS FOO!~%")
(format t "HOGE IS NOT FOO!~%"))))
PIYO 82 > (hoge-is-foo)
HOGE: FUGA FUGA FUGA
*FOO*: BAR BAR BAR
HOGE IS NOT FOO!
NIL
PIYO 83 > (hoge-is-foo t)
HOGE: FUGA FUGA FUGA
*FOO*: FUGA FUGA FUGA
HOGE IS FOO!
NIL
PIYO 84 > (setf (car *foo*) 'baz)
BAZ
PIYO 85 > (hoge-is-foo)
HOGE: BAZ FUGA FUGA
*FOO*: BAZ FUGA FUGA
HOGE IS FOO!
NIL
こーゆーもんなん?
969デフォルトの名無しさん
2018/07/11(水) 15:25:01.53ID:16Hc9NDk >>966
let の使い方というより、 quote されたリストの破壊的変更は literal object の変更にあたるから未定義動作になるはずで、そのせいで変な挙動になってるんだと思う。
ちなみに Allegro だと LispWorks と同じ挙動になった。
SBCL だと警告で "Destructive function SB-KERNEL:%RPLACA called on constant data: (0 0 0)." と出る。
で、繰り返し呼んでも毎回 (0 0 0 0 0 0) が返されるみたい。
let の使い方というより、 quote されたリストの破壊的変更は literal object の変更にあたるから未定義動作になるはずで、そのせいで変な挙動になってるんだと思う。
ちなみに Allegro だと LispWorks と同じ挙動になった。
SBCL だと警告で "Destructive function SB-KERNEL:%RPLACA called on constant data: (0 0 0)." と出る。
で、繰り返し呼んでも毎回 (0 0 0 0 0 0) が返されるみたい。
970969
2018/07/11(水) 16:28:25.75ID:16Hc9NDk >>967
あ、質問の趣旨が違うか。
(defun hoge ()
'(1 2 3))
があるときに、
(eq (hoge) (hoge))
は、同じリストを返すのだから常に T になるのか?って話かな
あ、質問の趣旨が違うか。
(defun hoge ()
'(1 2 3))
があるときに、
(eq (hoge) (hoge))
は、同じリストを返すのだから常に T になるのか?って話かな
971966
2018/07/11(水) 17:18:46.59ID:7FwajRbN972デフォルトの名無しさん
2018/07/11(水) 19:41:32.56ID:16Hc9NDk >>971
うーん、リストを破壊的に変更する場合、上のようにリテラルを破壊するのもまずいし、リテラルでなくても部分共有されたリストだと予想外の場所に影響が及ぶので、自分は安全とわかってないとやらないです。
破壊的変更をするのが前提なら、 list 関数や言及されてるmake-listで新しく作ったり、 copy-list で複製してからいじったりすることが多いかも。
うーん、リストを破壊的に変更する場合、上のようにリテラルを破壊するのもまずいし、リテラルでなくても部分共有されたリストだと予想外の場所に影響が及ぶので、自分は安全とわかってないとやらないです。
破壊的変更をするのが前提なら、 list 関数や言及されてるmake-listで新しく作ったり、 copy-list で複製してからいじったりすることが多いかも。
973デフォルトの名無しさん
2018/07/11(水) 20:14:45.56ID:VhV09Bdv974966
2018/07/11(水) 20:23:44.77ID:7FwajRbN >>972
破壊的な変更には注意が必要なこと自体は、入門書などを読んで知っていたのですが、
今回の例では関数を呼び出す度に別のリストをletが束縛するだろうjkと勝手に思っていました。
勉強になりました。ありがとうございます。
破壊的な変更には注意が必要なこと自体は、入門書などを読んで知っていたのですが、
今回の例では関数を呼び出す度に別のリストをletが束縛するだろうjkと勝手に思っていました。
勉強になりました。ありがとうございます。
975デフォルトの名無しさん
2018/07/11(水) 20:33:50.22ID:Igjhxsb4977966
2018/07/11(水) 21:11:34.91ID:7FwajRbN 自分の環境でSBCLでやってみたら↓みたいになった。
個人的にはLispworksの挙動より意味不明かも。
(hoge-is-foo)はLispworksと同じ結果。
* (test)
0 0 0 0 0 0 0
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
個人的にはLispworksの挙動より意味不明かも。
(hoge-is-foo)はLispworksと同じ結果。
* (test)
0 0 0 0 0 0 0
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
* (test)
0 0 0 0 7 0 6
(0 0 0 0 7 0 6)
978デフォルトの名無しさん
2018/07/11(水) 21:46:27.14ID:zGhUAGhR リテラルのリストに対する破壊的変更はダメ
っていうのはLand of Lisp(の訳注)で初めて知った
他の本やサイトでこれに関する注意を見た覚えがない
「literal object の変更にあたるから未定義動作になる」(>>969)ということは、リストに限らないんだね
[1]> (defun f () (let ((x "abc")) (format t "~S~%" x) (setf (elt x 0) #\!) x))
F
[2]> (f)
"abc"
"!bc"
[3]> (f)
"!bc"
"!bc"
[4]>
っていうのはLand of Lisp(の訳注)で初めて知った
他の本やサイトでこれに関する注意を見た覚えがない
「literal object の変更にあたるから未定義動作になる」(>>969)ということは、リストに限らないんだね
[1]> (defun f () (let ((x "abc")) (format t "~S~%" x) (setf (elt x 0) #\!) x))
F
[2]> (f)
"abc"
"!bc"
[3]> (f)
"!bc"
"!bc"
[4]>
979デフォルトの名無しさん
2018/07/11(水) 22:50:38.31ID:nrnWofQI CLHSで "The consequences are undefined if literal objects are destructively modified." って書いてあるページ
http://www.lispworks.com/documentation/HyperSpec/Body/03_ga.htm
そして、 literal の方には "appearing as data in a quote form" なんて書いてあるので (http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_l.htm#literal)
quote の中身は literal, よって破壊的に変更すると undefined ..?
http://www.lispworks.com/documentation/HyperSpec/Body/03_ga.htm
そして、 literal の方には "appearing as data in a quote form" なんて書いてあるので (http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_l.htm#literal)
quote の中身は literal, よって破壊的に変更すると undefined ..?
980デフォルトの名無しさん
2018/07/11(水) 22:59:01.95ID:vOu8ozZx 何故maxには:keyがつかえないの?
定義だから。いや、知ってるけどあってもええやん。
みんなreduceとか使ってやってんの?
定義だから。いや、知ってるけどあってもええやん。
みんなreduceとか使ってやってんの?
981はちみつ餃子 ◆8X2XSCHEME
2018/07/11(水) 23:38:32.21ID:RBgflsxh リテラルの破壊が駄目ってのは割と一般的な気がする。
C がそうなってるのを知ってたので、
後に他の言語を学ぶときも意識して仕様をチェックしてる。
C がそうなってるのを知ってたので、
後に他の言語を学ぶときも意識して仕様をチェックしてる。
982デフォルトの名無しさん
2018/07/12(木) 00:32:56.92ID:bsVrPe++983デフォルトの名無しさん
2018/07/12(木) 00:35:03.43ID:bsVrPe++984デフォルトの名無しさん
2018/07/12(木) 12:25:48.63ID:l643qOMO985デフォルトの名無しさん
2018/07/12(木) 13:13:34.80ID:QKPLqpS1 mapcarしてremove-if #'nullするのと、
mapcan使うのとどっちがおすすめなん。
mapcan使うのとどっちがおすすめなん。
986デフォルトの名無しさん
2018/07/12(木) 17:19:27.72ID:eSxWwMsY >>985
filter 的な話?こういう
(mapcan #'(lambda (x) (and (numberp x) (list x)))
'(a 1 b c 3 4 d 5))
=> (1 3 4 5)
上の例は CLHS からの引用だけど (http://www.lispworks.com/documentation/HyperSpec/Body/f_mapc_.htm)
そこで 「mapcan を使った idiom」とか言ってるから、 mapcan でいいんじゃないの。
filter 的な話?こういう
(mapcan #'(lambda (x) (and (numberp x) (list x)))
'(a 1 b c 3 4 d 5))
=> (1 3 4 5)
上の例は CLHS からの引用だけど (http://www.lispworks.com/documentation/HyperSpec/Body/f_mapc_.htm)
そこで 「mapcan を使った idiom」とか言ってるから、 mapcan でいいんじゃないの。
987デフォルトの名無しさん
2018/07/12(木) 18:20:07.59ID:eSxWwMsY >>980
:key を持つのは sequence か cons を扱う関数/マクロだけみたい。
max は数を扱う関数だから :key がない、くらいの理由なのではと予想。
で、僕だったらそういう状況は loop ~ maximize で書いちゃうな:
(loop with list = '((1 a) (100 b) (5 c))
for i in list
maximize (car i))
:key を持つのは sequence か cons を扱う関数/マクロだけみたい。
max は数を扱う関数だから :key がない、くらいの理由なのではと予想。
で、僕だったらそういう状況は loop ~ maximize で書いちゃうな:
(loop with list = '((1 a) (100 b) (5 c))
for i in list
maximize (car i))
988デフォルトの名無しさん
2018/07/12(木) 19:34:18.52ID:D5ReHf3v 1の関連スレっているの?
どこもレス皆無なんだけど。
ここらへんは辛うじて今年レスがある。
【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net
http://mevius.5ch.net/test/read.cgi/tech/1483498849/
【GNU】Emacs Lisp 【Elisp】
http://mevius.5ch.net/test/read.cgi/tech/1382223056/
どこもレス皆無なんだけど。
ここらへんは辛うじて今年レスがある。
【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net
http://mevius.5ch.net/test/read.cgi/tech/1483498849/
【GNU】Emacs Lisp 【Elisp】
http://mevius.5ch.net/test/read.cgi/tech/1382223056/
989はちみつ餃子 ◆8X2XSCHEME
2018/07/12(木) 20:31:21.01ID:m8Dd1031 Lisp系だからってひとまとめにするには違いが大きすぎるし、
ちょっとしたことならともかく、
入り組んだ事柄を話すにはやっぱり専門のスレがよさそうな気もするし、
それぞれの言語でコミュニティがあるから、
5ch は雑談程度って割り切ってもいいのかもしれないとも思うし…。
ちょっとしたことならともかく、
入り組んだ事柄を話すにはやっぱり専門のスレがよさそうな気もするし、
それぞれの言語でコミュニティがあるから、
5ch は雑談程度って割り切ってもいいのかもしれないとも思うし…。
990デフォルトの名無しさん
2018/07/13(金) 23:56:41.22ID:1D4AU09B Maxima以外に実用出来るオープンソースの数式処理システムを知らないのだけど
Common Lispが優秀過ぎるからmaximaしかないのか
自分の知らない数式処理システムが他にあるのか
Common Lispが優秀過ぎるからmaximaしかないのか
自分の知らない数式処理システムが他にあるのか
991はちみつ餃子 ◆8X2XSCHEME
2018/07/14(土) 01:56:22.39ID:Eblv1Llg >>990
俺が知ってるのだとこういうのもある。
http://www.math.kobe-u.ac.jp/Asir/asir-ja.html
https://www.gap-system.org/
貢献する人が多いと良くなっていくのは当然だし、
良くなるとまた人が集まってくるというスパイラルが出来るので、
一度人気が出るとあえて他の不人気のプロジェクトに手を出そうという人は
現れにくいんじゃない?
まあ、数式処理と一言で言っても数学の分野は広大だから、
今までコンピュータで扱えなかった分野のためのソフトが新たに出てくることだってあるだろうし、
ちょっと別の分野用の数式処理ソフトを探したら案外たくさんあるかもしれないぞ。
俺が知ってるのだとこういうのもある。
http://www.math.kobe-u.ac.jp/Asir/asir-ja.html
https://www.gap-system.org/
貢献する人が多いと良くなっていくのは当然だし、
良くなるとまた人が集まってくるというスパイラルが出来るので、
一度人気が出るとあえて他の不人気のプロジェクトに手を出そうという人は
現れにくいんじゃない?
まあ、数式処理と一言で言っても数学の分野は広大だから、
今までコンピュータで扱えなかった分野のためのソフトが新たに出てくることだってあるだろうし、
ちょっと別の分野用の数式処理ソフトを探したら案外たくさんあるかもしれないぞ。
992デフォルトの名無しさん
2018/07/14(土) 07:02:57.27ID:0vuXs+dx993デフォルトの名無しさん
2018/07/14(土) 09:15:24.67ID:/GhuOfpQ んじゃ関連サイトは過去スレを除きとりあえず残すけどええんか?
994デフォルトの名無しさん
2018/07/14(土) 13:24:35.04ID:rTAZMq1D Emacs Lispは毛色が違う気がする
995はちみつ餃子 ◆8X2XSCHEME
2018/07/15(日) 00:24:40.70ID:HERu1+Fl >>992
分割しようってのじゃなくて、現時点でそれぞれにスレ立ってるやつがあるわけよ。
個別にスレ立ててるやつは、
ここでやるのはちょっと違うなと思ったからこそ立ってるわけでしょ?
統合するとなると違和感は有るよなっていう程度の話。
分割しようってのじゃなくて、現時点でそれぞれにスレ立ってるやつがあるわけよ。
個別にスレ立ててるやつは、
ここでやるのはちょっと違うなと思ったからこそ立ってるわけでしょ?
統合するとなると違和感は有るよなっていう程度の話。
996デフォルトの名無しさん
2018/07/15(日) 02:10:24.47ID:oGr67yTf このスレ以外ほぼ更新ないけど関連スレは残したよ。
3年以内に消費したいね。
Lisp Scheme Part41
http://mevius.5ch.net/test/read.cgi/tech/1531587928/
3年以内に消費したいね。
Lisp Scheme Part41
http://mevius.5ch.net/test/read.cgi/tech/1531587928/
997デフォルトの名無しさん
2018/07/15(日) 13:59:55.38ID:QJDLEpU3998デフォルトの名無しさん
2018/07/15(日) 14:01:38.31ID:QJDLEpU3 ぬるぽ
999デフォルトの名無しさん
2018/07/15(日) 15:09:22.88ID:jvo4M5NJ >>996
乙
乙
1000デフォルトの名無しさん
2018/07/15(日) 15:09:38.52ID:jvo4M5NJ 1000
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1217日 1時間 23分 46秒
新しいスレッドを立ててください。
life time: 1217日 1時間 23分 46秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 「最悪、利下げもあり得る」 トランプ関税に身構える日銀と市場 [蚤の市★]
- 「運賃1000円」着服で「退職金1200万円」が全額不支給、最高裁の判断は「適法」…原告の請求棄却 京都市営バス [ぐれ★]
- NY株、大幅続落 17日終値527ドル安、医療保険大手に売り [蚤の市★]
- 【ラジオ】“日本人で薄毛のカッコイイ人”を巡って大激論!?アンガ田中「そういう人が流れを変えていくしかない」 [湛然★]
- 【札幌】 歩道で男子高校生が制服など切られる被害相次ぐ [香味焙煎★]
- 「職業運転手の適性を欠いた危険なもの」 中央道・笹子トンネルで追突、1歳児が死亡 トラック運転手に禁固2年6か月を求刑 山梨 [香味焙煎★]
- 財務省「一気にリッター25.1円下がると市場が大混乱する😡」ガソリン税トリガー条項発動回避へ [399259198]
- 厚顔無恥他責ジャップ「インバウンド外国人ガー!!」タイ人さん「あのさぁジャップ…」👈えっ…😱 [152212454]
- 日本国民の68.4%「消費税減税に賛成」 [481941988]
- (ヽ´ん`)「揖保乃糸は全然違うゾ」👈これマジ? [394133584]
- 女ってなんであんなピッタリパンツ穿くの?
- マックの店長で23万。もはやこの国、夢も責任も割に合わん。 [677076729]