06/02/14 21:58:04
じゃ、ABCL で。
982:デフォルトの名無しさん
06/02/14 22:37:55
>Java VM 上で動かして
それってjavaでlispの処理系を書くということ?
どこかにありそうな気がするな。
基本的にjarかなんかでjavaコードの中でlispコードが
走れば最高なんだけどな。
XMLのパースとか楽になるんだが。
983:デフォルトの名無しさん
06/02/14 22:40:37
>>982
それが >>981(URLリンク(armedbear.org)) です...
984:デフォルトの名無しさん
06/02/14 23:03:52
>>983
すごいねコレ。
早速使ってみるわ、thx
985:デフォルトの名無しさん
06/02/14 23:10:57
(format t \"Hello, world!~%\")が8秒かかるんだが、
compileすれば早くなる?
986:デフォルトの名無しさん
06/02/14 23:16:04
スマソ。俺はちゃんと使った事がある訳じゃないんで詳細は知りません。
テキストエディタに使われているくらいだから、そんなに遅くはないと
思いたいけど。
URLリンク(armedbear-j.sourceforge.net)
JavaVM の起動とクラスのロードに時間が掛かってるとかじゃなくて?
987:デフォルトの名無しさん
06/02/14 23:21:24
>JavaVM の起動
それだ。
別のVMを起動するのに時間がかかっているのか。
同一VMで動くようにすれば早そうだ。
988:デフォルトの名無しさん
06/02/14 23:53:28
うちではこんな感じ。jikes でコンパイルしてたから、javac ならもっと速いかも。
別の VM を起動したりはしないと思うよ。初回だけ妙に遅いね。
% ./abcl
Armed Bear Common Lisp 0.0.9 (built Tue Feb 14 2006 23:40:55 --900)
Java 1.4.2_09 Apple Computer, Inc.
Java HotSpot(TM) Client VM
Low-level initialization completed in 2.388 seconds.
Startup completed in 9.052 seconds.
Type :HELP for a list of available commands.
CL-USER(1): (time (format t "hello, world~%"))
hello, world
5.287 seconds real time
62770 cons cells
NIL
CL-USER(2): (time (format t "hello, world~%"))
hello, world
0.0020 seconds real time
67 cons cells
NIL
CL-USER(3):
989:デフォルトの名無しさん
06/02/15 00:54:59
うちは Windows でやってみたが、やはり一発目は遅いね。
クラスライブラリのロードか何かだろう。
Armed Bear Common Lisp 0.0.9 (built Wed Feb 15 2006 00:49:19 --900)
Java 1.5.0_04 Sun Microsystems Inc.
Java HotSpot(TM) Client VM
Low-level initialization completed in 0.563 seconds.
Startup completed in 2.172 seconds.
Type :HELP for a list of available commands.
CL-USER(1): (time (format t "hello, world~%"))
hello, world
1.203 seconds real time
62770 cons cells
NIL
CL-USER(2): (time (format t "hello, world~%"))
hello, world
0.0 seconds real time
67 cons cells
NIL
CL-USER(3):
990:デフォルトの名無しさん
06/02/15 01:19:54
すみません、インストールしてabclからjreのメソッドとかは呼び出せるんですがサンプルのhello.javaがコンパイルできません。
どうすれば・・・いいんでしょう
F:\abcl-0.0.9\examples>javac hello.java
hello.java:1: パッケージ org.armedbear.lisp は存在しません。
import org.armedbear.lisp.*;
^
hello.java:8: シンボルを見つけられません。
シンボル: クラス Interpreter
場所 : hello の クラス
Interpreter interpreter = Interpreter.createInstance();
^
hello.java:8: シンボルを見つけられません。
シンボル: 変数 Interpreter
場所 : hello の クラス
Interpreter interpreter = Interpreter.createInstance();
^
エラー 3 個
991:デフォルトの名無しさん
06/02/15 01:38:37
>>990
cd examples
javac -classpath ../abcl.jar hello.java
java -classpath ../abcl.jar;. hello
みたいな感じで動いたよ。
992:デフォルトの名無しさん
06/02/15 01:46:49
>>991
おお!動いた、動きましたありがとう!
993:デフォルトの名無しさん
06/02/15 13:05:42
ABCLでだが
Interpreter interpreter = Interpreter.createInstance();
LispObject obj = interpreter.eval("(print (directory \"c:/\")");
これが動かない理由が分からない。
XYZZYだと動くんだが。
994:デフォルトの名無しさん
06/02/15 13:54:15
>>993
Common Lisp の仕様判ってる?
xyzzy なんて方言を持ち出されても・・・
995:ゲハシマ
06/02/15 19:17:27
>>994
偉そうに言うだけか?
仕様とやらを示してみろよ
996:デフォルトの名無しさん
06/02/15 20:17:09
>>995
大馬鹿発見!!
997:デフォルトの名無しさん
06/02/15 20:18:53
とりあえず >>102
998:993
06/02/15 20:59:40
>994
主にjavaしか触らないので言語仕様は良くはしらないが、
XYZZYとは微妙に違うということは解った。
>995
あんた誰?
999:993
06/02/15 21:12:49
あるディレクトリの拡張子が指定されたものであった場合に、条件に
合致する全てのファイルを削除するlisp式ってどう書きます?
1000:デフォルトの名無しさん
06/02/15 21:21:35
CL-FAD を使えば
(fad:walk-directory
#p"/home/onjo/tmp/" ;; ディレクトリを指定
#'(lambda (p)
(when (string-equal (pathname-type p) "txt") ;; 条件判定
(fad:delete-directory-and-files p))))
1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。