[#22503] can't require — IWATSUKI Hiroyuki <don@...>

岩月と申します。

94 messages 2004/01/06
[#22504] Re: can't require — nobu.nakada@... 2004/01/06

なかだです。

[#22505] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/06

まつもと ゆきひろです

[#22506] Re: can't require — IWATSUKI Hiroyuki <don@...> 2004/01/06

岩月と申します。

[#22509] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/07

山本です。

[#22513] Re: can't require — IWATSUKI Hiroyuki <don@...> 2004/01/07

岩月と申します。

[#22514] Re: can't require — nobu.nakada@... 2004/01/07

なかだです。

[#22522] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/07

山本です。

[#22524] Re: can't require — nobu.nakada@... 2004/01/07

なかだです。

[#22526] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/07

山本です。

[#22534] Re: can't require — nobu.nakada@... 2004/01/07

なかだです。

[#22535] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/07

まつもと ゆきひろです

[#22536] Re: can't require — Tanaka Akira <akr@...17n.org> 2004/01/07

In article <1073474004.933446.5475.nullmailer@picachu.netlab.jp>,

[#22540] Re: can't require — nobu.nakada@... 2004/01/07

なかだです。

[#22541] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/07

山本です。なかださんのコードで気になった点が3つあります。

[#22546] Re: can't require — nobu.nakada@... 2004/01/07

なかだです。

[#22549] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/08

山本です。

[#22550] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/08

山本です。

[#22551] Re: can't require — nobu.nakada@... 2004/01/08

なかだです。

[#22571] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/11

山本です。

[#22667] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/22

山本です。

[#22668] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/22

まつもと ゆきひろです

[#22669] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/22

山本です。

[#22676] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/24

山本です。

[#22677] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/25

まつもと ゆきひろです

[#22678] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/25

山本です。

[#22679] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/25

山本です。

[#22680] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/25

まつもと ゆきひろです

[#22682] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/25

山本です。

[#22683] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/25

まつもと ゆきひろです

[#22686] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/26

山本です。

[#22687] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/26

山本です。

[#22697] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/27

山本です。

[#22700] Re: can't require — nobu.nakada@... 2004/01/27

なかだです。

[#22712] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/27

山本です。WinCVS + byacc + sed をインストールして、ビルドできるようになりました。

[#22714] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/27

山本です。

[#22716] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/27

山本です。

[#22725] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/28

山本です。

[#22729] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/28

まつもと ゆきひろです

[#22734] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/28

山本です。

[#22736] Re: can't require — matz@... (Yukihiro Matsumoto) 2004/01/28

まつもと ゆきひろです

[#22738] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/28

山本です。

[#22739] Re: can't require — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/28

山本です。

[#22740] Dir.glob (Re: Re: can't require) — nobu.nakada@... 2004/01/28

なかだです。

[#22741] Re: Dir.glob (Re: Re: can't require) — matz@... (Yukihiro Matsumoto) 2004/01/28

まつもと ゆきひろです

[#22744] Re: Dir.glob (Re: Re: can't require) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/28

山本です。

[#22746] Re: Dir.glob (Re: Re: can't require) — nobu.nakada@... 2004/01/28

なかだです。

[#22747] Re: Dir.glob (Re: Re: can't require) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/28

山本です。

[#22748] Re: Dir.glob (Re: Re: can't require) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/28

山本です。

[#22750] Re: Dir.glob (Re: Re: can't require) — matz@... (Yukihiro Matsumoto) 2004/01/28

まつもと ゆきひろです

[#22761] Re: Dir.glob (Re: Re: can't require) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/29

山本です。

[#22764] Re: Dir.glob (Re: Re: can't require) — nobu.nakada@... 2004/01/29

なかだです。

[#22766] Re: Dir.glob (Re: Re: can't require) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/29

山本です。

[#22770] Re: Dir.glob (Re: Re: can't require) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/29

山本です。

[#22772] Re: Dir.glob (Re: Re: can't require) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/01/29

山本です。

[#22774] Re: Dir.glob (Re: Re: can't require) — matz@... (Yukihiro Matsumoto) 2004/01/29

まつもと ゆきひろです

[#22688] output directory for extensions — nobu.nakada@...

なかだです。

14 messages 2004/01/26

[#22691] 次期リリースでの新規添付ライブラリ — "Kawaji, Shinya" <kawaji@...>

かわじ、です

18 messages 2004/01/26
[#22693] Re: 次期リリースでの新規添付ライブラリ — matz@... (Yukihiro Matsumoto) 2004/01/26

まつもと ゆきひろです

[#22694] Re: 次期リリースでの新規添付ライブラリ — matz@... (Yukihiro Matsumoto) 2004/01/26

まつもと ゆきひろです

[#22763] $: trick in test/* — "NAKAMURA, Hiroshi" <nakahiro@...>

なひです。

21 messages 2004/01/29

[ruby-dev:22496] Re: [ANN] YARV: Yet another RubyVM 0.0.0-

From: nobu.nakada@...
Date: 2004-01-06 02:40:52 UTC
List: ruby-dev #22496
なかだです。

At Tue, 6 Jan 2004 09:59:25 +0900,
Yukihiro Matsumoto wrote:
> | お正月に次の拡張ライブラリを作ったので投稿させていただきます。
> |
> |YARV: Yet another RubyVM 0.0.0-
> |http://www.atdot.net/yarv/yarv000minus.lzh
> 
> 面白いですね。extに下に置くとcompiler.cがコンパイルできない
> のはなぜだろう。

私のとこでは、vm.cでエラーになりました。

* できればsrcdirはいじりたくない
* dependをコピーするときに置換するので、extconf.rbのoext回りは
  不要
* ctest.rbでSEGV
* linuxだとulongは定義済み

> | しかも、遅いです。たくさんサボってるのに遅いです。
> 
> 私の作ったプロトタイプも速いないんですよね。その一方でgForth
> やQSchemeはめちゃめちゃ速い。その違いは一体なんなのかと。

ほとんどがメソッド呼び出しなので、最適化しづらい仕様ではあるん
ですよねぇ。


diff -ru2pN --exclude '*~' --exclude '.*' ../yarv/MANIFEST ext/yarv/MANIFEST
--- ../yarv/MANIFEST	1970-01-01 09:00:00.000000000 +0900
+++ ext/yarv/MANIFEST	2004-01-06 10:55:27.000000000 +0900
@@ -0,0 +1,19 @@
+MANIFEST
+compiler.c
+compiler.h
+ctest.rb
+depend
+disasm.c
+extconf.rb
+insnhelper.base.h
+insnhelper.h
+insns.def
+insns2vm.rb
+readme
+test.rb
+vm.c
+vm.h
+yarv.rb
+yarv.txt
+yarvcore.c
+yarvcore.h
diff -ru2pN --exclude '*~' --exclude '.*' ../yarv/depend ext/yarv/depend
--- ../yarv/depend	2004-01-06 10:54:23.000000000 +0900
+++ ext/yarv/depend	2004-01-06 11:07:41.000000000 +0900
@@ -2,18 +2,13 @@
 ########################################
 
-compiler.obj : $(srcdir)/compiler.c $(srcdir)/compiler.h $(srcdir)/insns.h
-disasm.obj   : $(srcdir)/disasm.c $(srcdir)/yarvcore.h $(srcdir)/compiler.h                   $(srcdir)/insns.h
-yarvcore.obj : $(srcdir)/yarvcore.c $(srcdir)/yarvcore.h
-vm.obj       : $(srcdir)/vm.c $(srcdir)/vm.h $(srcdir)/insnhelper.h $(srcdir)/vm.inc
+compiler.o : $(srcdir)/compiler.c $(srcdir)/compiler.h insns.h
+disasm.o   : $(srcdir)/disasm.c $(srcdir)/yarvcore.h $(srcdir)/compiler.h \
+	     insns.h
+yarvcore.o : $(srcdir)/yarvcore.c $(srcdir)/yarvcore.h
+vm.o       : $(srcdir)/vm.c $(srcdir)/vm.h $(srcdir)/insnhelper.h vm.inc
 
 
 
-vm.inc  : $(srcdir)/insns2vm.rb $(srcdir)/insns.def
-	$(RUBY) $(srcdir)/insns2vm.rb
-
-insns.h : $(srcdir)/insns2vm.rb $(srcdir)/insns.def
-	$(RUBY) $(srcdir)/insns2vm.rb
-
-insns_info.c : $(srcdir)/insns2vm.rb $(srcdir)/insns.def
+vm.inc vmtc.inc insns.h insns_info.c : $(srcdir)/insns2vm.rb $(srcdir)/insns.def
 	$(RUBY) $(srcdir)/insns2vm.rb
 
diff -ru2pN --exclude '*~' --exclude '.*' ../yarv/extconf.rb ext/yarv/extconf.rb
--- ../yarv/extconf.rb	2004-01-06 10:54:23.000000000 +0900
+++ ext/yarv/extconf.rb	2004-01-06 11:28:37.000000000 +0900
@@ -1,40 +1,7 @@
 require 'mkmf.rb'
 
-dir = File.dirname($0) + '/'
-load(dir + 'insns2vm.rb')
-
-oext = '.'+Config::CONFIG['OBJEXT']
-
-open(dir + 'depend', 'w'){|f|
-f.puts(<<EOS)
-
-########################################
-
-compiler#{oext} : $(srcdir)/compiler.c $(srcdir)/compiler.h $(srcdir)/insns.h
-disasm#{oext}   : $(srcdir)/disasm.c $(srcdir)/yarvcore.h $(srcdir)/compiler.h \
-                  $(srcdir)/insns.h
-yarvcore#{oext} : $(srcdir)/yarvcore.c $(srcdir)/yarvcore.h
-vm#{oext}       : $(srcdir)/vm.c $(srcdir)/vm.h $(srcdir)/insnhelper.h $(srcdir)/vm.inc
-
-
-
-vm.inc  : $(srcdir)/insns2vm.rb $(srcdir)/insns.def
-	$(RUBY) $(srcdir)/insns2vm.rb
-
-insns.h : $(srcdir)/insns2vm.rb $(srcdir)/insns.def
-	$(RUBY) $(srcdir)/insns2vm.rb
-
-insns_info.c : $(srcdir)/insns2vm.rb $(srcdir)/insns.def
-	$(RUBY) $(srcdir)/insns2vm.rb
-
-test: all
-	$(RUBY) $(srcdir)/test.rb
-
-check: all
-	$(RUBY) $(srcdir)/ctest.rb
-EOS
-########################################
-}
+have_type("ulong", "sys/types.h")
 
+$objs = %w[compiler.o disasm.o insns_info.o yarvcore.o vm.o]
 
 create_makefile('yarvcore')
diff -ru2pN --exclude '*~' --exclude '.*' ../yarv/insns2vm.rb ext/yarv/insns2vm.rb
--- ../yarv/insns2vm.rb	2004-01-06 10:54:23.000000000 +0900
+++ ext/yarv/insns2vm.rb	2004-01-06 10:55:27.000000000 +0900
@@ -27,5 +27,5 @@ VARS = {
 INSNS = []
 
-$stdout = open(dir + 'vm.inc', 'w')
+$stdout = open('vm.inc', 'w')
 
 ###############################
@@ -45,5 +45,7 @@ print <<EOS
  */
 
+#ifndef HAVE_TYPE_ULONG
 typedef unsigned long ulong;
+#endif
 
 int vm_exec(VALUE self, VALUE bsobj){
@@ -221,5 +223,5 @@ EOS
 ## make file for threaded code
 
-$stdout = open(dir + 'vmtc.inc', 'w')
+$stdout = open('vmtc.inc', 'w')
 
 print(<<EOS)
@@ -250,5 +252,5 @@ EOS
 ## make disasm
 
-$stdout = open(dir + 'insns_info.c', 'w')
+$stdout = open('insns_info.c', 'w')
 print <<EOS
 /**
@@ -348,5 +350,5 @@ EOS
 ## make insns enum
 
-$stdout = open(dir + 'insns.h','w')
+$stdout = open('insns.h','w')
 print <<EOS
 /**


-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread