[#42503] floatの値がずれる — Sato Hiroshi <hirocy.f01@...>
hirocyと申します.
33 messages
2006/07/04
[#42504] Re: floatの値がずれる
— rubikitch <rubikitch@...>
2006/07/04
From: Sato Hiroshi <hirocy.f01@plala.to>
[#42505] Re: floatの値がずれる
— Sato Hiroshi <hirocy.f01@...>
2006/07/04
hirocyです.るびきちさん,ありがとうございます.
[#42506] Re: floatの値がずれる
— Sato Hiroshi <hirocy.f01@...>
2006/07/04
続けてですみません.hirocyです.
[#42509] Re: float の値がずれる
— Shin-ichiro HARA <sinara@...>
2006/07/04
原です。
[#42536] Array#default — take_tk <ggb03124@...>
たけ(tk)です
16 messages
2006/07/06
[#42544] Re: Array#default
— Yukihiro Matsumoto <matz@...>
2006/07/06
まつもと ゆきひろです
[#42569] JVN、スクリプト言語「Ruby」の2件の脆弱性情報を公表 — Takahiro Kambe <taca@...>
こんばんは。
19 messages
2006/07/11
[#42570] Re: JVN、スクリプト言語「Ruby」の2件の脆弱性情報を公表
— Yukihiro Matsumoto <matz@...>
2006/07/11
まつもと ゆきひろです
[#42572] Re: JVN、スクリプト言語「Ruby」の2件の脆弱性情報を公表
— Takahiro Kambe <taca@...>
2006/07/11
In message <1152619872.835566.21152.nullmailer@x31.priv.netlab.jp>
[#42575] Re: JVN、スクリプト言語「Ruby」の2件の脆弱性情報を公表
— Yukihiro Matsumoto <matz@...>
2006/07/11
まつもと ゆきひろです
[#42578] Re: JVN、スクリプト言語「Ruby」の2件の脆弱性情報を公表
— Kazuhiko <kazuhiko@...>
2006/07/12
かずひこです。
[#42579] Re: JVN、スクリプト言語「Ruby」の2件の脆弱性情報を公表
— Tanaka Akira <akr@...>
2006/07/12
In article <87irm334qa.wl%kazuhiko@fdiary.net>,
[#42592] Re: JVN、スクリプト言語「Ruby」の2件の脆弱性情報を公表
— Takahiro Kambe <taca@...>
2006/07/19
こんばんは。
[#42599] includeされたmoduleからの定数参照 — 二宗 崇 <nisyu@...>
にしゅうです。
5 messages
2006/07/26
[#42608] Debug Assertion Failed! on stable-snapshot — Shusaku <tsyk@...>
Shusakuです。
5 messages
2006/07/28
[ruby-list:42596] callcc (Ruby vs Scheme)
From:
rubikitch <rubikitch@...>
Date:
2006-07-26 09:16:36 UTC
List:
ruby-list #42596
るびきちです。
Schemeのcall-with-current-continuationをRubyで試そうとしていますが、
うまくいきません。
(define list-length
(lambda (obj)
(call-with-current-continuation
(lambda (return)
(letrec ((r
(lambda (obj)
(cond ((null? obj) 0)
((pair? obj)
(+ (r (cdr obj)) 1))
(else (return #f))))))
(r obj))))))
(list-length '(1 2 3 4)) => 4
(list-length '(a b . c)) => #f
これをRubyで試そうにも二番目のテストがfalseを返してくれません。
どこか問題があるのでしょうか?
require 'test/unit'
def pair?(x)
Array === x
end
def null?(x)
x == []
end
def cdr(x)
x[1]
end
def list_length(obj)
callcc do |_return|
r = lambda{|obj_|
if null?(obj_)
0
elsif pair?(obj_)
r[cdr(obj_)] + 1
else
puts "end"
_return.call[false]
end
}
r[obj]
end
end
class TestCallCc < Test::Unit::TestCase
def test_callcc
assert_equal 4, list_length([1,[2,[3,[4,[]]]]])
# "end"は出力されるがnilを返してしまう
assert_equal false, list_length([:a,[:b,:c]])
end
end
--
rubikitch
http://www.rubyist.net/~rubikitch/