[#9387] shttpsrv を BOW で動かしたい — Hiroyasu Ohasi <hohasi@...3.so-net.ne.jp>
大橋です。原さんの作られた「shttpsrv.rb」はWindows版のrubyではサクサク動いて
原です。
原です。
[#9390] ruby 1.1c3 hash sort — TEI meiki <tei@...>
こんにちは、鄭です。
[#9416] shttpsrv-1.0.1 & grepsvr-1.1.2 — Shin-ichro Hara <sinara@...>
原です。
[#9437] ruby 1.1c4 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#9456] on GNU-Win32 — wakou@... (Wakou Aoyama)
青山です。
[#9463] Re: inspect の動作 — Makoto Tagusari <mtag@...2.so-net.or.jp>
皆さんこんにちは、田鎖です。
まつもと ゆきひろです
わたなべです.
まつもと ゆきひろです
[#9475] gtk — "D.Kanda" <MAP2303@...>
[#9493] profiler — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#9503] ruby 1.1c5 released — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#9514] an unkown bug — greentea@...2.so-net.or.jp (Tomoyuki Kosimizu)
こんにちは、越水です。
[#9518] Make Ruby Fast — kjana@... (YANAGAWA Kazuhisa)
いつも手元の ruby が遅いとお悩みのあなた,gcc でないと最適化オプショ
[#9520] slanglib の組込みで質問 — Hiroyasu Ohasi <hohasi@...3.so-net.ne.jp>
BOWユーザーの大橋です。
きくたにです。
rubyが好きなBOWユーザーの大橋です。
[#9545] sprintf() — greentea@...2.so-net.or.jp (Tomoyuki Kosimizu)
こんにちは、越水です。
[#9557] getoptlong — Motoyuki Kasahara <m-kasahr@...>
SRA の笠原と申します。はじめまして。
[#9563] Internal compiler error on hpux10.20 — Inoue Hiroaki <norio@...>
はじめまして、井上と申します。
[#9570] ruby-gtk-0.11 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
こんにちは、山下 純司です。
まつもと ゆきひろです
まつもと ゆきひろです
[#9573] filter — gotoken@... (GOTO Kentaro)
ごとけんです
原です。
原です。
まつもと ゆきひろです
原です。
まつもと ゆきひろです
原です。
ごとけんです
まつもと ゆきひろです
ごとけんです
原です。
ごとけんです
[#9610] rename all file names to uppercase — Kikutani Makoto <kikutani@...>
「カレントディレクトリの下のファイル全部をディレクトリも含めて
[#9613] can't clone Fixnum — Kikutani Makoto <kikutani@...>
前田さんのruby-jedパッチをJed 0.98.7+J0.5.3に無理やりあてて
前田です。
Mon, Sep 21, 1998 at 06:44:30PM +0900 において
まつもと ゆきひろです
回答どうもです。
まつもと ゆきひろです
Tue, Sep 22, 1998 at 01:07:22PM +0900 において
まつもと ゆきひろです
前田です。
Tue, Sep 22, 1998 at 02:01:37PM +0900 において
[#9624] join me — Toru Hoshina <toru@...>
Join me.
はじめまして、保科ともうします。
こんにちは 小澤@日立 です。
[#9626] nif.rb (ver0.14) — Wakou Aoyama <wakou@...>
青山です。
渡辺哲也です。
渡辺哲也さん wrote:
Tue, Sep 22, 1998 at 12:58:23PM +0900 において
松尾です。
まつもと ゆきひろです
松尾です。こんばんは。
まつもと ゆきひろです
松尾です。こんにちは。
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
けいじゅ@日本ラショナルソフトウェアです.
まつもと ゆきひろです
[#9670] how to create a instance dinamically using String class. — Masato Taruishi <taru@...>
立石です。
けいじゅ@日本ラショナルソフトウェアです.
けいじゅ@日本ラショナルソフトウェアです.
前田です。
まつもと ゆきひろです
前田です。
[#9702] [HAMATTA!] != — Shin-ichro Hara <sinara@...>
原です。
まつもと ゆきひろです
まつもと ゆきひろです
原です。
まつもと ゆきひろです
原です。
まつもと ゆきひろです
原です。
[#9770] ruby-jed SEGV — Kikutani Makoto <kikutani@...>
きくたにです。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
まつもと ゆきひろです
前田です。
[#9780] how to make ext modules on win32 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
わたなべです.
[ruby-list:9722] Re: nif.rb (ver0.14)
まつもと ゆきひろです
In message "[ruby-list:9706] Re: nif.rb (ver0.14)"
on 98/09/24, Yukihiro Matsumoto <matz@netlab.co.jp> writes:
||といってもフルに機能を使ったわけではないので、適当なものを「これがOODB
||です」といって渡されればその機能の範囲内で納得してしまうかも。
|
|lib/pstore.rbを渡して納得…できないでしょうね.o_dbm.rbの方
|では…やっぱり無理かなあ.o_dbm.rbの方はcontribにあります.
pstore.rbはトランザクション毎に全部のデータをメモリに読み書
きするんでデータ量が増えるとだめでしょうね.ある程度の規模で
も動作するdbmを使ったdstore.rbってのを作ってみました.
こういうのが10分で作れるのがRubyの良いところですね.
--
#
# How to use:
#
# db = DStore.new("/tmp/foo")
# db.transaction do
# p db.roots
# ary = db["root"] = [1,2,3,4]
# ary[0] = [1,1.5]
# end
# db.transaction do
# p db["root"]
# end
require "marshal"
require "dbm"
class DStore
class Error < StandardError
end
def initialize(file)
@dbm = DBM.open(file)
@transaction = false
@filename = file
@abort = false
end
def in_transaction
raise Error, "not in transaction" unless @transaction
end
private :in_transaction
def [](name)
in_transaction
value = @table[name]
if value == nil
value = @dbm[name]
if value == nil
raise Error, "undefined root name `%s'" % name
end
@table[name] = value = Marshal.load(value)
end
value
end
def []=(name, value)
in_transaction
unless name.kind_of? String
raise TypeError, "root name should be String"
end
@table[name] = value
end
def roots
in_transaction
@dbm.keys
end
def root?(name)
in_transaction
@table.key? name or @dbm.key? name
end
def path
@filename
end
def commit
@abort = false
throw :pstore_abort_transaction
end
def abort
@abort = true
throw :pstore_abort_transaction
end
def transaction
raise Error, "nested transaction" if @transaction
begin
@transaction = true
value = nil
@table = {}
begin
catch(:pstore_abort_transaction) do
value = yield(self)
end
rescue Exception
@abort = true
raise
ensure
for k, v in @table
@dbm[k] = Marshal.dump(v)
end
@abort = false
end
ensure
@transaction = false
end
value
end
end
if __FILE__ == $0
db = DStore.new("/tmp/foo")
db.transaction do
p db.roots
ary = db["root"] = [1,2,3,4]
ary[0] = [1,1.5]
end
db.transaction do
p db["root"]
end
end