Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_0_2_1_0__0120910200.rb

2 views
Skip to first unread message

YAMAGUTIseisei

unread,
Feb 10, 2019, 8:27:54 AM2/10/19
to
1428,1429c
# stack.ps rg['sp']
stack.p = rg['sp']
.
1415c
# lpl.plini
plini(@@rmth, lpl) # 310200plini ?
# lpl.plini(@@rmth) # 410200plini
.
1413c
# rg['ctr', 1] = rg['ctr', 1].absb
# rg['ctr', 1] = absb(rg['ctr', 1])

# unless lpl.ctr_c {Slp.new.slp}
.
1411c
# unless fl.flatten[0]
if fl.empty? # && ! pco # d~ng
.
1399d
1392c
# ise<< iset(rg) if 0 <= rg['pc', nil, '-'] && pctj.pop != rg['pc'] # p # cp
ise<< iset(rg) if 0 <= rg['pc', nil, ?-] && pctj.pop != rg['pc'] # p # q # cp
.
1379d
1376,1377c
# ise.delete_if(&:resume)
ise.delete_if__c(1) { |fis, n| fis.resume}
.
1343c
# callinfo.pd
callinfo.p -= 1
.
1340c
# rg['pc', -1] = @callinfo[@cp] + 1
.
1336c
# callinfo.pd
callinfo.p -= 1
.
1329c
# callinfo.pd
callinfo.p -= 1
.
1319c
# if 0 == callinfo.pg
if 0 == callinfo.p
.
1233,1260d
1141,1142c
# fibi(@@iset2 ||= iset2, rgd, 0) {|rgd| rgd &&= nil}
fibi(@@iset2 ||= iset2, rgd) {rgd &&= nil}
.
1130,1139d
1128d
1116d
1108,1113d
1104,1105d
1101d
1089,1099c
# if rg
# ini.(rg) # c
# end
rg && ini.(rg) # c
.
1081,1082d
1070,1074c
# case k
# when 'th' then fv = fvl[oi <=> 0].(oi) # c
# end
# lopa.push(k, fv)
lopa.push(k, 'th' == k ? fvl[oi <=> 0].(oi) : fv) # c
.
1062,1065c
# opg = ->(oi, lopa = []) { # l
# i = -1
opg = ->(oi, lopa = []) { i = -1 # l
.
1053,1057d
1050c
# th = [] ##
.
1048c
bt = imem.fml('th', 'bt') # [1 .. -1]
.
1041c
))
.
1033c
# fml = imem.fml('th', sym) || (
fml = [sym] + (imem.fml('th', sym) || (
.
1030,1031c
pc, sp, cop, sym = rg # .to_a('pc', 'sp', 'cop', 'sym')
.
1028d
1026c
# pc1, fml, oa, th = nil
pc1, fml, oa, th, cop = nil
.
1012,1018c
# pc, sp, cop, sym = nil

.
1006,1007c
# fibi(@@fls2 ||= fls2, pc) {|pc| 0 > pc ? ~ pc : pc}
fibi(@@fls2 ||= fls2, pc, 1) {0 > pc ? ~ pc : pc}
.
994,1004d
982d
978,979c
# sp ||= s.ps(pl[i_sp][0])
sp ||= s.p = pl[i_sp][0]
pr || (pr, sy, mt = imem.fml('st', sym)) #[1 .. -1])
.
976d
972,973c
f = flg.all? # && r.all? { |f| case f when Numeric then true end}
.
960,962d
952d
947,948c
# lm.(isr0, s[(sz = plr.size) .. sz + ap = (ap >>= 1) + (ap >> 1)]) # c
lm.(isr0, s[(sz = plr.size) .. sz + ap = (ap += ap >> 1) >> 1]) # c
.
943,945d
936,938c
# r[0] = plr[r[1]] || lm.(isr0, r[1]) # c # r[0] ??
# _ = (_ = plr[r[1]]).nil? ? lm.(isr0, r[1]) : _ # c
pc1 = (pc1 = plr[r[1]]).nil? ? lm.(isr0, r[1]) : pc1 # c
# s[r[1]] = sy ? [s[r[1]], _].inject(sy) : _
s[r[1]] = sy ? [s[r[1]], pc1].inject(sy) : pc1
.
927,928c
# )][0] - 1
(pc1 = ~ pc + 1) - 1
.
922,924c
# ini = ->(pc) { [pc1 = ~ pc + 1, (
ini = ->(pc) {
.
916,918c
# sz = 4; ap = @@fls_w ||= (1 << sz)
ap = 1 << sz = 4; ap = @@fls_m ||=
.
914d
904,905d
888c
# @@fls_w, @@fls_m = nil
@@fls_m = nil
.
874d
868,869c
# Fiber.new { |m = 1|
# ctr.times {m = Fiber.yield(false)}
Fiber.new { |m = 1| ctr.times {m = Fiber.yield(false)}
.
856a

# include M__PlIni # 310200plini ? # ok ? ( osx10.4/ppc 1koa ) # omoi ? ( osx10.4/ppc 2koa )

# module M__PlIni # osx/ppc http://master.dl.sourceforge.net/project/hpc/OldFiles/gcc-bin.tar.gz#4p3__3.400 #gcc-tiger-bin.tar.gz#4p1__1.400 # cctools-590.36.dmg
# def plini
def plini(rmth = nil, pl = self)
thini = false
pl0i = ['th', 'sym', 'ctr']

# 3080410200 : gene gc off : mruby 6170410200 d17506c1
# 3080410200 : 5x2 ng ( segmentation fault ) : mruby 3080410200 0878900f
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # http://www.monami-ya.jp/
# mruby 20410200 : higokan ? : ary_many
# mruby 70410200 : 4x2 ok , 5x2 ng
# self[0] = [['th', [[thini]]], ['sym', [6309]], ['ctr', []]]
# self[0] = [[pl0i[0], [[thini]]], [pl0i[1], [6309]], [pl0i[2], []]]
pl[0] = [[pl0i[0], [[thini]]], [pl0i[1], [6309]], [pl0i[2], []]]
# pl[0] = [[[thini]], [68000], []].map.with_index { |v, i| [pl0i[i], v]}


# if 1 < self.size # self.size : 0 ?? # higokan ? mruby:70410200 monami-ya.mrb:60510200
# self.replace(self[0 .. self.size & ((n = @@rmth + 1) << 1) | n]) # ?? # higokan ? mruby:70410200 monami-ya.mrb:60510200
# self.slice!((self.size & ((n = @@rmth + 1) << 1) | n) + 1 .. -1) # higokan mruby:70410200 monami-ya.mrb:60510200

# self[1] && self[0 .. -1] =
# self[0 ... self.size & ((n = @@rmth + 1) << 1) | n]
pl[1] && pl[0 .. -1] = pl[0 .. pl.hgt & ((n = rmth + 1) << 1) | n]

# ref_pl0i
pl.ref_pl0i
end
# end


.
835c
# @pl = ENVary.new
# @pl = ENVary.new(true) # 410200plini
plini(@@rmth, @pl = ENVary.new(true)) # 310200plini ?
.
743d
731,741c
# def pg() @p end
# def pi() @p += 1 end
# def pd() @p -= 1 end

# def ps(i)
## id = self.object_id
## a.empty? || @p = a[0]
# @p = i
## @p
# end
.
711d
703c
# attr_accessor :p
attr_accessor :p, :s
.
681c
# @@f = ''
@@f = 0x0.chr * 0x20
.
662,663d
642,643c
sl = @@slp
# (sl = @@slp).slp
.
628,632c
# pl_es(pc, ['th', th]); sl.slp(0) # (0, 4096)
pl_es(pc, ['th', th]); sl.slp 0 # (0, 4096)
# true) && idx >= mx)
f) && idx >= mx)
.
626d
619,624c
th[idx] = s_id(th[idx], pc - 1) #### if ckth(th[idx], 0) # fuguai taisaku
.
614c
# f = nil; mx = nil
f, mx = nil
.
603d
591,592c
# knid(a, :Array) ? __method__(a, pc) : a # s_id(a, pc) : # 310200plini ?
case a when Array then __method__(a, pc) else a end # s_id(a, pc) else # 310200plini ?
.
587,588c
# (tb == a || knid(a, :Array).! || 0 >= a.hgt) && (return a)
# (tb == a || case a when Array then 0 >= a.hgt end) && (return a)
((tb = TB) == a || case a when Array then 0 >= a.hgt end) && (return a)
.
585d
583c
# tb = TB
.
570d
568d
526,531c
c = pl_g(0).afl('ctr', self)
[c.shift, pl_es(0, ['ctr', c])][0]
.
524c
# cta = pl_g(0).afl('ctr', self)
# [cta.shift, pl_es(0, ['ctr', cta])][0]
.
514,520c
# if 0 == n
# lpl[n]
# else
# @@Plmg.(@@pl0i, lpl[n]) # c
# end
lpl = lpl[n]; 0 == n ? lpl : @@Plmg.(@@pl0i, lpl) # c
.
512d
481d
470,471d
467,468d
455c
##p to_ia(n, pl)
.
434d
380,381d
364,365d
361,362c
# include M__PlIni # 410200plini # ok ? ( osx10.4/ppc 1koa )
.
344,359d
336c
a || return

# plini
# plini(@@rmth) # 410200plini
.
331,332c
# def initialize(*a)
def initialize(a = nil)
.
303a

# module M__PlIni # Omoi ?


.
294,295c
# case op[0] when Numeric then op.inject(:+) else self.__send__(*op) end
case op[0] when Numeric then op.inject(:+) else __send__(*op) end
.
285c
# a[@@I_s__r1 + 1].map{ |v| v.nil? ? v : send(*a[0 .. @@I_s__r0 + 1], v)}
return a[i_s__r1].map{ |v| v.nil? ? v : send(*a[0 .. @@I_s__r0 + 1], v)}
.
283c
# case a[@@I_s__r1 + 1]
case a[i_s__r1 = @@I_s__r1 + 1]
.
271,279c
# def s__sr0( *a) a[@@I_s__s][ a[@@I_s__r0]] end
# def s__r0( *a) a[@@I_s__r0] end
# def s__sr01( *a) a[@@I_s__s][ a[@@I_s__r0] + 1] end
# def s__i_pool_r0( *a) a[@@I_s__i].pool[a[@@I_s__r0]] end
# def s__i_syms_r0( *a) a[@@I_s__i].syms[a[@@I_s__r0]] end
# def s__r1_eq_sr01(*a) a[@@I_s__s][ a[@@I_s__r1]] == a[@@I_s__s][a[@@I_s__r0] + 1] end

def s__sr0( *a) a[@@I_s__s][ a[@@I_s__r0]] end
def s__r0( *a) a[@@I_s__r0] end
def s__sr01( *a) a[@@I_s__s][ a[@@I_s__r0] + 1] end
# def s__i_pool_r0( *a) a[@@I_s__i].pool[ a[@@I_s__r0]] end
# def s__i_syms_r0( *a) a[@@I_s__i].syms[ a[@@I_s__r0]] end
def s__i__r0( *a) a[@@I_s__i].send(a[@@I_s__mt])[a[@@I_s__r0]] end
def s__r1_eq_sr01(*a) a[@@I_s__s][ a[@@I_s__r1]] ==
a[@@I_s__s][ a[@@I_s__r0] + 1] end
.
267,269c
# @@I_s__i = 0; @@I_s__s = 1; @@I_s__r0 = 2; @@I_s__r1 = 3
@@I_s__i = 0; @@I_s__s = 1; @@I_s__r0 = 2; @@I_s__r1 = 3; @@I_s__mt = 4
.
212a
def ta(l, cop) [l[0] || :getarg_a, l[1] || cop][0 .. l[2] || 1] end

.
208,210c
# @@fml.(lb).assoc(sym) # c
## (f = @@fml).(lb).assoc(sym) # c
@@fml.(lb).assoc(sym)[1 .. -1] # c
# (f = @@fml).(lb).assoc(sym)[1 .. -1] # c
.
185,186c
# [:MOVE, :__sr0], [:LOADL, :__i_pool_r0],
# [:LOADI, :__r0 ], [:LOADSYM, :__i_syms_r0],
[:MOVE, :__sr0], [:LOADL, :__i__r0, nil, :pool],
[:LOADI, :__r0 ], [:LOADSYM, :__i__r0, nil, :syms],
.
156,157c
@@slp = (((@@slp = NSL_ >> 2) + (@@slp >> 5)) >> 7) + 1 >> 1 # conf.gem :github => 'matsumotory/mruby-sleep' # msleep usleep
.
133,148d
110,130c
# f = ! a
# a ||= self
(f = ! a) && a = self
# unless i then a.delete_if(&:yield) else a.each_with_index { |v, n|
# break if n >= i; v && yield(v, n) && a.delete_at(n)} end

(i > n = a.size) && i = n
# n = 0; c = -1
c = (n = 0) - 1
while i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
a[n] && yield(a[n], c) && a.delete_at(n) || n += 1
# (v = a[n]) && yield(v, c) && a.delete_at(n) || n += 1
end
.
108d
105d
71c
# def absb
# def absb(i)
## self + (((0 <=> self) + 1 >> 1 << 0x10) - 1 & self << 1)
# i + (((0 <=> i) + 1 >> 1 << 0x10) - 1 & i << 1)
# end
.
19c
NSL_ = 6309 # nanosleep()
.
15c
# :ctr_s, :p
:ctr_s, :p, :s
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net tel:081-70-5152-1104
heiwa furiisekkusu 1tu

YAMAGUTIseisei

unread,
Mar 17, 2019, 5:57:48 AM3/17/19
to
1335d
1318c
# Slp.new.slp unless lpl.ctr_c
.
1312d
1301c
# (pctj<< (pco = rg['pc']) + 1) if ?J == rg['sym'].to_s[0] # p # q
(pctj<< 1 + pco = pc) if ?J == sym.to_s[0] # p # q
.
1297c
# fl<< fls(rg['pc']) # p
fl<< fls(pc) # p
.
1292,1294c
# if ?J != rg['sym'].to_s[0] && ! [:ENTER, :SEND, :RETURN, :NOP].include?(rg['sym']) # q
if ?J != sym.to_s[0] && ! [:ENTER, :SEND, :RETURN, :NOP].include?(sym) # q
ise<< iset(rg) if 0 <= rg['pc', nil, ?-] && pctj.pop != pc # p # q # cp
.
1290c
# lpl.verb "#{rg['pc'].to_xeh} #{rg['sym']} #{rg['cop'].to_xeh}" # if rg['sym']
lpl.verb "#{pc.to_xeh} #{sym} #{rg['cop'].to_xeh}" # if sym
.
1286c
# c, sym = @@opf.(irep, rg['pc'], imem) # c
c, sym = @@opf.(irep, pc = rg['pc'], imem) # c
.
1281c
# fl.delete_if__c(1) { |v, n| v.resume(n)}
fl.delif_c(1) { |v, n| v.resume(n)}
.
1278,1279c
# ise.delete_if__c(1) { |fis, n| fis.resume}
ise.delif_c(1) { |fis, n| fis.resume}
.
1244d
1240d
1236d
1228d
1217d
1153d
1141d
1130d
1090c
# end
.
1078c
# def opf(irep, pc)
.
1067,1068c
# fibi(@@iset2 ||= iset2, rgd) {rgd &&= nil}
# fibi(@@iset2 ||= iset2, rgd) {rgd && nil}
fibi(@@iset2 ||= iset2, rgd) {nil}
.
1065d
1051a
# [thi, th] ###
.
1047a
rg && ini.(rg) # c
.
1043,1046d
1031c
# end
.
1023,1029c
# bt[oi].each_slice(2) { |k, v|
# fv = fml[i += 1]
bt[oi].each_slice(2) { |k, v| fv = fml[i += 1]
# if v # && knid(fv, :Array)
v && # knid(fv, :Array) &&
.
1019,1020d
1010,1012c
bt = imem.fml('th', 'bt')
.
996,999c
## printf("Unkown code %s \n", OPTABLE_SYM[imem.get_opcode(cop)])
## printf("Unkown code %s \n", OPTABLE_SYM[rou(:get_opcode, cop)])
## printf("Unkown code %s \n", OPTABLE_SYM[@@rou.(:get_opcode, cop)]) # c
# pl.verb("Unkown code #{sym} ") # .to_s
.
993,994d
988d
986d
979,980d
973,974c
# fibi(@@fls2 ||= fls2, pc, 1) {0 > pc ? ~ pc : pc}
fibi(@@fls2 ||= fls2, ~ pc, 1) {0 > pc ? ~ pc : pc}
.
970c
# pc = ~ pc
.
958c
pr || (pr, sy, mt = imem.fml('st', sym))
.
956d
952c
f = flg.all? # && r.all? { |f| # case f when Numeric then true end}
# case f when Numeric then true else lpl.verb(f); false end}
.
941a
# ca = ca.force #? mruby 410200
.
934c
# ]
] # .lazy #? mruby 410200
.
930,932c
# 0 == s.size ? sl.slp(0) : plr +=
0 == s.size ? sl.slp(0) :
# [sl.slp(0),
# plr +=
# lm.(isr0, s[(sz = plr.size) .. sz + ap = (ap += ap >> 1) >> 1]) # c
plr += lm.(s[(sz = plr.size) .. # c
sz + (ap = (ap += ap >> 1) >> 1) + (ap <=> 0)])
# ].lazy.to_a[s.s.size <=> 0] # .force
.
922,924c
# pc1 = (pc1 = plr[r[1]]).nil? ? lm.(isr0, r[1]) : pc1 # c
pc1 = (pc1 = plr[r[1]]).nil? ? lm.(r[1]) : pc1 # c
.
916,917c
## lm = ->(isr0, r1) {r1.nil? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {r1.nil? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(isr0, r1) {imem.send(pr, *isr0, r1, mt)} # l
lm = ->(r1) {imem.send(pr, *isr0, r1, mt)} # l
.
912d
908d
903,904c
# ap = 1 << sz = 4; ap = @@fls_m ||=
ap = 1 << sz = 3; ap = @@fls_m ||=
.
901c
# f = false; flg = [false, false]
flg = [f = false, f]
.
860,861c
# loop {
# sl.slp 0
loop { sl.slp 0
.
857,858d
840d
836,838c
# pl[1] && pl[0 .. -1] = pl[0 .. pl.hgt & ((n = rmth + 1) << 1) | n]
0 < pl.hgt && pl[0 .. -1] =
pl[0 .. pl.hgt & ((thini = rmth + 1) << 1) | thini]
.
826,828c
# pl[0] = [[pl0i[0], [[thini]]], [pl0i[1], [6309]], [pl0i[2], []]]
pl[0] = [[pl0i[0], [[thini]]], [pl0i[1], [NSL_]], [pl0i[2], []]]
.
823c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # www.monami-ya.jp
.
816d
790c
plini(@@rmth, @pl = ENVary.new(true)) # 310200plini
.
788d
690,696d
681d
667d
658d
635,636c
# @@f = 0x0.chr * 0x20
@@f = [0x0.chr * 0x20] * 0x4
.
618c
# fpl = delete_if__c(1, fpl) { |fb, n| fb.resume}
fpl = delif_c(1, fpl) { |fb, n| fb.resume}
.
602,603d
599d
583,588c
# Fiber.yield((f = #### th[idx].nil?.! && # fuguai taisaku
Fiber.yield(((f = #### th[idx].nil?.! && # fuguai taisaku
# ckth(th[mx = thn.hgt], 3)) && (
ckth(th[mx = thn.hgt], 3)) ? (
pl_es(pc, ['th', th]); sl.slp 0 # , 4096
# f) && idx >= mx)
f) : nil) && idx >= mx)
.
579c
Fiber.new { ##
.
576d
563,565c
case a when Numeric then true end || # (
# verb "#{pc.to_xeh} #{a} #{op.to_xeh}")
verb("#{pc.to_xeh} #{a} #{op.to_xeh}")
.
554,555c
# knid(a, :Array) ? __method__(a, pc) : a # s_id(a, pc) : #? mruby 310200
case a when Array then __method__(a, pc) else a end # s_id(a, pc) else #? mruby 310200
.
550,551c
# ((tb = TB) == a || case a when Array then 0 >= a.hgt end) && (return a)
((tb = TB.dup) == a || case a when Array then 0 >= a.hgt end) && (return a)
.
546c
# tb = TB
.
532,536c
# def verb(s)
# @@m.lock
# puts s
# @@m.unlock
# end
def verb(s) @@m.lock; puts s; @@m.unlock end
.
515c
# bfsz = (a = [knid(th, :Array), [] == th]).size # t
bfsz = (a = [knid(th, :Array), tb == th]).size
.
513a
tb = TB.dup
.
482,489c
# def to_ia(n, lpl = self)
# lpl = lpl[n]; 0 == n ? lpl : @@Plmg.(@@pl0i, lpl) # c
# end
.
473a
# pl[i_k = self.afl(k, ?i)] =
# (pl[i_k]<< v)['ctr' == k && knid(v, :Array).! ? 0 .. -1 : -1] # p # ?
.
430,434d
387,398d
378,379c
# @@loc.ploc(n) { |a| JSON::parse(ENV[@@idb + a[0]])}
@@loc.ploc(n) { |a| (a = ENV[@@idb + a[0]]) &&
.
368c
@@loc.ploc(n, v) { |a| ENV[@@idb + a[0]] = JSON::generate(a[1])}
.
345,363d
336,338c
# 1.step(@@rmth + 1) { |i|
# self[i] = *a
# }
1.step(@@rmth + 1) { |i| self[i] = *a}
.
332d
325d
322a


@@loc = Loc.new(@@fl)
.
294a
module M__Loc
@@slp = Slp.new

def initialize(nm)
@nm = nm
end

def ploc(*a)
# s = nil
# @m.lock
begin
f = File.open(@nm, ?w) # q
f.flock(File::LOCK_EX)
rescue
# f.close # ?
@@slp.slp 0
# (s ||= @@slp).slp 0
retry
end ## if flg
a[0] = a[0].to_xeh
[yield(a), ## flg &&
f.close][0]
# @m.unlock][0]
# a = yield(r)
end
end

class Loc
include M__Loc
end


.
284d
281,282d
274,276c
# return a[i_s__r1].map{ |v| v.nil? ? v : send(*a[0 .. @@I_s__r0 + 1], v)}
return a_r1.map{ |v| v.nil? ? v : __send__(*a[0 .. @@I_s__r0 + 1], v)}
# else send(*a)
else __send__(*a)
.
271,272c
# case a[i_s__r1 = @@I_s__r1 + 1]
case a_r1 = a[@@I_s__r1 + 1]
.
253,259d
250d
188,191c
# @@fml.(lb).assoc(sym)[1 .. -1] # c
## (f = @@fml).(lb).assoc(sym)[1 .. -1] # c
@@fml.(lb).assoc(sym)[1 .. -1] || ( # c
# (f = @@fml).(lb).assoc(sym)[1 .. -1] || ( # c
# printf("Unkown code %s \n", OPTABLE_SYM[imem.get_opcode(cop)])
# printf("Unkown code %s \n", OPTABLE_SYM[rou(:get_opcode, cop)])
# printf("Unkown code %s \n", OPTABLE_SYM[@@rou.(:get_opcode, cop)]) # c
print("Unkown code #{sym} \n") # .to_s
return nil
# raise
## rg = Fiber.yield(nil)
)
.
184d
163,164d
138a
# t += 1 - (t <=> 0)
.
135a
# @@slp = (((@@slp = NSL_ >> 1) + (@@slp >> 5)) >> 8) + 1 >> 1
.
123c
# a[n] && yield(a[n], c) && a.delete_at(n) || n += 1
a[n] && yield(a[n], c) && (a.delete_at(n); redo); n += 1
.
120d
113,117c
# (f = ! a) && a = self
a ||= f = self # a ||= (f = true; self)
# i.! ? a.delete_if(&:yield) : a.each_with_index { |v, n|
# break if n >= i; v && yield(v, n) && a.delete_at(n)}
.
111c
# def delete_if__c(i, a = nil)
def delif_c(i, a = nil)
.
109d
102c
# ?i != m ? self[m.afl(k, ?i)] : self[0].index(self[0].assoc(k)) # self.index(idx) # q 2
?i != m ? self[m.afl(k, ?i)] : (self0 = self[0]).index(self0.assoc(k)) # self.index(idx) # q 2
## ?i != m ? self[m.afl(k, ?i)] : loop {self[0].index(self[0].assoc(k)) && break} # self.index(idx) # fuguai taisaku # q 2
# ?i != m ? self[m.afl(k, ?i)] : loop {(self0 = self[0]).index(self0.assoc(k)) && break} # self.index(idx) # fuguai taisaku # q 2
.
15d
4,5c
# :Array, :Numeric, :Fixnum, # :Float, :Bignum,
# :Symbol, :String, # :Object,
:Array, :Numeric, :Fixnum, :Symbol, :String,
.
2a
# Thread.new((((((((([

YAMAGUTIseisei

unread,
Apr 21, 2019, 6:43:01 AM4/21/19
to
1325c
## @rmt.join
.
1318,1319d
1311,1315c

.
1288,1289d
1271d
1266,1267c
# fl<< fls(pc) # p
fl<< fibi(@@fls ||= fls, ~ pc, 1) { |pc| 0 > pc ? ~ pc : pc} # p
.
1263c
# ise<< iset(rg) if 0 <= rg['pc', nil, ?-] && pctj.pop != pc # p # q # cp
0 <= rg['pc', nil, ?-] && pctj.pop != pc && ise<< fibi(@@iset ||= # cp # q # p
### iset, rg) {nil} # ?
# iset, rg.to_a('pc', 'sp', 'cop', 'sym')) {nil}
## iset, rg) {} # ?
iset, rg.to_a('pc', 'sp', 'cop', 'sym')) {}

.
1261d
1258,1259c
# lpl.verb "#{pc.to_xeh} #{sym} #{rg['cop'].to_xeh}" # if sym
loc.verb "#{pc.to_xeh} #{sym} #{rg['cop'].to_xeh}" # if sym
.
1247d
1244d
1078,1079d
1067a
loc = @@loc
.
1035,1043c
# @@iset2 = nil
@@iset = nil
# def iset(rg)
## rgd = rg.dup
# rgd = rg.to_a('pc', 'sp', 'cop', 'sym')
#
## fibi(@@iset2 ||= iset2, rgd) {nil}
# fibi(@@iset ||= iset, rg.to_a('pc', 'sp', 'cop', 'sym')) {nil}
# end
.
1030a
oa.empty? || oa.clear
.
1027c
# rg, m = Fiber.yield(0 != thi && ht <= thi && (thi = -1; true)) ##
rg, m = Fiber.yield(0 != thi && ht <= thi && ! ! thi = -1) ##
.
1025d
1021c
# pl.pl_es(pc1, opg.(thi) + [oa, []][thi <=> 0]) # c
pl.pl_es(pc1, opg.(thi) + oa) # c
.
1013,1014d
1006a
# lopa.push(k, 'th' != k ? fv : ( #? mruby 410200
## lopa.push(k, 'th' != k ? fv : fvl.force[oi <=> 0].(oi)) # c #? mruby 410200
# case fvl when Array then else fvl = fvl.force end # higokan mruby 70410200 #? mruby 410200
# knid(fvl, :Array) || fvl = fvl.force #? mruby 410200
# fvl[oi <=> 0].(oi))) # c
.
1004d
1001,1002d
999c
# opg = ->(oi, lopa = []) { i = -1 # l
opg = ->(oi, lopa = [], i = -1) { # l
.
997c
((ht = fv.hgt) <=> oi) >> 1]}] # .lazy #? mruby 410200
.
978,981d
976c
pc, sp, cop, sym = rg ## .to_a('pc', 'sp', 'cop', 'sym') # ?
.
965,966c
# def iset2 ##
def iset ##
.
956,963c
# @@fls2 = nil
@@fls = nil
# def fls(pc)
# fibi(@@fls2 ||= fls2, ~ pc, 1) {0 > pc ? ~ pc : pc}
# end
.
948,949c
# isr0 = [i, s, r0]
isr0 = [mt ? i : s, r[0]]
sz = plr.size
# ca[flg[1] ? 0 : 1].(r) # c
ca[
# ca.force[ #? mruby 410200
flg[1] ? 0 : 1].(r) # c
.
940,941c
f = flg.all? # && r.all? { |f|
# case f when Numeric then true else @@loc.verb(f); false end}
.
929d
924c
# lpl.verb "#{pc.to_xeh} #{sym} #{r[0].to_xeh} #{r[1].to_xeh}"
loc.verb "#{pc.to_xeh} #{sym} #{r[0].to_xeh} #{r[1].to_xeh}"
.
920d
913,918c
# plr += lm.(s[(sz = plr.size) .. # c
# sz + (ap = ap += (ap >> 1) >> 1) + (ap <=> 0)])
plr += lm.(s[sz .. sz + (ap = (ap += ap >> 1) >> 1)]) # + (ap <=> 0)]) # c # c
.
911d
904,905c
# pc1 = (pc1 = plr[r[1]]).nil? ? lm.(r[1]) : pc1 # c
pc1 = (pc1 = plr[r[1]] # ; r[1] >= sz ||
pc1.nil?) ? lm.(r[1]) : pc1 # c
.
898d
896d
885d
882d
873d
871c
# i_th = lpl.afl('th', ?i) # q
.
866,867c
loc = @@loc
sl = @@slp

.
860,861c
# def fls2 ##
def fls ##
.
858d
839,846c
# Fiber.new { |m = 1| ctr.times {m = Fiber.yield(false)}
# loop { sl.slp 0
Fiber.new { |m = 1| loop { sl.slp 0
# m = Fiber.yield(fb.resume(p1, m))
m = Fiber.yield(0 < ctr ? ! ctr -= 1 :
[fb.resume(p1, m), p1 = yield(p1)][0])}}
# p1 = yield(p1)
# }
# }
.
819,821c
# 0 < pl.hgt && pl[0 .. -1] =
(0 < thini = pl.hgt) && pl[0 .. -1] =
# pl[0 .. pl.hgt & ((thini = rmth + 1) << 1) | thini]
pl[0 .. thini & ((thini = rmth + 1) << 1) | thini]
.
810,812c
pl[0] = [[pl0i[0], [[thini]]], [pl0i[1], [6309]], [pl0i[2], []]]
# pl[0] = [[pl0i[0], [[thini]]], [pl0i[1], [NSL_]], [pl0i[2], []]]
# self[0] = [[[thini]], [68000], []].map.with_index { |v, i| [pl0i[i], v]}
.
807c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # http://www.monami-ya.jp/
.
775c
plini(@@rmth, @pl = ENVary.new(true)) # 310200plini ?
.
751a
@@loc = Loc.new
.
631,632c
# @@f = [0x0.chr * 0x20] * 0x4
@@f = 0x0.chr * (0x20 << 2)
@@bm = 0xff.chr
.
613d
588c
# f && idx -= (idx <=> mx) >> 1 ##
.
580,586c
Fiber.yield((( # f = #### th[idx].nil?.! && # fuguai taisaku
# ckth(th[mx = thn.hgt], 3)) ? (
# pl_es(pc, ['th', th]); sl.slp 0 # , 4096
ckth(th[mx = thn.hgt], 3)) ? (pl_es(pc, ['th', th]); sl.slp 0 # , 4096
# f) : nil) && idx >= mx)
true) : verb.call) && [idx >= mx, idx -= (idx <=> mx) >> 1][0]) ##
.
574c
# f, mx = nil

# verb = ->{nil}
verb = ->{}
.
572d
567d
560,564c
# a, op = a
# case a when Numeric then true end ||
# verb("#{pc.to_xeh} #{a} #{op.to_xeh}")
# @@loc.verb("#{pc.to_xeh} #{a} #{op.to_xeh}")
(loc = @@loc).verb("#{pc.to_xeh} #{a[0]} #{a[1].to_xeh}")
# (imem = @@Imem).send(a, op) || op
(imem = @@Imem).send(*a) || a[1]
.
552,553c
## knid(a, :Array) ? __method__(a, pc) : a # s_id(a, pc) : #? mruby 310200
# case a when Array then __method__(a, pc) else a end # s_id(a, pc) else #? mruby 310200
# knid(a, :Array) ? s_id(a, pc) : a # __method__(a, pc) : #? mruby 410200
case a when Array then s_id(a, pc) else a end # __method__(a, pc) else #? mruby 410200
.
548,549c
# ((tb = TB.dup) == a || case a when Array then 0 >= a.hgt end) && (return a)
(TB.dup == a || case a when Array then 0 >= a.hgt end) && (return a)
.
544d
529,534c
# def verb(s) @@m.lock; puts s; @@m.unlock end
.
511,512c
# bfsz = (a = [knid(th, :Array), tb == th]).size
bfsz = (a = [knid(th, :Array), TB.dup == th]).size
.
509c
# tb = TB.dup
.
487,489d
482,484d
473a
['ctr' == k, k = self.afl(k, ?i)][0] && # q
knid(v, :Array).! ?
# case v when Array then true end.! ? # higokan ? mruby 70410200
pl[k]<< v : pl[k] = v # p
.
466c
# pl[i_k] = 'ctr' == k && ! knid(v, :Array) ? pl[i_k]<< v : v # p
.
461c
# i_k = self.afl(k, ?i) # q
.
424,426c
# (nil == @@fxnm) && @@fxnm = (Float == self.afl('ctr')[0].class # furui mattn/mruby-json
# (nil == @@fxnm) && @@fxnm = (Float == self.ctr_r.class) # furui mattn/mruby-json
# (nil == @@fxnm) && @@fxnm = (Float == self.afl('sym')[0].class) # furui mattn/mruby-json
.
411c
# @@fxnm = nil # furui mattn/mruby-json
.
369,371d
347c
# (Time.now.to_f - 0x3fffffff.to_f << 0x10).to_s.split(?.)[0][-8..-1].to_xeh # q
.
334c
# @@m = Mutex.new
.
295,326d
285c
# case op[0] when Numeric then op.inject(:+) else __send__(*op) end
case op[0] when Numeric then op.inject else __send__(*op) end
.
278d
276d
273d
267c
# def s__i__r0( *a) a[@@I_s__i].send(a[@@I_s__mt])[a[@@I_s__r0]] end
def s__i__r0( *a) a[@@I_s__s].send(a[@@I_s__mt])[a[@@I_s__r0]] end
.
260c
# @@I_s__i = 0; @@I_s__s = 1; @@I_s__r0 = 2; @@I_s__r1 = 3; @@I_s__mt = 4
@@I_s__s = 0; @@I_s__r0 = 1; @@I_s__r1 = 2; @@I_s__mt = 3
.
204,205d
197c
# print("Unkown code #{sym} \n") # .to_s
(loc = @@loc).verb("Unkown code #{sym} ") # .to_s
.
190,191d
186,187c
def ta(l, cop) [l[0] || :getarg_a, l[1] || cop][0 .. l[2] || 1] end
.
165a
@@loc = Loc.new
.
164a
module M__Loc # Inspired by Professor HidetosiNagai http://rubykaigi.org/2011/ja/schedule/details/17S05/#KyuTech
(
@@m = Mutex.new
@@slp = Slp.new
)

# def initialize(nm)
def initialize(nm = nil)
@nm = nm
end

def ploc(*a)
GC.disable # g
# s = nil
# @m.lock
# @@m.lock
begin
f = File.open(@nm, ?w) # q
f.flock(File::LOCK_EX)
rescue
# f.close # ?
@@slp.slp 0
# (s ||= @@slp).slp 0
# retry
@nm && retry
end ## if flg
a[0] = a[0].to_xeh
[yield(a), ## flg &&
f.close][0]
# @m.unlock][0]
# @@m.unlock][0]
# a = yield(r)
end

def verb(s)
GC.disable # g
@@m.lock
puts s
@@m.unlock
end
end

class Loc
include M__Loc
end

.
148,150c
# (self.size << 4).times {sleep 0; (true == true).is_a?(Object); sleep 0}
.
138c
@@slp = (((@@slp = NSL_ >> 2) + (@@slp >> 5)) >> 7) + 1 >> 1 # conf.gem :github => 'matsumotory/mruby-sleep' # bamchoh/mruby-sleep # msleep usleep
.
122,129c
[! a, (a ||= self # a ||= f = self # a ||= (f = true; self)
(i > n = a.size) && i = n
c = (n = 0) - 1
while i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
# a[n] && yield(a[n], c) && a.delete_at(n) || n += 1
a[n] && yield(a[n], c) && (a.delete_at(n); redo); n += 1
# (v = a[n]) && yield(v, c) && a.delete_at(n) || n += 1
end
# f ? self.replace(a) : a
)][0] ? self.replace(a) : a # f ? self.replace(a) : a
.
117,118d
114d
102,106c
## self[0].index(k) # higokan mruby 10410200 ( irep.rb )
# ?i != m ? self[m.afl(k, ?i)] : (self0 = self[0]).index(self0.assoc(k)) # self.index(idx) # q 2
?i != m ? self[m.afl(k, ?i)] : (s0 = self[0]).index(s0.assoc(k)) # self.index(idx) # q 2
## ?i != m ? self[m.afl(k, ?i)] : loop {(self0 = self[0]).index(self0.assoc(k)) && break} # self.index(idx) # fuguai taisaku # q 2
# ?i != m ? self[m.afl(k, ?i)] : loop {(s0 = self[0]).index(s0.assoc(k)) && break} # self.index(idx) # fuguai taisaku # q 2
.
88c
# (i + self.first .. i + self.last - (self.exclude_end? ? 1 : 0))
i + self.first .. i + self.last - (self.exclude_end? ? 1 : 0)
.
70,71d
17,18c
# :ctr_s, :p, :s
:ctr_s, :p, :s].clear
#])))))))))
)))))))))
.
4,6c
# ((((((((([
((((((((( [ # Thread.new [

YAMAGUTIseisei

unread,
Jun 9, 2019, 5:33:33 AM6/9/19
to
1332a

# GC.start # g

.
1331a

# GC.stress = true # g
# GC.start # g

.
1280a
# if pco.! && fl.empty?
.
1268a

.
1264,1265c
# fl<< fibi(@@fls ||= fls, ~ pc, 1) { |pc| 0 > pc ? ~ pc : pc} # p
fl<< fibi(@@fls ||= fls, ~ pc, 1) { |pc| pc} # p
.
1257,1258d
1254,1255c
# if ?J != sym.to_s[0] && ! [:ENTER, :SEND, :RETURN, :NOP].include?(sym) # q
if (ifj.(sym) && ! ifs.(sym)) # c 2
.
1251d
1245,1247c
# c, sym = @@opf.(irep, pc = rg['pc'], imem) # c
c, sym = @@opf.(irep, pc = rg['pc']) # c
.
1234a
ifj = -> (sym) {?J != sym.to_s[0]} # l # q
ifs = -> (sym) {[:ENTER, :SEND, :RETURN, :NOP].include?(sym)} # l

.
1230d
1227a
sl.slp 0
.
1217,1218c
# printf("Unkown code %s \n", OPTABLE_SYM[get_opcode(cop)])
# printf("Unkown code %s \n", OPTABLE_SYM[imem.get_opcode(cop)])
.
1191c
# stack[0] = stack[imem.getarg_a(cop)]
# stack[0] = stack[rou(:getarg_a, cop)]
stack[0] = stack[rou.(:getarg_a, cop)] # c
.
1186c
# return stack[imem.getarg_a(cop)]
# return stack[rou(:getarg_a, cop)]
return stack[rou.(:getarg_a, cop)] # c
.
1136c
# n = imem.getarg_c(cop)
# n = rou(:getarg_c, cop)
n = rou.(:getarg_c, cop) # c
.
1134c
# mid = irep.syms[rou(:getarg_b, cop)]
mid = irep.syms[rou.(:getarg_b, cop)] # c
.
1132c
# a = imem.getarg_a(cop)
# a = rou(:getarg_a, cop)
a = rou.(:getarg_a, cop) # c
.
1109,1110c
# rg['pc', -1] = rg['pc'] + imem.getarg_sbx(cop)
# rg['pc', -1] = rg['pc'] + rou(:getarg_sbx, cop)
rg['pc', -1] = rg['pc'] + rou.(:getarg_sbx, cop) # c
.
1106,1107c
# if !stack[imem.getarg_a(cop)]
# if !stack[rou(:getarg_a, cop)]
if !stack[rou.(:getarg_a, cop)] # c
.
1099c
# rg['pc', -1] = rg['pc'] + imem.getarg_sbx(cop)
# rg['pc', -1] = rg['pc'] + rou(:getarg_sbx, cop)
rg['pc', -1] = rg['pc'] + rou.(:getarg_sbx, cop) # c
.
1097c
# if stack[imem.getarg_a(cop)]
# if stack[rou(:getarg_a, cop)]
if stack[rou.(:getarg_a, cop)] # c
.
1091c
# rg['pc', -1] = rg['pc'] + imem.getarg_sbx(cop)
# rg['pc', -1] = rg['pc'] + rou(:getarg_sbx, cop)
rg['pc', -1] = rg['pc'] + rou.(:getarg_sbx, cop) # c
.
1079a
rou = @@rou
.
1058c
# sym = OPTABLE_SYM[imem.get_opcode(cop)]
# sym = OPTABLE_SYM[rou(:get_opcode, cop)]
sym = OPTABLE_SYM[(rou = @@rou).(:get_opcode, cop)] # c
.
1049,1050c
# @@opf = ->(irep, pc, imem) { # l
@@opf = ->(irep, pc) { # l
# imem = @imem
.
1031,1040d
1021d
1015d
1002,1003d
997,999c
lopa.push(k, 'th' == k ? fvl[oi <=> 0].(oi) : fv) # c
# lopa.push(k, 'th' != k ? fv : fvl.force[oi <=> 0].(oi)) # c #? mruby 410200
.
992d
979d
956,962c
@@iset = nil
.
943,949c
## isr0 = [mt ? i : s, r[0]]
## sz = plr.size
# ca[
## ca.force[ #? mruby 410200
# flg[1] ? 0 : 1].(r) # c
# c_l.ca[flg[1] ? 0 : 1].(r) # c
r = c_l.ca
.
940,941c
## sp ||= s.p = pl[i_sp][0]
## pr || (pr, sy, mt = imem.fml('st', sym))
.
936c
# case f when Numeric then true else loc.verb(f); false end}
.
932,933c
### sym, (r0, r1) = rslt pl # higokan mruby 70410200 # bce75e27 2211410200 matz
## sym, r, flg = rslt(pl) # ; r0, r1 = r
# sym, r, flg = c_l.rslt
sym, r, flg, f = c_l.rslt
.
930c
## pl = lpl.pl_g(pc1) ##
c_l.plg(pc1)
.
919d
897,916c
## lm = ->(r1) {r1.nil? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {imem.send(pr, *isr0, r1, mt)} # l
.
893a
c_l = Fls__l.new(s, i, imem, lpl, sl)
.
892c
# sp, pr = nil; plr = []
.
887,888c
# ap = 1 << sz = 4; ap = @@fls_m ||=
# ((ap += (ap <<= 1) + (ap <<= 2) + (ap << 2)) >> sz) + 1 >> 1
.
885c
sym = nil
# flg = [f = false, f]
f = false
plr, r = []
.
883c
# isr0, pr, sy, sym, mt = nil
.
879,880c
# sp, pl, r = nil
sp, pl = nil
# plr = []

# c_l = Fls__l.new(s, i, imem, lpl, sl)
c_l = nil
.
872c
pc1 = 0 # (pc = 0) + 1
.
862,864c
@@fls = nil
def fls ##
.
859a

[@sym = sym, @r = r, @flg = flg, @f = flg.all?]
end
.
853,858c
# def rslt(pl)
# lpl = @pl
# r = pl[lpl.afl('th', ?i)] # q
## r.map { |v| v[1] = v[-1]}
## r = r.map { |v| v[1] = v[-1]} # higokan ? mruby 70410200
# [pl[lpl.afl('sym', ?i)].to_sym, # q
# *[r, r.map { |v| lpl.ckth(v, 1)}].map { |v| [v[0], v[-1]]}]
# end

class Fls__l
@@fls_m = nil

def initialize(s, irep, imem, lpl, sl)
(
@s = s; @i = irep; @imem = imem; @lpl = lpl

# sp, sz, isr0, r0, r1, lm, sy = [] # higokan ? mruby 70410200
# sp, sz, ht, isr0, r0, r1, lm, sy = [][0]
# @sp, @isr0, @r0, @r1, @r, @pr, @sym, @sy, @mt = nil
@sp, @isr0, @r, @pr, @sym, @sy, @mt = nil

@f = false; @flg = [false, false]

# ap = 1 << sz = 3; ap = @@fls_m ||=
ap = 1 << sz = 3; @ap = @@fls_m ||=
((ap += (ap <<= 1) + (ap <<= 2) + (ap << 2)) >> sz) + 1 >> 1

@plr = []; @sz = 0 # @plr.size
# @lm = ->(r1) {r1.nil? ? r1 : @imem.send(@pr, *@isr0, r1, @mt)} # l
@lm = ->(r1) {@imem.send(@pr, *@isr0, r1, @mt)} # l
@ca = [
->(r) { # f
# @r = @r1 < @sz && @plr[@r1] || @lm.(@r1) # c
sz = (sz = @plr[r[1]] ; r[1] >= @sz || # _ = ( _ = @plr[
# sz) || @lm.(r[1]) # c
sz.nil?) ? @lm.(r[1]) : sz # c
# s[@r1] = @sy ? [s[@r1], @r].inject(@sy) : @r
s[r[1]] = @sy ? [s[r[1]], sz].inject(@sy) : sz # : _
}, # rs = [r1.to_xeh, r0.to_xeh]},
->(r) { # flg[0]
# ((sw = sp + sz) + 0xe).step(sw, -1) { # higokan mruby 70410200 # bbab89e7 5211410200 tmtm
# @sz.step(@sz + @ap -= @ap >> 2) { |n| @plr<< @lm.(@isr0, s[n])} # p c
0 == s.size ? sl.slp(0) : @plr += @lm.(s[(sz = @sz) .. sz + @ap = ( # c
# @ap += @ap >> 1) >> 1)]) # @ap >>= 1) + (@ap >> 1)])
# (sz = @ap) += sz >> 1) >> 1]) # sz = @ap >> 1) + (sz >> 1)])
sz = @ap; sz += sz >> 1) >> 1]) # sz = @ap >> 1) + (sz >> 1)])
# .. sz + (ap = (ap += ap >> 1) >> 1) + (ap <=> 0)])
} # rs[1] = r0.to_xeh
] # .lazy #? mruby 410200

plb = Plb
# i_th = lpl.afl('th', ?i) # q
@i_sp = plb.assoc('sp')[1]
)
end

def ca # (i)
if @flg[0]
@sp ||= @s.p = @pl[@i_sp][0]
# @r0, @r1 = @r
@pr || (@pr, @sy, @mt = @imem.fml('st', @sym))
# @isr0 = [@mt ? @i : @s, @r0]
@isr0 = [@mt ? @i : @s, @r[0]]
@sz = @plr.size

# (ca = @ca).force[ #? mruby 410200
# @ca.force[ #? mruby 410200
# (ca = @ca)[
@ca[
@flg[1] ? 0 : 1].(@r) # c
end
# [@r, @sym]
@r
end

def plg(pc) @pl = @lpl.pl_g(pc) end

def rslt # (pl)
lpl = @lpl
pl = @pl
r = pl[lpl.afl('th', ?i)] # q
# r.map { |v| v[1] = v[-1]}
# r = r.map { |v| v[1] = v[-1]} # higokan ? mruby 70410200

sym, r, flg = [pl[lpl.afl('sym', ?i)].to_sym, # q
.
848,850d
845d
842,843d
823d
821d
813d
809c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # www.monami-ya.jp
.
784a
Plb = @@plb
.
680,682c
def is(i = nil)
@i = i
end
.
676d
662a
@p = sp; @s = s; @i = nil
.
661c
# @p = sp; @s = s
.
631d
615,617c
##### fpl.delete_if.with_index { |fb, i| break if i > 0; fb.resume}
##### fpl.delete_if.with_index { |fb, i| next if i > 0; fb.resume}
##### fpl.delete_if.with_index { |fb, i| p i; fb.resume}
.
613c
# fpl.delete_if(&:resume)
## fpl.delete_if(&:resume(pc))
.
601a
## pc && 0 <= pc && (fpl<< (@@plw ||= plw).dup)[-1].resume(pc) # p # ?
.
595a
##@@plw = nil
.
588,589d
586d
582,584c
Fiber.yield((( #### th[idx].nil?.! && # fuguai taisaku
.
579a
## Fiber.yield # (false)
.
578c
Fiber.new { ## |pc| ##
.
575d
573d
568a
##def plw ##
.
564d
558,562c
# case (opc, op = a)[0] when Numeric then true end ||
.
554c
# return a[0] if 0 >= a.hgt
.
549,550d
545d
532,533d
517,518c
# bf = (Array.new(bfsz, '1').join).to_i(2) # higokan ? mruby 70410200
# bf = Array.new(bfsz) { |n| 1 << n}.inject # higokan ? mruby 70410200
.
514d
512d
437d
429,431d
416d
364d
342,343d
324d
317c
# return a_r1.map{ |v| v.nil? ? v : __send__(*a[0 .. @@I_s__r0 + 1], v)} # r
a[i_s__r1].map{ |v| v.nil? ? v : __send__(*a[0 .. i_s__r1 - 0_0 - 1], v)}
.
314,315c
a[0] = ?s << a[0].to_s # q
# case a_r1 = a[@@I_s__r1 + 1]
case a[i_s__r1 = @@I_s__r1 + 1]
.
308d
300d
238d
191d
185d
176d
168d
162c
module M__Loc # Inspired by Professor NAGAI Hidetosi http://rubykaigi.org/2011/ja/schedule/details/17S05/#KyuTech
.
147a
# [true][Time.now.to_f.to_s.split(?.)[1].to_i & 15] && GC.start # g
# [true][(@@ctr += 1; @@ctr &= 3)] && GC.start # g
.
146a
# (r - 1).times {usleep 0}; r.times {usleep t}
# (r - 1).times {msleep 0}; r.times {msleep t} # usleep yobi
# (r - 1).times {sleep 0}; r.times {sleep t} # antei ?
# (r - 1).times {sleep 0}
# r.times {sleep t}

.
142d
140c
# @@ctr = 0
.
127d
113c
# def delif_c(i, a = self) # # higokan ? mruby-thread:410200 monami-ya.mrb:60510200 mruby:70410200
.
105d
102,103c
# self[0].index(k) # higokan mruby 10410200 ( irep.rb )
.
87d
18,19c
))))))))) # .move # ? # conf.gem :github => 'miura1729/mruby-mmm'


# GC.generational_mode = false # g # http://syucream.github.io/mrubook/gc.html
.
16d
3,4c
# include MMM # conf.gem :github => 'miura1729/mruby-mmm'

YAMAGUTIseisei

unread,
Aug 12, 2019, 6:17:30 AM8/12/19
to
1377c
GC.start # g # antei ?
.
1373c
GC.start # g
.
1348,1349c
@Slp.slp
end
.
1346c
# ise[0].reject! { |fis| fis.resume}
ise[0].reject!(&:resume)
# ise[0].delif_c(1) { |fis, n| fis.resume}

# fl.step(@@rmth) { |n| # higokan ? touki 70410200
# fl.reject!.with_index { |v, n| v.resume(n) && 0 == n} # higokan ? touki 70410200

# if pfl = ise[1][0]
# (fl<< pfl[1]; ise[1].shift) if 0 <= pfl[0] # p
# end
.
1339,1340c
stack.ps rg['sp']
# @irep[0] = irep
@irep = irep
.
1333c
# if 0 <= rg['ctr', 1]
if 0 <= rg.pg
.
1329a
jsc.call
.
1328d
1324c
# plini
.
1322a
rg.ps(rg.pg.abs) # cp
.
1320c

# rg['ctr', 1] = rg['ctr', 1].abs
.
1315c
## ise[0].reject! { |fis| fis.resume} # higokan ? GC 70410200
.
1306,1308c
# pco = rg['pc'] if ?J == rg['sym'].to_s[0] # q
pco<< rg['pc'] if ?J == rg['sym'].to_s[0] # p # q
###### (pco = rg['pc']; pctj<< pco + 1) if ?J == rg['sym'].to_s[0] # q
# ise[1].push([false, false], [false, false])
# rg['ctr', 1] *= -1 # kakezan
rg.ps(-rg.pg)
.
1303a
end
.
1301,1302c
# if 0 <= rg['ctr', 1] || pco
# if pco.slice!(0 .. -1) || 0 <= rg['ctr', 1] # higokan monami-ya.mrb:60510200 mruby:70410200
# if pco.pop || 0 <= rg['ctr', 1]
if pco.pop || 0 <= rg.pg
# pco &&= nil
opg.call
# @@opg.(irep, rg, imem) # c

loc.verb "#{rg['pc'].to_xeh} #{rg['sym']} #{rg['cop'].to_xeh}" # if rg['sym']

# if (ifj.(sym) && ! ifs.(sym)) # c 2
if (ifj.(rg['sym']) && ! ifs.(rg['sym'])) # c 2
# ise<< iset(rg) # p
# ise<< iset(rg) if 0 <= rg['pc', nil, '-'] # p # cp
# ise[0]<< iset(rg) if 0 <= rg['pc', nil, '-'] # p # cp
# next if pcoj.call
# fl<< fls(rg['pc']) # p

# pcff = false
# if pfl = ise[1].shift
# pcf, pfl1 = pfl
# fl<< pfl1 if pcff = pcf.abs == rg['pc'] # p # cp
# end
pcf, pfl1 = ise[1].shift
if pcf && pcf.abs == rg['pc'] # cp
####### fl<< pfl1 # p
fl<< pfl1 # if pctj.pop != rg['pc'] # p
else
# if ! pcff
ise[0]<< iset(rg) # p

pcf = rg['pc']
# pcf = -pcf if 0 > rg['ctr', 1]
pcf = -pcf if 0 > rg.pg
####### ise[1]<< [pcf, fls(rg['pc'])] # p
ise[1]<< [pcf, fls(rg['pc'])] # if pctj.pop != rg['pc'] # p
next if pcoj.call
.
1284,1299c
# 0.step(@@rmth) { |n|
# 0.step(3) { |n|
# fl.reject_c!(1) { |v, n| v.resume(n)}
fl.reject!.with_index { |v, n| v.resume(n)}

# ise[1].each_index { |n|
ise[1].reject! { |pfl|
# (fl<< pfl[1]; ise[1].shift) if 0 <= pfl[0] # p
# (fl<< pfl[1]; ise[1].shift) if ! pfl[0] || 0 <= pfl[0] # p
# fl<< pfl[1] if pfl[0].! || 0 <= pfl[0] # p
pfl && (pfl[0].! || 0 <= pfl[0]) && fl<< pfl[1] # p
# pfl && (pfl.empty? || 0 <= pfl[0]) && fl<< pfl[1] # p
}
.
1280,1282c
# ise.reject! { |fis| fis.resume}
# ise[0].reject! { |fis| fis.resume}
.
1272a
# @@opg = ->(irep, rg, imem) { # l
# opg = -> { # |irep, rg, imem| # l
opg = -> { # l
c, sym = @@opf.(irep, rg['pc'], imem) # c
rg.push('cop', c)
rg.push('sym', sym)
# rg
}

.
1268a
@Slp.slp 0
.
1265,1266c
# if 0 > rg['ctr', 1]
if 0 > rg.pg
.
1263c
# pco = nil
pco = []
.
1260c
# [callinfo, irep, rg]
.
1252,1257c
callinfo, irep, rg = @@jsc.(stack, callinfo, irep, rg, imem) # c
## printf("Unkown code %s \n", OPTABLE_SYM[get_opcode(cop)])
# printf("Unkown code %s \n", OPTABLE_SYM[imem.get_opcode(cop)])
.
1244,1245c
callinfo.pd
### @sp = @callinfo[@cp]
.
1238,1241c
callinfo.pd
### @pc = @callinfo[@cp]
# pc = @callinfo[@cp] - 1
# rg['pc', -1] = @callinfo[@cp]
.
1231c
callinfo.pd
.
1227,1229c
stack[0] = stack[imem.getarg_a(cop)]
.
1225c
### @stack[@sp] = @stack[@sp + getarg_a(cop)]
.
1220,1223c
return stack[imem.getarg_a(cop)]
.
1217,1218c
if 0 == callinfo.pg
### return @stack[@sp + getarg_a(cop)]
.
1106,1212c
# case sym
case rg['sym']
.
1104c
jsc = Proc.new {
cop = rg['cop']
.
1100d
1097c
ise = [[], []]
.
1091c
@irep = irep
.
1087,1089c
imem = @imem
stack = @stack
callinfo = @callinfo
.
1085d
1080d
1076,1078c
sym = OPTABLE_SYM[imem.get_opcode(cop)]
.
1065,1068c
@@opf = ->(irep, pc, imem) { # l
.
1058,1062c
@@jsc = Proc.new { |stack, callinfo, irep, rg, imem|
cop = rg['cop']

# case sym
case rg['sym']

# 何もしない
when :NOP

# JMP nでpcをnだけ増やす。ただし、nは符号付き
when :JMP
## @pc = @pc + getarg_sbx(cop)
# pc = pc + lpl.getarg_sbx(cop) - 1
rg['pc', -1] = rg['pc'] + imem.getarg_sbx(cop)
## next

when :JMPIF
# if @stack[@sp + getarg_a(cop)] then
# if @stack[rg['sp'] + imem.getarg_a(cop)]
if stack[imem.getarg_a(cop)]
# @pc = @pc + getarg_sbx(cop)
# pc = pc + lpl.getarg_sbx(cop) - 1
rg['pc', -1] = rg['pc'] + imem.getarg_sbx(cop)
# next
end

# JMPNOT Ra, nでもしRaがnilかfalseならpcをnだけ増やす。ただし、nは符号付き
when :JMPNOT
### if !@stack[@sp + getarg_a(cop)] then
# if !@stack[rg['sp'] + imem.getarg_a(cop)]
if !stack[imem.getarg_a(cop)]
## @pc = @pc + getarg_sbx(cop)
# pc = pc + lpl.getarg_sbx(cop) - 1
rg['pc', -1] = rg['pc'] + imem.getarg_sbx(cop)
## next
end

# メソッドの先頭で引数のセットアップする命令。面倒なので詳細は省略
when :ENTER

# SEND Ra, mid, anumでRaをレシーバにしてシンボルmidの名前のメソッドを
# 呼び出す。ただし、引数はanum個あり、R(a+1), R(a+2)... R(a+anum)が引数
when :SEND
# a = getarg_a(cop)
a = imem.getarg_a(cop)
# mid = @irep.syms[getarg_b(cop)]
mid = irep.syms[imem.getarg_b(cop)]
# n = getarg_c(cop)
n = imem.getarg_c(cop)
### newirep = Irep::get_irep(@stack[@sp + a], mid)
# newirep = Irep::get_irep(@stack[rg['sp'] + a], mid)
newirep = Irep::get_irep(stack[a], mid)
if newirep then
### @callinfo[@cp] = @sp
# @callinfo[@cp] = rg['sp']
# callinfo[0] = rg['sp']
# @cp += 1
# callinfo.pi
# @callinfo[@cp] = @pc
# @callinfo[@cp] = rg['pc']
# callinfo[0] = rg['pc']
# @cp += 1
# callinfo.pi
# @callinfo[@cp] = @irep
# @callinfo[@cp] = irep
# callinfo[0] = irep
# @cp += 1
# callinfo.pi
callinfo[0 .. 2] = [rg['sp'], rg['pc'], irep]
callinfo.pi 3

### @sp += a
# rg['sp'] += a
rg['sp', -1] = rg['sp'] + a

## @pc = 0
rg['pc', -1] = 0
# @irep = newirep
irep = newirep
# @irepid = @irep.id
@irepid = irep.id

## next
else
args = []
n.times do |i|
### args.push @stack[@sp + a + i + 1]
args<< stack[a + i + 1] # p
end

### @stack[@sp + a] = @stack[@sp + a].send(mid, *args)
# @stack[rg['sp'] + a] = @stack[rg['sp'] + a].send(mid, *args)
stack[a] = stack[a].send(mid, *args)
end

# else
## printf("Unkown code %s ¥n", OPTABLE_SYM[get_opcode(cop)])
# printf("Unkown code %s ¥n", OPTABLE_SYM[imem.get_opcode(cop)])
end

[callinfo, irep, rg]
.
1048,1053c
@Slp.slp 0

Fiber.yield(0 == thi) ##
# sp = [sp].flatten
sp = [sb].flatten
.
1046c
(0 != thi && ht <= thi) ? thi = 0 : thi += 1
.
1043,1044c
pl.pl_es(pc1, opa)
pl.ctr_s(pc1) if 0 == thi
.
1040,1041c
# opa = opg.(thi) # c
# opa.push(k_sp, [sp]) if 0 == thi
opa = opg.(thi).push('ctr', [sp]) # c
.
1038c
# k_sp = @pla.assoc('sp')[1]
Fiber.new { ##
.
1028,1032c
if v # && if knid(fv, :Array)
if 'th' == k
if 0 == oi
# fv = [fv[oi] = th[oi] = imem.ta(fv[oi], cop)] + [[]]
lopa.push(thl[oi], imem.ta(fv[oi], cop))
k, fv = [thl[oi + 1], []]
else
fv[oi] = imem.ta(fv[oi], cop) if oi <= ht = fv.hgt
fv[oi] ? (k, fv = [thl[oi], fv[oi]]) : k = nil
# fv = th
end
end
# lopa.push(k, fv)
lopa.push(k, fv) if k
end
.
1020,1024d
1018c
# th = [] ##
thl = @@mh_thl
.
1006,1016c
fml = imem.fml('th', sym) || (
# printf("Unkown code %s ¥n", OPTABLE_SYM[imem.get_opcode(cop)])
# printf("Unkown code %s ¥n", OPTABLE_SYM[rou(:get_opcode, cop)])
# printf("Unkown code %s ¥n", OPTABLE_SYM[@@rou.(:get_opcode, cop)]) # c
loc.verb("Unkown code #{sym} ") # .to_s
# return nil
# raise
## rg = Fiber.yield(nil)
)
bt = imem.fml('th', 'bt')[1 .. -1]
sb = sp
.
1003,1004c
pc1 = pc + 1
loc = @@loc
imem = @imem
pl = @pl
# i_lf = @idx['lf']
.
996,1001c
def iset(rg) ##
pc, sp, cop, sym = rg.to_ra('pc', 'sp', 'cop', 'sym')
.
991c
m = fy.(m, f) # c
.
979,989c
if 0 == m
# s.sp(sp ||= (plr = pl[i_sp])[0])
# s.sp(sp ||= (plr = [pl[i_sp]].flatten)[0]) if flg[0]
# s.ps(sp ||= [pl[i_sp]].flatten[0]) if flg[0]
s.ps(sp ||= pl[i_sp].flatten[0]) if flg[0]
# plr ||= [sp]
# s.sp sp
r0, r1 = r
# pr || (pr, sy = imem.fml('st', sym)[1 .. -1])
pr || (pr, sy, mt = imem.fml('st', sym)[1 .. -1])

# isr0 = [i, s, r0]
isr0 = [mt ? i : s, r0]
# sz = plr.size
sz = plr.size if flg[0]
if f
# if f && ktf
# r = r1 < sz && plr[r1] || lm.(isr0, r1) # c
r = r1 < sz ? plr[r1] : nil # isyoku tokusei
# r.nil? && r = lm.(isr0, r1) # c
r.nil? && r = lm.(r1) # c
s[r1] = sy ? [s[r1], r].inject(sy) : r
rs = [r1.to_xeh, r0.to_xeh]
elsif flg[0]
# elsif flg[0] && ktf
mx = 0xf
s.s.hgt <= mx && mx = s.s.hgt
# sz.step(mx) { |n| plr<< lm.(isr0, s[n])} # p c
sz.step(mx) { |n| plr<< lm.(s[n])} # p c
# (mx - sz).times { |n| plr<< lm.(isr0, s[n + sz])} # p c
# (mx - sz).times { |n| s[n + sz] && plr<< lm.(isr0, s[n + sz])} # p c
rs[1] = r0.to_xeh
elsif flg[-1]
# elsif flg[-1] && ktf
rs[0] = r1.to_xeh
end
.
967,977c
# if f.! || ! ktf
pl = lpl.pl_g(pc1) ##
sym, r = rslt(pl)

## for idx in (0 ... pl[i_th].size)
# for idx in (0 ... r.size)
## flg[idx] = lpl.ckth(pl[i_th][idx], 1) ## ####
# flg[idx] = lpl.ckth(r[idx], 1) ## ####
# end
r.each_with_index { |v, i| flg[i] = lpl.ckth(v, 1)} ## ####

# sp = pl[i_sp]
# sp = sp[0] if (ktf = knid(sp, :Array))
# f = ktf && ! flg.include?(false)
# f = ! flg.include?(false)
f = flg.all?
m = fy.(m, false) # c
.
963,965d
961c
Fiber.new { |m = 1|
.
916,957c
fy = ->(m, f) { # @Slp.slp 0
loc.verb "#{pc.to_xeh} #{sym} #{rs[1]} #{rs[0]}"
.
914a
pc1 = pc + 1
loc = @@loc
lpl = @pl
imem = @imem
# i_th = lpl.afl('th', ?i) # q
i_sp = lpl.afl(@pla.assoc('sp')[1], ?i) ## # q

f = false; flg = [false] # ; ktf = false
s = Stack.new
# i = @irep[0]
i = @irep
plr = []

# sp, wd, isr0, r0, r1, lm, sy = [][0]
# r = 0; r0, r1 = [nil, nil]
# pl, sp, r, r0, r1, sym, pr = nil
# pl, sp, mt, r, r0, r1, sym, pr = nil
pl, sp, mt, isr0, r, r0, r1, sym, pr = nil

rs = [?-, ?-] # q 2

# lm = ->(isr0, r1) {r1.nil? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
## lm = ->(isr0, r1) {imem.send(pr, *isr0, r1, mt)} # l
lm = ->(r1) {r1.nil? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {imem.send(pr, *isr0, r1, mt)} # l
.
911,912c
def fls(pc) ##
.
895,908c
r[1] = r[-1]
[pl[lpl.afl('sym', ?i)].to_sym, r] # q
# [pl[@pl.afl('sym', ?i)].to_sym, r] # q
.
876,892c
# knid(pl[lpl.afl('ctr', ?i)], :Array) && # q
# knid(pl[lpl.afl('ctr', ?i)][0], :Array) && # q
# lpl.ckth(r1 = pl[lpl.afl('th1', ?i)], 3) && r<< r1 # q # p
case pl[lpl.afl('ctr', ?i)][0]
when Array then lpl.ckth(r1 = pl[lpl.afl('th1', ?i)], 3) && r<< r1 # q # p
.
813,874c
def rslt(pl)
lpl = @pl
# r = pl[@pl.afl('th', ?i)] # q
r = [pl[lpl.afl('th0', ?i)]] # q
.
809c
ENVary.new(0).plm(pc)
.
788,797c
# @pl[0] =
# [['th', [[thini]]], ['sym', [0]], ['ctr', []], ['Numeric', [0]]]
# @pl[0] = [['th', [[thini]]], [thl[0], [thini]], [thl[1], [thini]],
# ['sym', [0]], ['ctr', []], ['Numeric', [0]]]
pl[0] = [[thl[0], [thini]], [thl[1], [thini]],
['sym', [0]], ['ctr', []]]
# ['sym', [0]], ['ctr', []], ['Numeric', [0]]] # furui mattn/mruby-json
# @pla = [['sp', 'ctr']]
.
785c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # http://www.monami-ya.jp/
.
781c
thl = @@mh_thl
.
778a
# def plini
.
757,760c
@pla = [['sp', 'ctr']]

####### @pl.nmrcf
.
751,752c
thini = [false, 0]
# @pl = ENVary.new(rmth + 1, [thini], [], [])
# @pl = ENVary.new(rmth + 1, [thini], thini, thini, [], [])
# @pl = ENVary.new(rmth + 1, thini, thini, [], [])

# plini

# @pl = ENVary.new(true) # 410200plini
plini(@@rmth, @pl = ENVary.new(rmth + 1, thini, thini, [], [])) # 310200plini ?
.
748a
rmth = @@rmth
.
746c
@irep = nil # 現在実行中の命令列オブジェクト
.
742a
@callinfo = Stack.new(0, []) # メソッド呼び出しで呼び出し元の情報を格納
.
741c
@stack = Stack.new # スタック(@spより上位をレジスタとして扱う)
.
736,737c
GC.start # g # antei ?

# @imem = Imem.new
@imem = @@Imem
@Slp = @@Slp
.
727,732c
@@rmth = 39
# @@loc = Loc.new
@@loc = LOC

# @@Imem = Imem.new
@@Imem = IMEM
# @@Slp = Slp.new
@@Slp = SLP
.
721a
include M__H
.
713a

# prepend M__Ist
.
711c
def ps(i)
@a.assoc('ctr')[1] = i
end

def pg
@a.assoc('ctr')[1]
end

def to_ra(*a)
.
707c
# case v when Numeric then 'pc' == k && v == @a.assoc(k)[i] && v = -v end # cp
.
693,697c
@a.assoc(k)[i]
# v = @a.assoc(k)[i]
## v = v.abs if knid(v, :Numeric) # cp
# v = v.abs if 'pc' == k && ?- != m # cp # q
# v
.
655,656c
def pg() @p end
# def pi() @p += 1 end
def pi(i = 1) @p += i end
def pd() @p -= 1 end

# def sp(*a)
def ps(i)
# p id = self.object_id
# a.empty? || @p = a[0]
@p = i
# @p
.
652c
# @@m.unlock
# a
.
650c
# @@m.lock
.
644,646c
# @@m.lock
# s = @s
# @@m.unlock
@s[a[0] + @p]
.
635,640c
@p = sp; @s = s
# @p = sp; @m = m; @s = s
# @@m.lock
# s = @s
# @@m.unlock
# s
@s
.
618,620c
# def []=(*a)
## sleep 0
## @@Slp.slp 0
## a.to_s
# super
# end
.
614,616c
# def [](*a) # ok : monami-ya.mrb:60510200
## sleep 0
## @@Slp.slp 0
## a.to_s
# super
# end
.
610,612c
# def initialize
## @f = '' # cannot set instance variable (ArgumentError)
# end
.
607,608c
# @@f = 0x0.chr * (0x20 << 2)
# @@bm = 0xff.chr
.
601c
# class ENVary < Array
.
598a

# private
.
595,596c
@@Slp.slp
GC.start # g # antei ?
.
590a
## fpl = delif_c(1, fpl) { |fb, n| fb.resume(pc)} # ?
.
583a
# self.pl(cto)
# self.pl(pc - 1)
.
581c
# fpl<< self.plw(pc) if flg[0] # p
.
576c
## pc && 0 <= pc && fpl<< (@@plw ||= plw); GC.disable # p # g
.
571d
555,563c
idx += 1 unless arf = ckth(th[idx], 2)
arf ||= ckth(th[idx], 2)
th[idx] = pl_eg(pc, thl[idx]) if arf
# flg = ckth(pl_eg(pc, 'ctr'), 0) if ! flg # [sp]
flg ||= ckth(pl_eg(pc, 'ctr')[0], 0) # [sp]
# th = th[0 ... idx] if ckth(th[idx], 2) && flg
th = th[0 ... idx] if flg && (arf.! || ckth(th[idx], 2))
# idx += 1 ##
}
.
550,553c
# th = [] ##
thl = @@mh_thl
# th = [pl_eg(pc, 'th0'), pl_eg(pc, 'th1')]
# th = [pl_eg(pc, thl[0]), pl_eg(pc, thl[1])]
th = pl_g(pc, *thl)

idx = 0 ##
Fiber.new { ##
# while th[idx .. -1] = (thn = pl_eg(pc, 'th'))[idx .. -1] ##
loop {
# th = th[0 .. (mx = thn.hgt)] ####
mx = th.hgt
th[idx] = s_id(th[idx], pc - 1) if mx >= idx
if ckth(th[mx], 3)
# self.pl_es(pc, ['th', th])
th.each_index { |n| pl_es(pc, [thl[n], th[n]])}
# idx = idx == mx ? 0 : idx + 1 ###
flg = true ##
end
@@Slp.slp 0
Fiber.yield(flg && idx >= mx) ##
.
547d
542c
(loc = @@Loc).verb("#{pc.to_xeh} #{a[0]} #{a[1].to_xeh}")
.
520,526d
509,517c
while (0 == 1 & md) == a[(md & bf) >> 1]
# ((a[(md & bf) >> 1] ? 0 : 1) == 1 & md)
# ([true, false][1 & md] == a[(md & bf) >> 1])
md >>= bfsz
## 0 == lf ? return(false) : (md &= bf if 0 == lf >> bfsz) # ? mruby 70410200
0 == md >> bfsz && break
end # .!.!
.
480a
def to_ia(n, lpl = self)
[lpl = lpl[n], 0 != n && (return @@Plmg.(@@pl0i, lpl))][0] # r # c
end
.
475c
### aa.each_slice(2) { |k, v| send(k, v)}
.
453,455c
## knid(k, :Symbol) && (aa.push(k, v); next)
###### knid(k, :Symbol) && (aa.push(k, v); break)
# case k when Symbol then aa.push(k, v); break end
.
451c
# ary.each_slice(2) { |k, v| # .shift(2) higokan mruby 70410200
a.each_slice(2) { |k, v| # .shift(2) higokan mruby 70410200
.
445,447c
# def pl_es(n = 0, ary = nil, pl = nil)
def pl_es(n = 0, a = nil, pl = nil)
### aa = []
# pl[0 == n ? 1 : nil][idx(k)] = v
.
441c
# def pl_eg(n = 0, k)
def pl_eg(n, k)
.
437d
435c
# self[n] = 0 == n ? @@Plmg.(pl_g(-1), pl) : pl # c
.
431d
428c
# pl
a.empty? ? pl : a.map { |a| pl.afl(a, self)}
.
423,426d
419,420c
# 1 > n ? pl[idx0(n)] : pl
# if 1 > n then pl = pl[idx0(n)] end
.
417c
# self[n < 0 ? n + 1 : n][idx0(n)]
.
411,414c
# @@Idx0 = ->(n = 0, t = 1) {n - ((n <=> t) >> 1)} # l
@@Pldv = ->(pl) {pl.map { |a| a[1]}} # l
# def pl_g(n = 0)
# def pl_g(n)
def pl_g(n, *a)
.
393,397c
# ploc(n) { |a| JSON::parse(ENV[@@idb + a[0]])}
@@Loc.ploc(n) { |a| JSON::parse(ENV[@@idb + a[0]])}
.
383c
# ploc(n, v) { |a| ENV[@@idb + a[0]] = JSON::generate(a[1])}
@@Loc.ploc(n, v) { |a| ENV[@@idb + a[0]] = JSON::generate(a[1])}
.
371,372c
# @ary = Array.new(n)
(0 .. n).each{ |i|
# @ary = a
self[i] = *a
}
.
367c
n = a.shift
# @sz = a.size
if 1 > n
# @n = -n
# return self[@n]
return
end
.
363c
# def initialize(a = nil)
def initialize(*a)
.
360c
# @@loc = Loc.new(@@fl)
@@Loc = LOC
.
355,357d
341,347c
# @@Imem = Imem.new
@@Imem = IMEM
# @@slp = Slp.new
@@Slp = SLP

# @@fl = '‾‾ritepl'
# @@idb = @@fl
@@idb = FL
# @@fl += '.loc'
## @@fl += '/loc' # RISC OS ?
.
338a
include M__H
.
331a
IMEM = Imem.new

.
301,319c
# def s__sr0( *a) a[@@I_s__s][ a[@@I_s__r0]] end
# def s__r0( *a) a[@@I_s__r0] end
# def s__sr01( *a) a[@@I_s__s][ a[@@I_s__r0] + 1] end
## def s__i_pool_r0( *a) a[@@I_s__i].pool[ a[@@I_s__r0]] end
## def s__i_syms_r0( *a) a[@@I_s__i].syms[ a[@@I_s__r0]] end
## def s__i__r0( *a) a[@@I_s__i].send(a[@@I_s__mt])[a[@@I_s__r0]] end
# def s__i__r0( *a) a[@@I_s__s].send(a[@@I_s__mt])[a[@@I_s__r0]] end
# def s__r1_eq_sr01(*a) a[@@I_s__s][ a[@@I_s__r1]] ==
# a[@@I_s__s][ a[@@I_s__r0] + 1] end

@@I_s__r0 = 1; @@I_s__r1 = 2; @@I_s__mt = 3

def s__sr0( *a) a[0][ a[@@I_s__r0]] end
def s__r0( *a) a[@@I_s__r0] end
def s__sr01( *a) a[0][ a[@@I_s__r0] + 1] end
# def s__i_pool_r0( *a) a[@@I_s__i].pool[ a[@@I_s__r0]] end
# def s__i_syms_r0( *a) a[@@I_s__i].syms[ a[@@I_s__r0]] end
def s__i__r0( *a) a[0].send(a[@@I_s__mt])[a[@@I_s__r0]] end
def s__r1_eq_sr01(*a) a[0][ a[@@I_s__r1]] ==
a[0][ a[@@I_s__r0] + 1] end

def method_missing(*a) self.send(?s << a[0].to_s, *a[1 .. -1]) end
.
299c
# @@I_s__s = 0; @@I_s__r0 = 1; @@I_s__r1 = 2; @@I_s__mt = 3
.
233,242c
@@fml.(lb).assoc(sym) # c
# (f = @@fml).(lb).assoc(sym) # c
.
209d
207a
LOC = Loc.new(FL << '.loc')
# LOC = Loc.new(FL << '/loc') # RISC OS ?


.
194a
# }
.
185,186c
# @@slp.slp 0
## (s ||= @@slp).slp 0
# (s ||= @@Slp).slp 0 # higokan ? mruby 70410200
@@Slp.slp 0
.
175a
# @@ploc = Fiber.new { |a|
# @@ploc = Proc.new { |*a|
.
169c
# @@slp = Slp.new
@@Slp = SLP
.
165a

.
158a
SLP = Slp.new


.
142,143c
# (r - 1).times {sleep 0}; GC.start; r.times {sleep t} # g # fuantei ( keisan gosa ) ?
(r - 1).times {usleep 0}; r.times {usleep t}
.
140c
# (r - 1).times {usleep 0}; GC.start; r.times {usleep t} # g # conf.gem :github => 'kimushu/mruby-sleep' # msleep usleep
.
29a
module M__H
@@mh_thl = (0 .. 1).map { |n| 'th' + n.to_xeh}
end

.
24,25c
FL = '‾‾ritepl'
.
2a
# Experimental : Merry HongmengOS memorial

YAMAGUTIseisei

unread,
Oct 27, 2019, 8:32:33 AM10/27/19
to
1399c
# @slp.slp
sl.slp
.
1397c
# end
.
1395c
# if pfl = ise[1][0]
.
1388,1390c
# ise[0].reject!(&:resume)
# ise[0].delif_c(2) { |fis, n| fis.resume}
ise[0].reject! { |fis| fis[1].resume && 0 <= fis[0]}
# ise[0].delif_c(2) { |fis, n| fis[1].resume && 0 <= fis[0]} # thl.size
.
1373d
1359,1361d
1345d
1341,1343c
# pco<< rg['pc'] if ?J == rg['sym'].to_s[0] # p # q
pco<< rg['pc'] if ifj.(rg['sym']) # p c

# opg.call
# if ! ifj.(rg['sym'])

.
1338d
1310,1336c
# if (ifj.(rg['sym']) && ! ifs.(rg['sym'])) # c 2
unless (ifj.(rg['sym']) || ifs.(rg['sym'])) # c 2
ist.call

next if pcoj.call
.
1306d
1304d
1302d
1295,1297c
# fl<< pfl[1] if ! pfl[0] || 0 <= pfl[0] # p
if pfl
# ise[0]<< iset(pfl[1]) # p
# ise[0]<< [pfl[0], iset(pfl[1])] # p
ise[0]<< [pfl[0], isfl(pfl[1])] # p
if 0 <= pfl[0]
fl<< fls(pfl[0]) # p
end
true
# pfl && (! pfl[0] || 0 <= pfl[0]) && fl<< pfl[1] # p
end
.
1291d
1288,1289c
###### 0.step(1) { |n|
# 0.step(0) { |n|
fl.delif_c(1) { |v, n| v.resume(n)}
# fl.reject!.with_index { |v, n| v.resume(n)}
.
1283d
1276c
ist = -> { # l
# pcf, pfl1 = ise[1].shift
# if pcf && pcf.abs == rg['pc'] # cp
# fl<< pfl1 # p

unless ise[0].empty?
# pfl = ise[0][-1] # .pop
pfl = ise[0].pop
pcf = pfl[0]
if 0 > pcf
if pcf.abs == rg['pc'] # cp
fl<< fls(pcf.abs) # p # cp
pfl[0] = pcf.abs # cp
ise[0]<< pfl # p
# ise[0].pop
# else
# ise[0]<< iset(rg) # p
# ise[0]<< isfl(rg) # p
next
end
else
ise[0]<< pfl # p
end
end
pcf = rg['pc']
pcf = -pcf if 0 > rg.pg
##### rg['pc'] *= -1 if 0 > rg['ctr', 1] # kakezan # cp
##### pcf = rg['pc']
# ise[1]<< [pcf, fls(rg['pc'])] # p
ise[1]<< [pcf, rg.to_ra] # p
}

# ifj = -> (sym) {?J != sym.to_s[0]} # l # q
ifj = -> (sym) {?J == sym.to_s[0]} # l # q
.
1267,1270c
# @@opg = -> (irep, rg, imem) { # l
opg = -> { # l
c, sym = @@opf.(irep, rg['pc']) # c # cp
.
1262c
# @slp.slp 0
sl.slp 0
.
1258d
1255d
1252c
# [callinfo, irep, rg]
.
1247,1248c
callinfo, irep, rg = @@jsc.(stack, callinfo, irep, rg, imem) # c
# printf("Unkown code %s \n", OPTABLE_SYM[get_opcode(cop)])
.
1240c
# @sp = @callinfo[@cp]
.
1234c
# @pc = @callinfo[@cp]
.
1224c
stack[0] = stack[rou.getarg_a(cop)]
.
1222c
# @stack[@sp] = @stack[@sp + getarg_a(cop)]
.
1220c
return stack[rou.getarg_a(cop)]
.
1218c
# return @stack[@sp + getarg_a(cop)]
.
1211,1212c
case sym
# case rg['sym']
.
1209c
cop, sym = rg.to_ra('cop', 'sym')
.
1204a
rou = @Rou
.
1203d
1201a
# ise = []
.
1190c
loc = @@Loc
sl = @Slp
.
1188a
def isfl(rg)
a = []
fb = iset(rg)
Fiber.new {
loop {
# Fiber.yield r = true == fb.resume(*a)
Fiber.yield true == fb.resume(*a)
# fb = fls
# Fiber.yield fb.resume(m)
}
}
end

.
1185c
# sym = OPTABLE_SYM[imem.get_opcode(cop)]
sym = OPTABLE_SYM[(rou = @@Rou).get_opcode(cop)] # c
.
1177c
# @@opf = ->(irep, pc, imem) { # l
@@opf = ->(irep, pc) { # l
.
1170c
# printf("Unkown code %s \n", OPTABLE_SYM[get_opcode(cop)])
.
1164c
# @stack[@sp + a] = @stack[@sp + a].send(mid, *args)
.
1160c
# args.push @stack[@sp + a + i + 1]
.
1156c
# next
.
1149c
# @pc = 0
.
1141,1145c
callinfo.pi
# @sp += a
.
1139c
callinfo[0] = irep
.
1136c
callinfo.pi
.
1134c
callinfo[0] = rg['pc']
.
1131c
callinfo.pi
.
1129c
callinfo[0] = rg['sp']
.
1127c
# @callinfo[@cp] = @sp
.
1122,1123c
n = rou.getarg_c(cop)
# newirep = Irep::get_irep(@stack[@sp + a], mid)
.
1120c
mid = irep.syms[rou.getarg_b(cop)]
.
1118c
a = rou.getarg_a(cop)
.
1107,1108c
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
# next
.
1104,1105c
if !stack[rou.getarg_a(cop)]
# @pc = @pc + getarg_sbx(cop)
.
1102c
# if !@stack[@sp + getarg_a(cop)] then
.
1096c
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
.
1093c
if stack[rou.getarg_a(cop)]
.
1087,1088c
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
# next
.
1085c
# @pc = @pc + getarg_sbx(cop)
.
1077,1078c
case sym
# case rg['sym']
.
1075c
rou = @@Rou
# cop = rg['cop']
cop, sym = rg.to_ra('cop', 'sym')
.
1070a
# pl1[i_lf] += 1
.
1069c
sp = [*sp]
.
1067c
# (0 != thi && ht <= thi) ? thi = 0 : thi += 1
thi += (0 != thi && ht <= thi) ? -thi : 1
# Fiber.yield(0 == thi) ##
# begin # fuantei ? mruby:70410200 monami-ya.mrb:60510200
loop {
sl.slp 0
Fiber.yield(0 <= pc ? [true][thi] : ([pcabs][thi] || pc)) # cp
# end while [true][thi] # fuantei ? mruby:70410200 monami-ya.mrb:60510200
break if 0 != thi }
.
1063,1065c
pl.ctr_s(pc1) if 0 == thi
.
1061d
1056,1059c
opa = opg.(thi).push('ctr', [sp]) # c
.
1046a
# 0 != kfv.size ? lopa += kfv : lopa.push(k, fv)
.
1045d
1042c
# kfv = fv[oi] ? [thl[oi], fv[oi]] : []
.
1038a
# kfv = [thl[oi], imem.ta(fv[oi], cop), thl[oi + 1], []]
.
1036d
1032a
# kfv = []
.
1027d
1025d
1013a
sl = @Slp
.
1009,1010c
pcabs = pc.abs # cp
# pc1 = pc + 1
pc1 = pcabs + 1 # cp
loc = @@Loc
.
1006a
rg = Rg.new rg
.
993,994d
989,991c
# s.s.hgt <= mx && mx = s.s.hgt
s.size - 1 <= mx && mx = s.size - 1
.
982,984c
r = (r = plr[r1] ; r1 >= sz ||
r.nil?) ? lm.(r1) : r # c
.
974d
972d
965,966c
# flg[0] && sp || s.p = sp = [pl[i_sp]].flatten[0]
.
959,960c
# f = ktf && flg.all?
.
950,954d
942a
mx = 0xf
.
932,934d
926,929c
# pl, sp, mt, isr0, r, r0, r1, sym, pr = nil
pl, sp, mt, isr0, r, r0, r1, sym, sy, pr = nil
.
921d
916d
913c
loc = @@Loc
.
906d
904d
901,902c
when Array then lpl.ckth(r[1], 2) && r[1] = r[0] end # q
.
899a

# case pl[lpl.afl('ctr', ?i)][0]
# when Array then lpl.ckth(r1 = pl[lpl.afl('th1', ?i)], 3) && r<< r1 # q # p
# end
# r[1] = r[-1]

thl.each_with_index { |v, n| r[n] = pl[lpl.afl(v, ?i)]} # q
# r[1] = r[0] if
# knid(pl[lpl.afl('ctr', ?i)][0], :Array) && lpl.ckth(r[1], 2) # q

.
896a
# r = [pl[lpl.afl('th0', ?i)]] # q
.
894,895c
thl = @@mh_thl
r = []
.
888c
# ENVary.new(0).plm(pc)
Pl.new.plm(pc)
.
866c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # www.monami-ya.jp
.
859d
840,842c
# GC.disable # g # gene gc enable : mruby 6170410200 d17506c1
.
826,830c
# @pl = ENVary.new(rmth + 1, thini, thini, [], [])
.
809a
@Rou = @@Rou
.
807d
801a
@@Rou = ROU
.
800d
798d
795,796c
@@Loc = LOC
.
776c
if a.empty?
@a.map { |v| v.dup}
else
a.map { |v| self[v]}
end
.
710c
# @p = a[0] if ! a.empty?
# @p = pt
.
707a
# def sp(pt)
.
703,704c
def pi() @p += 1 end
.
674c
##### attr_accessor :p, :s # fuantei mruby 70410200
attr_accessor :p
.
639c
# class Pl < ENVary
.
631c
# @@Slp.slp
sl.slp
.
604a
sl = @@Slp
.
596d
594d
592d
589c
# idx += 1 unless arf = ckth(th[idx], 2)
# idx += 1 unless arf = mx == idx ? arf : ckth(th[idx], 2)
idx += 1 unless arf = ckth(th[idx], 2) if mx != idx
.
586c
# @@Slp.slp 0
sl.slp 0
.
583d
580,581c
unless arf = ckth(th[mx], 2)
.
577d
575d
572d
569d
567c
sl = @@Slp
.
561c
# (imem = @@Imem).mcall(*a) || a[1]
# (imem = @@Imem).send(*a) || a[1]
(rou = ROU).send(*a) || a[1]
.
548d
544a
# private
end

# module M__Pl # higokan ? mruby 70410200
class Pl < ENVary
def initialize; end

.
542c
end.!.!
.
510,511c
# ctr = (cta = pl_g(0).afl('ctr', self)).shift
# pl_es(0, ['ctr', cta])
# ctr
[(c = pl_g(0).afl('ctr', self)).shift, pl_es(0, ['ctr', c])][0]
.
505,507c
# def to_ia(n, lpl = self)
# [lpl = lpl[n], 0 != n && (return @@Plmg.(@@pl0i, lpl))][0] # r # c
# end
.
500,501d
498c
pl_s(n, pl)
.
480,496c
i = self.afl(k, ?i) # q
'ctr' == k && knid(v, :Array).! ? pl[i]<< v : pl[i] = v # p
# 'ctr' == k && case v when Array then pl[i] = v else pl[i]<< v end # p # higokan mruby 70410200
# 'ctr' == k && pl[i] = case v when Array then v else pl[i] + [v] end # p # higokan mruby 70410200
.
474d
467,468c
def pl_es(n = 0, a)
.
457a
GC.disable # g # fuguai taisaku
.
436a
# @@Idx0 = ->(n = 0, t = 1) {n + (t > n ? 1 : 0)} # l
.
421a
# @@loc.ploc(n) { |a| JSON::parse(ENV[@@idb + a[0]])}
.
410a
# @@loc.ploc(n, v) { |a| ENV[@@idb + a[0]] = JSON::generate(a[1])}
.
386,391c
## @sz = a.size
# if 1 > n
## @n = -n
## return self[@n]
# return
# end
.
376d
365,366d
362,363d
357d
341c
# include RiteOpcodeUtil
.
335,337c
# def mcall(*op)
# case op[0] when Numeric then op.inject else self.__send__(*op) end
# end
.
311,330c
# def s__sr0( *a) a[0][ a[@@I_s__r0]] end
# def s__r0( *a) a[@@I_s__r0] end
# def s__sr01( *a) a[0][ a[@@I_s__r0] + 1] end
## def s__i_pool_r0( *a) a[@@I_s__i].pool[ a[@@I_s__r0]] end
## def s__i_syms_r0( *a) a[@@I_s__i].syms[ a[@@I_s__r0]] end
# def s__i__r0( *a) a[0].send(a[@@I_s__mt])[a[@@I_s__r0]] end
# def s__r1_eq_sr01(*a) a[0][ a[@@I_s__r1]] ==
# a[0][ a[@@I_s__r0] + 1] end

def s__sr0( *a) a[0][ a[1]] end
def s__r0( *a) a[1] end
def s__sr01( *a) a[0][ a[1] + 1] end
def s__i__r0( *a) a[0].send(a[3])[a[1]] end
def s__r1_eq_sr01(*a) a[0][ a[2]] ==
a[0][ a[1] + 1] end
.
309c
# @@I_s__r0 = 1; @@I_s__r1 = 2; @@I_s__mt = 3
.
197,198d
178d
169,172c
class Rou
include RiteOpcodeUtil
include M__Rou
end

ROU = Rou.new
.
167c
module M__Rou
def send(*op)
case op[0] when Numeric then op.inject else self.__send__(*op) end
end
end
.
24,25c
# NSL_ = 6309 # nanosleep()
NSL_ = 10065 # nanosleep()
.
22a
GC.start # g

YAMAGUTIseisei

unread,
Dec 15, 2019, 7:30:22 AM12/15/19
to
1406c
# ise[0].reject! { |fis| fis[1].resume && 0 <= fis[0]}
# ise[i_i_d].delif_c(2) { |fis, n| fis[1].resume(n) && 0 <= fis[0]} # thl.size
ise[i_i_d].reject!.with_index { |fis, n| fis[1].resume(n) && 0 <= fis[0]}
##### ise[i_i_d].each_index { |n| fis = ise[i_i_d][n]
############ ise[i_i_d].reject!.with_index { |fis, n|
####### if fis[1].resume(n) && 0 <= fis[0]
############ fis[1].resume(n) && 0 <= fis[0]
####### end
############ }
# rg.isk

# 0.step(@@rmth) { |n| # higokan ? touki 70410200
# fl.shift && redo if fl[n] && fl[n].resume(n) && 0 == n

# }
.
1404c
# (fl<< pfl[1]; ise[1].shift) if ! pfl[0] || 0 <= pfl[0] # p
# fl<< pfl[1] if ! pfl[0] || 0 <= pfl[0] # p
if pfl
# ise[0]<< [pfl[0], isfl(pfl[1])] # p
ise[i_i_d]<< [pfl[0], isfl(pfl[1])] # p
# ise[i_i_d]<< [pfl[0], iset(pfl[1])] # p
if 0 <= pfl[0]
# fl<< fls(pfl[0]) # p
ise[i_i_f]<< fls(pfl[0]) # p
end
true
# fl<< pfl[1] && ise[1].shift && redo if pfl && (! pfl[0] || 0 <= pfl[0]) # p
end
}
# rg.iss { |n, pfl01| [iset(pfl01[n]), fls(pfl01[n])][n] }
.
1402c
# ise[i_i_s].delif_c(2) { |pfl, n| # thl.size
# ise[1].reject! { |pfl|
.
1394,1400c
ise[i_i_s].reject!.with_index { |pfl, n| # Inspired by : RobertDoggett ? http://microware.com/# , Professor TAKAZAWA Yosimitu http://mu.ice.uec.ac.jp/~takazawa/
.
1366,1368c
# if fl.empty?
##### if ise[i_i_f].empty?
if ise[i_i_f].empty? # && 0 > rg['ctr', 1]
# if rg.flok
# if pco.! && fl.empty? # d~ng
.
1357c
# end
)
.
1355c
# ise[i_i_s].push([false, false], [false, false])
.
1353c
# unless ifj.(rg['sym'])
.
1346,1350c
)][0] && (
# else
# next if pcoj.call
# pco<< rg['pc'] if ifj.(rg['sym']) # p c
pco[0] = rg['pc'] if ifj.(rg['sym']) # p # c
.
1344c
# rg.ist { |n| fls(n) }
false), (
.
1341,1342c
# unless (ifj.(rg['sym']) || ifs.(rg['sym'])) # c 2
[(ifj.(rg['sym']) || ifs.(rg['sym'])) || ( # c 2
.
1337a
# @@opg.(irep, rg, imem) # c
.
1334d
1318,1332c
ise[i_i_f].delif_c(1) { |v, n| v.resume(n)}

# rg.fls
.
1311,1316c
####### ise[i_i_f].delete_at(n) && redo if ise[i_i_f][n] && ise[i_i_f][n].resume(n) && 0 == n
.
1309c
##### 0.step(1) { |n|
##### 0.step(0) { |n|
# fl.delete_at(n) && redo if fl[n] && fl[n].resume(n) && 0 == n
.
1301d
1293,1298c

# ise[1]<< [0 > rg.pg ? -rg['pc'] : rg['pc'], rg.to_a] # p # cp
ise[i_i_s]<< [0 > rg.pg ? -rg['pc'] : rg['pc'], rg.to_a] # p # cp
# pcf = rg['pc']
# ise[1]<< [pcf, rg.to_a] # p
.
1291a
pfl = nil
.
1290c
# ise[0]<< pfl # p
ise[i_i_d]<< pfl # p
.
1279,1286c
if pcf.abs == rg['pc'] # cp
# fl<< fls(pcf.abs) # p # cp
ise[i_i_f]<< fls(pcf.abs) # p # cp
pfl[0] = pcf.abs # cp
# ise[0]<< pfl # p
ise[i_i_d]<< pfl # p
.
1270,1276c
# unless ise[0].empty?
# pfl = ise[0].pop
unless ise[i_i_d].empty?
pfl = ise[i_i_d].pop
.
1263c
c, sym = @@opf.(irep, rg['pc']) # c
.
1255d
1207d
1204c
cop, sym = rg['cop'], rg['sym']
.
1201a
# rg = Ist.new([['ctr', 1], ['pc', @pc], ['sp', @sp], ['cop'], ['sym']])
.
1200a
i_i_f = 0; i_i_d = 1; i_i_s = 2

.
1196,1197c
# ise = [[], []]
ise = [[], [], []]
# ise = Ist.new
.
1174,1177c
# Fiber.yield true == fb.resume(*a)
# r ||= (true == fb.resume ? true : false) && r
r = (true == fb.resume ? true : false) # && r
# m = Fiber.yield r
Fiber.yield r
r = true
# r = fl.resume(m)
.
1172c
##### fl = fls(pc.abs) # if 0 <= pc # cp
r = false
Fiber.new { |m = 1|
.
1170c
# a = []
rg = Rg.new rg
pc = ['pc']
.
1164,1165c
sym = OPTABLE_SYM[rou.get_opcode(cop)]
.
1156a
rou = @@Rou
.
1155d
1059d
1055,1056c
# cop, sym = rg['cop'], rg['sym']
# cop, sym = rg.to_ra('cop', 'sym')
cop, sym = rg.to_a('cop', 'sym')
.
1046,1047c
sp = [sp].flatten
.
1037,1039c
(0 != thi && ht <= thi) ? thi = 0 : thi += 1

.
1034a
pl.pl_es(pc1, opa)
.
1033d
1021c
# lopa.push(k, fv) # if k
k && lopa.push(*fv)
.
1019a
else
# k && lopa<< k # p
lopa<< k # p
.
1017c
# fv[oi] ? (k, fv = [thl[oi], fv[oi]]) : k = nil
fv[oi] ? (fv = [thl[oi], fv[oi]]) : k = nil

.
1012,1014c
# lopa.push(thl[oi], imem.ta(fv[oi], cop))
# k, fv = [thl[oi + 1], []] # t
fv = [thl[oi], imem.ta(fv[oi], cop), thl[oi + 1], []] # t

# kfv = [thl[oi], imem.ta(fv[oi], cop), thl[oi + 1], []] # t
.
1009c
if v # && knid(fv, :Array)
.
989a

.
984d
980,981c
# rg = Rg.new rg
pc, sp, cop, sym = rg.to_a('pc', 'sp', 'cop', 'sym')
.
972a
ca[flg.inject(0) { |rv, v| rv = v ? 0 : 1 | rv << 1}].call
.
951,971c
# pr || (pr, sy, mt = imem.fml('st', sym)[1 .. -1])
# isr0 = [mt ? i : s, r0]
# sz = plr.size if flg[0]
if flg[0]
pr || (pr, sy, mt = imem.fml('st', sym)[1 .. -1])
isr0 = [mt ? i : s, r0]
sz = plr.size
.
948,949c

f = # ktf &&
flg.all?

# m = fy.(m, false) # c
end
if 0 == m
.
940,945d
934a
r0, r1 = r
.
928c
# mx = 0xf
.
922a
mx = 0xf
ca = [
-> { # f # && ktf
# r = r1 < sz && plr[r1] || lm.(isr0, r1) # c
r = (r = plr[r1] ; r1 >= sz ||
r.nil?) ? lm.(r1) : r # c
s[r1] = sy ? [s[r1], r].inject(sy) : r
rs = [r1.to_xeh, r0.to_xeh]},
-> { # flg[0] # && ktf
## ((sw = sp + sz) + 0xe).step(sw, -1) { # higokan mruby 70410200 # bbab89e7 5211410200 tmtm
# s.s.hgt <= mx && mx = s.s.hgt
# sz.step(mx) { |n| plr<< lm.(isr0, s[n])} # p c
s.size < mx && mx = s.size - 1
# sz.step(mx) { |n| plr<< lm.(isr0, s[n])} # p c
sz.step(mx) { |n| plr<< lm.(s[n])} # p c
rs[1] = r0.to_xeh},
-> { # flg[-1] # && ktf
rs[0] = r1.to_xeh},
-> {}
] # .lazy

## fy = ->(m, f) { # l
# fy = ->(m, f) {fa = [f, false] # l
# loop {
# loc.verb "#{pc.to_xeh} #{sym} #{rs[1]} #{rs[0]}"
## Fiber.yield(f && 0 == m)
## m = Fiber.yield([f][m.abs])
## m = Fiber.yield(fa[m])
# m = Fiber.yield(f && fa[m])
## break(m) unless [f][m.abs]
# break(m) unless fa[m] }
## }
# }

.
916,917c
pl, sp, mt, isr0, r, r0, r1, sym, sy, pr, sz = nil
.
910c
# f = false; flg = [false] # ; ktf = false
f = false; flg = [false, false] # ; ktf = false
.
892,896c
r[1] = r[0] if
knid(pl[lpl.afl('ctr', ?i)][0], :Array) && lpl.ckth(r[1], 2) # q
.
881,890d
871d
861c
# pl.ref_pl0i
.
849c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # http://www.monami-ya.jp/
.
816d
777a
#module M__Ist
## def initialize_with_ist(*a)
## initialize_without_ist(*a)
# def initialize(*a)
# super
# @i_i_f = 0; @i_i_d = 1; @i_i_s = 2
# @ise = [[], [], []]
# end
## alias_method_chain :initialize, :ist

# def ist # (rg)
# if ! @ise[@i_i_d].empty?
# pfl = @ise[@i_i_d].pop
# pcf = pfl[0]
# if pcf < 0
## if pcf.abs == rg['pc'] # cp
# if pcf.abs == @a.assoc('pc')[1] # cp
## @ise[@i_i_f]<< fls(pcf.abs) # cp
# @ise[@i_i_f]<< yield(pcf.abs) # cp
# pfl[0] = pcf.abs # cp
# @ise[@i_i_d]<< pfl
# end
# else
# @ise[@i_i_d]<< pfl
# end
# pfl = nil
# end
#
## @ise[@i_i_s]<< [0 > @a['ctr', 1] ? -@a['pc'] : @a['pc'], @a.to_a]
# @ise[@i_i_s]<< [0 > @a.assoc('ctr')[1] ? -...@a.assoc('pc')[1] : @a.assoc('pc')[1], @a]
# end

# def fls
# 0.step(1) { |n|
## fl.delete_at(n) && redo if fl[n] && fl[n].resume(n) && 0 == n
# @ise[@i_i_f].delete_at(n) && redo if
# @ise[@i_i_f][n] && @ise[@i_i_f][n].resume(n) && 0 == n

# }
# end

# def iss # (po = nil)
## ise[1].each_index { |n|
# @ise[@i_i_s].each_index { |n|
## ise[1].reject! { |pfl|
## (fl<< pfl[1]; ise[1].shift) if 0 <= pfl[0]
## (fl<< pfl[1]; ise[1].shift) if ! pfl[0] || 0 <= pfl[0]
## fl<< pfl[1] if ! pfl[0] || 0 <= pfl[0]
## pfl = ise[1][n]
# pfl = @ise[@i_i_s][n]
# if pfl
## ise[1].shift
# @ise[@i_i_s].shift
## ise[0]<< [pfl[0], isfl(pfl[1])]
## @ise[@i_i_d]<< [pfl[0], isfl(pfl[1])]
## @ise[@i_i_d]<< [pfl[0], iset(pfl[1])]
# @ise[@i_i_d]<< [pfl[0], yield(1, pfl)]
# if 0 <= pfl[0]
## fl<< fls(pfl[0])
## @ise[@i_i_f]<< fls(pfl[0])
# @ise[@i_i_f]<< yield(0, pfl)
# end
# redo
## fl<< pfl[1] && ise[1].shift && redo if pfl && (! pfl[0] || 0 <= pfl[0])
# end

# }
# end

# def isk
# ise[@i_i_d].reject! { |fis| fis[1].resume && 0 <= fis[0]}
# end
#
# def flok
# 0 == @ise[@i_i_f].size
# end
#end

#class Ist < Rg
## class Ist
# include M__Ist
#end

.
763,768c
def to_a(*a)
# if a.empty?
# @a.map { |v| v.dup}
# else
# a.map { |v| self[v]}
# end
a.empty? ? @a.map { |v| v.dup} : a.map { |v| self[v]}
.
760a
# @p
.
756a
# @p = i
.
751,752c
# v = -v if 'pc' == k && v == @a.assoc(k)[i] && knid(v, :Numeric) # cp
# 'pc' == k && case v when Numeric then v == @a.assoc(k)[i] && v = -v end # cp
@a.assoc(k)[i] = v
.
747c
# i ||= @a.assoc('ctr')[1]
i ||= @p
.
735c
# i ||= @a.assoc('ctr')[1]
i ||= @p
.
713a
@p = 1
.
621,622d
612,616d
584d
570d
568c
# flg = true ##
flg ||= ckth(th[mx], 1)
.
559a
# th = (0 .. 1).map { |v| pl_eg(pc, thl[v])}
.
549,551c
# (rou = ROU).send(*a) || a[1]
self.send(*a) || a[1]
.
546c
# GC.start # g # fuantei ( keisan gosa ) ?
.
540,541c
# knid(a, :Array) ? __method__(a, pc) : a # s_id(a, pc) : # 310200plini ?
case a when Array then __method__(a, pc) else a end # s_id(a, pc) else # 310200plini ?
.
533a
def send(*op)
# knid(op[0], :Numeric) ? op.inject(:+) : (rou = ROU).send(*op)
case op[0] when Numeric then op.inject else (rou = ROU).send(*op) end
# op.inject(knid(op[0], :Numeric) ? :+ : '(rou = ROU).send')
end

.
524c
end == true
.
484,488d
470,471c
a.each_slice(2) { |k, v| # .shift(2) higokan mruby 70410200
# 'ctr_s' == k && break(-v) # higokan ? mruby 70410200
.
467c
# n = arg.shift if arg.first.is_a?(Numeric) # unwork ( thread ? )
.
453,455c
self[n] = 0 == n ? @@Plmg.(pl_g(-1), pl) : pl # c
.
431d
416d
404d
387a
n = a.shift
.
378,384c
# a || return # 410200plini
.
368,369d
357d
332,336d
327c
# def s__i__r0( *a) a[0].send(a[3])[a[1]] end
def s__send( *a) a[0].send(a[3])[a[1]] end
.
255,256c
@@fml.(lb).assoc(sym) # c
.
234,235c
# [:MOVE, :__sr0], [:LOADL, :__i__r0, nil, :pool],
# [:LOADI, :__r0 ], [:LOADSYM, :__i__r0, nil, :syms],
[:MOVE, :__sr0], [:LOADL, :__send, nil, :pool],
[:LOADI, :__r0 ], [:LOADSYM, :__send, nil, :syms],
.
216c
# GC.disable # g
@@Slp.slp 0

.
195c
# GC.disable # g
# @@Slp.slp 0
.
175c
# include RiteOpcodeUtil
.
169,171c
include RiteOpcodeUtil

# def send(*op)
# knid(op[0], :Numeric) ? op.inject(:+) : self.__send__(*op)
# end
.
145c
## t -= t <=> 1
# t += 1 <=> t
.
25,26c
NSL_ = 6309 # nanosleep()
# NSL_ = 10065 # nanosleep()
.
23c
# GC.start # g

YAMAGUTIseisei

unread,
Feb 16, 2020, 11:42:50 AM2/16/20
to
1536c
# GC.start # g # antei ?
.
1532c
# GC.start # g
.
1527c
# fib(20)
fib(3)
# 3 + 382
.
1504c
# fl.delete_at(n) && redo if fl[n] && fl[n].resume(n) && 0 == n
.
1492,1501c
####### mn = 0 > fis[0] ? -1 : n
# if fis[1].resume(n) && 0 <= fis[0]
####### if fis[1].resume(mn) # && 0 <= fis[0]
# end

# ise[i_i_d].reject!.with_index { |fis, n|
ise[i_i_d].delif_c(1) { |fis, n|
# n = 0 > fis[0] ? -1 : n
0 > fis[0] && n = -1
# fis[1].resume(n) && 0 <= fis[0]
fis[1].resume(n)
}

.
1490d
1481,1487c
# if 0 <= pfl[0]
# ise[i_i_f]<< fls(pfl[0]) # p
# end
# true
.
1479d
1473,1477c
ise[i_i_s].reject! { |pfl| # Inspired by : RobertDoggett ? http://microware.com/# , Professor TAKAZAWA Yosimitu http://mu.ice.uec.ac.jp/~takazawa/
# ise[i_i_s].delif_c(1) { |pfl|
.
1471c
####### if pfl
####### ise[i_i_d]<< [pfl[0], isfl(pfl[1])] # p
# if 0 <= pfl[0]
# ise[i_i_f]<< fls(pfl[0]) # p
# end
.
1463c
stack.p = rg['sp']
.
1445a

# rg['ctr', 1] = rg['ctr', 1].abs # cp
.
1441,1444c
# if ise[i_i_f].empty?
if ise[i_i_d].empty? || (1 == ise[i_i_d].size && 0 > ise[i_i_d][-1][0])
.
1430,1431c

# rg['ctr', 1] *= -1 # kakezan
rg.ps(-rg.pg) # cp

# if ifj.(rg['sym'])
# stu.(rg['pc'] + imem.getarg_sbx(rg['cop'], rg['sym']) # c
# stu.(rg['pc'] + 1, rg['sym', -1]) # c
# end
.
1421,1427c
# pco[0] = rg['pc'] if ifj.(rg['sym']) # p
(pco[0] = rg['pc']; pctj<< pco[0] + 1) if ifj.(rg['sym']) # p # c
.
1416,1417c
# ist.call
# ist.(rg['pc']) if istm.call # c
ist.(rg['pc']) if pctj.pop != rg['pc'] && istm.call # c
.
1414d
1409,1410c
# if 0 <= rg['ctr', 1]
# opg.call
opg.(rg['pc']) # c # cp
# @@opg.(irep, rg, imem) # c
.
1405c
# }
.
1397,1403c
# 0.step(0) { |n|
# ise[i_i_f].delete_at(n) && redo if ise[i_i_f][n] && ise[i_i_f][n].resume(n) && 0 == n
.
1390,1391c
# ifj = -> (sym) {?J == sym.to_s[0]} # l # q
# ifs = -> (sym) {[:ENTER, :SEND, :RETURN, :NOP].include?(sym)} # l
ifj = ->(sy) {?J == sy.to_s[0]} # l # q
ifs = ->(sy) {[:ENTER, :SEND, :RETURN, :NOP].include?(sy)} # l

# stu = ->(pcl, sy) { # l
# opg.(pcl) # c
# ist.(pcl) unless (ifj.(sy) || ifs.(sy)) # c 3
# pcoj.call
# }
.
1383,1387c
true
}
ist = ->(pcl, po = 0) { # l
# ise[i_i_s]<< [0 > rg['ctr', 1] ? -rg['pc'] : rg['pc'], rg.to_a] # p # cp
# ise[i_i_s]<< [0 > rg.pg ? -pcl : pcl, rg.to_a] # p # cp
ise[i_i_s]<< [0 > rg.pg ? -pcl : pcl, Rg.new(rg.to_a)] # p # cp
# ise[i_i_s]<< [0 > rg['ctr', 1] ? -pcl : pcl, rg.ss(po)] # p # cp
.
1381c
# pfl = nil
.
1378,1379c
ise[i_i_d]<< pfl # p
.
1373,1375c
ise[i_i_d]<< pfl # p
# next
next false
.
1370,1371c
# ise[i_i_f]<< fls(pcf.abs) # p # cp
.
1362,1366c
istm = -> { # l
# unless ise[i_i_d].empty?
# pfl = ise[i_i_d].pop
if pfl = ise[i_i_d].pop
.
1354,1356c
# @@opg = ->(irep, rg, imem) { # l
# opg = -> { # l
opg = ->(pcl) { # l
# c, sym = @@opf.(irep, rg['pc'], imem) # c
c, sym = @@opf.(irep, pcl) # c
.
1328c
callinfo.p -= 1
.
1322c
callinfo.p -= 1
.
1315c
callinfo.p -= 1
.
1312d
1308d
1306c
if 0 == callinfo.p
.
1295,1296c
# rg = Rg.new([['ctr', 1], ['pc', @pc], ['sp', @sp], ['cop'], ['sym']])
rg = Rg.new([['pc', @pc], ['sp', @sp], ['cop'], ['sym']])
.
1293c
# i_i_f = 0; i_i_d = 1; i_i_s = 2
i_i_d = 0; i_i_u = 1; i_i_s = 2
.
1289c
pctj = []
.
1285,1287c
# fl = []
.
1262,1268c
# r = (true == fb.resume ? true : false) # && r
ri ||= (true == fb || true == fb.resume ? fb = true : false)
m = Fiber.yield ri && rf
# Fiber.yield r
rf = fl.resume(m.abs) if 0 <= m # || 0 <= pc
.
1258,1259c
fl = fls(pc.abs) # if 0 <= pc # cp
# r = false
ri, rf = false
.
1254,1256c
# rg.to_s # fuguai taisaku mruby 70410200
# rg = Rg.new rg
pc = rg['pc']
sl = @Slp
# pc = rg.assoc('pc')[1]
.
1249c
# sym = OPTABLE_SYM[imem.get_opcode(cop)]
sym = OPTABLE_SYM[(rou = @@Rou).get_opcode(cop)]
.
1241d
1207c
callinfo.p += 1
.
1202c
callinfo.p += 1
.
1197c
callinfo.p += 1
.
1169d
1158d
1140,1141d
1132c
# sp = [sp].flatten
sp = [sb].flatten
.
1117c
# Fiber.new { ##
Fiber.new { |thi = 0| ##
.
1115c
# thi = 0 ##
.
1109a
# kfv.empty? lopa.push(k, fv) : lopa += kfv
.
1108c
# k && lopa.push(*fv)
lopa.push(*fv)
.
1104d
1097,1099c
# fv[oi] = imem.ta(fv[oi], cop) if oi <= ht = fv.hgt
fv[oi] = ta.(fv[oi]) if oi <= ht = fv.hgt # c
# fv[oi] ? (fv = [thl[oi], fv[oi]]) : k = nil
fv = fv[oi] ? [thl[oi], fv[oi]] : []
.
1091,1093c
# fv = [thl[oi], imem.ta(fv[oi], cop), thl[oi + 1], []] # t
fv = [thl[oi], ta.(fv[oi]), thl[oi + 1], []] # c t
.
1080a
sb = sp
ta = ->(ta) { # l
[ta[0] || (sb = ~ [sp].flatten[0]; :getarg_a), ta[1] || cop][
0 .. ta[2] || 1] }
.
1073,1074c
# printf("Unkown code %s \n", OPTABLE_SYM[@Rou.get_opcode(cop)])
.
1062,1063c
# pcabs = pc.abs # cp
# pc1 = pcabs + 1 # cp
pc1 = (pcabs = pc.abs) + 1 # cp

.
1059d
1047c
# pr || (pr, sy, mt = imem.fml('st', sym)[1 .. -1])
pr || (pr, sy = imem.fml('st', sym)[1 .. -1]
?_ == pr.to_s[1] || (mt, pr = [pr, imem.l__s__send])) # q
.
1043,1045d
1033,1034c

# if flg[0] && 0 > (sp || s.p = sp = pl[i_sp].flatten[0])
# flg[0] && s.ps([pl[i_sp]].flatten[0]) { |i| # && 0 <= sp
flg[0] && s.ps(pl[i_sp].flatten[0]) { |i| # && 0 <= sp
0 > i ? (r[1] = r[0]; flg[1] = true; ~ i) : i
}
.
1027d
1020d
991,995c
# s.s.hgt <= mx && mx = s.s.hgt
# s.s.hgt <= mx = 0xf && mx = s.s.hgt
# s.size < mx = 0xf && mx = s.size - 1
# (mx = 0xf) > (mx |= s.size << 7) >> 7 && mx = (mx >> 7) - 1; mx &= 0x7f # .b
### (mx = 0xf) > (mx |= s.size - 1 << 8) >> 8 && mx >>= 8; mx &= 0xff # .b
(rs[1] = s.size) < mx = 0xf && mx = rs[1] - 1
# sz.step(mx) { |n| plr<< lm.(isr0, s[n])} # p c
(sz .. mx).each { |n| plr<< lm.(s[n])} # p c
# s.s.empty? ? @Slp.slp(0) : plr += lm.(isr0, s[plr.size, 0xf]) # c
.
981c
# mx = 0xf
.
974,975c
# sp, sz, isr0, r0, r1, lm, sy = [][0]
# pl, sp, mt, isr0, r, r0, r1, sym, sy, pr, sz = nil
pl, mt, isr0, r, r0, r1, sym, sy, pr, sz = nil
.
968d
952,954c
r = [pl[lpl.afl(thl[0], ?i)]] # q
r1 = pl[lpl.afl(thl[1], ?i)] # q
r<< r1 if knid(pl[lpl.afl('ctr', ?i)][0], :Array) && lpl.ckth(r1, 3) # p # q

# r.map { |v| v[1] = v[-1]}
# r = r.map { |v| v[1] = v[-1]} # higokan ? mruby 70410200
# [pl[lpl.afl('sym', ?i)].to_sym, # q
# *[r, r.map { |v| lpl.ckth(v, 1)}].map { |v| [v[0], v[-1]]}]
.
950d
932,933d
921c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # www.monami-ya.jp
.
868c
# GC.start # g # antei ?
.
768,850d
748,749c
# @a.assoc('ctr')[1]
@p
.
743,744c
# @a.assoc('ctr')[1] = i
@p = i
.
739c
@a.assoc(k)[i] = v
.
715a
# def ss(po = 0, ctr = nil)
# @a.map { |v| k = v[0]
# if ! 'ctr' == k # v[0]
# v = [k, v[self.assoc('ctr')[1]]]
# v[1] += po if 'pc' == k
# end
# v
# }
# end

.
682c
# @p = i
# (i == @p) && return(i) # higokan ? mruby 70410200
return i if i == @p
# @p = 0 > i ? ~ i : i
@p = b ? yield(i) : i
.
678,679c
# def ps(i)
def ps(i, &b)
# id = self.object_id
.
672,674c
# def pg() @p end
# def pi() @p += 1 end
# def pd() @p -= 1 end
.
603c
# GC.start # g # antei ?
.
596,597d
568,569c
# arf ||= ckth(th[idx], 2)
# th[idx] = pl_eg(pc, thl[idx]) if arf
th[idx] = pl_eg(pc, thl[idx]) if arf ||= ckth(th[idx], 2)
.
551,552c
# idx = 0 ##
th = ((idx = 0) ... thl.size).map { |v| pl_eg(pc, thl[v])}
flg = false
.
549d
546d
519,522c
# def send(*op)
## knid(op[0], :Numeric) ? op.inject(:+) : (rou = ROU).send(*op)
# case op[0] when Numeric then op.inject else (rou = ROU).send(*op) end
## op.inject(knid(op[0], :Numeric) ? :+ : '(rou = ROU).send')
def send(*a)
case a[0] when Numeric then a.inject else (rou = ROU).send(*a) end
# a.inject(knid(a[0], :Numeric) ? :+ : '(rou = ROU).send')
.
466,468c
'ctr' == k && ! knid(v, :Array) ? pl[i]<< v : pl[i] = v # p
.
464d
449,450c
def pl_eg(n = 0, k)
.
438,439c
pl
# a.empty? ? pl : a.map { |a| pl.afl(a, self)}
.
426,428c
def pl_g(n = 0)
.
322,329c
# def s__i_pool_r0( *a) a[@@I_s__i].pool[ a[@@I_s__r0]] end
# def s__i_syms_r0( *a) a[@@I_s__i].syms[ a[@@I_s__r0]] end
.
263c
@@fml.(lb).assoc(sym) # c
# (f = @@fml).(lb).assoc(sym) # c
.
260c
def initialize
@l__s__send = @@l__s__send
end

# def ta(l, cop) [l[0] || :getarg_a, l[1] || cop][0 .. l[2] || 1] end
.
240,243c
# [:MOVE, :__sr0], [:LOADL, :__send, nil, :pool],
# [:LOADI, :__r0 ], [:LOADSYM, :__send, nil, :syms],
[:MOVE, :__sr0], [:LOADL, :pool],
[:LOADI, :__r0 ], [:LOADSYM, :syms],
.
237a
attr_accessor :l__s__send
@@l__s__send = :s__send

.
220,222c
GC.disable # g
.
198,199c
GC.disable # g
.
178d
171,174d
145,146c
# t += 1 - (t <=> 0) # 1 <=> t
.
125,129c
# c = (n = 0) - 1
# while i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
# a[n] && yield(a[n], c) && (a.delete_at(n); redo); n += 1
## (v = a[n]) && yield(v, c) && a.delete_at(n) || n += 1
n = 0
c = -i - 1
while 0 > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
a[n] && yield(a[n], c + i) && (a.delete_at(n); redo); n += 1
# (v = a[n]) && yield(v, c + i) && a.delete_at(n) || n += 1
.
25,26c
# NSL_ = 6309 # nanosleep()
NSL_ = 10065 # nanosleep()
.
17a
:s__send, :l__s__send,
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
heiwa furiisekkusu 1tu

YAMAGUTIseisei

unread,
Apr 19, 2020, 1:07:53 PM4/19/20
to
1477c
GC.start # g # antei ?
.
1473c
GC.start # g
.
1466,1468c
fib(20)
.
1428,1437c

ise[i_i_d].reject!.with_index { |fis, n|
# ise[i_i_d].delif_c(ts) { |fis, n|
0 > fis[0] && n = -1 # cp
# fis[1].resume(n) && 0 <= fis[0] # cp
.
1425c
#### end ####

.
1422c
# ise[i_i_f]<< fls(pfl[0]) # p
.
1418,1420c
# ise[i_i_s].delif_c(ts) { |pfl|
#### if pfl ####
ise[i_i_d]<< [pfl[0], isfl(pfl[1])] # p
.
1414c
# ise[i_i_f]<< fls(pfl[0]) # p
.
1412c
####### ise[i_i_d]<< [pfl[0], isfl(pfl[1])] # p
.
1404d
1388c
## plini
.
1385,1386c
rg.ps(rg.pg.abs)
.
1381c
# if 0 == ise[i_i_f].size
# if 0 == ise[i_i_d].size || (1 == ise[i_i_d].size && 0 > ise[i_i_d][-1][0])
.
1365,1366c
rg.ps(-rg.pg)
.
1354,1361c
# ist.(rg['pc']) if pctj.pop != rg['pc'] && istm.call # c
# false), (
ist.(rg['pc']) if pctj.pop != rg['pc'] && istm.call; false), # c
(next if pcoj.call)
][0] && (
(pctj<< (pco[0] = rg['pc']) + 1) if ifj.(rg['sym']) # p # c
.
1351c
loc.verb "#{rg['pc'].to_xeh} #{rg['sym']} #{rg['cop'].to_xeh}" if
0 <= rg.pg
.
1348,1349c
opg.(rg['pc']) # c
# @@opg.(irep, rg, imem) # c
.
1339,1343d
1324,1328d
1318d
1307,1308c
next false # r
.
1298,1299d
1290a
# c, sym = @@opf.(irep, pcl, imem) # c
.
1282d
1279a
sl.slp 0
.
1269,1271c
# if ?J == sym.to_s[0] # q
if ifj.(sym) # c
jm.(cop, sym) # c
else
callinfo, irep, rg = @@jsc.(stack, callinfo, irep, rg, imem) # c
# printf("Unkown code %s \n", OPTABLE_SYM[get_opcode(cop)])
# printf("Unkown code %s \n", OPTABLE_SYM[imem.get_opcode(cop)])
end
.
1267a

# 何もしない
when :NOP

.
1232a
ifj = ->(sy) {?J == sy.to_s[0]} # l # q
ifs = ->(sy) {[:ENTER, :SEND, :RETURN, :NOP].include?(sy)} # l

jm = ->(cop, sym) { # l
case sym

# JMP nでpcをnだけ増やす。ただし、nは符号付き
when :JMP
# @pc = @pc + getarg_sbx(cop)
# pc = pc + lpl.getarg_sbx(cop) - 1
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
# next

when :JMPIF
# if @stack[@sp + getarg_a(cop)] then
if stack[rou.getarg_a(cop)]
# @pc = @pc + getarg_sbx(cop)
# pc = pc + lpl.getarg_sbx(cop) - 1
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
# next
end

# JMPNOT Ra, nでもしRaがnilかfalseならpcをnだけ増やす。ただし、nは符号付き
when :JMPNOT
# if !@stack[@sp + getarg_a(cop)] then
if !stack[rou.getarg_a(cop)]
# @pc = @pc + getarg_sbx(cop)
# pc = pc + lpl.getarg_sbx(cop) - 1
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
# next
end

end
}

.
1230d
1227c
# i_i_f = 0; i_i_d = 1
.
1213c
# imem = @imem
imem = @Imem
.
1211a
ts = @@ts
.
1200,1201c
# ri ||= (true == fb || true == fb.resume ? fb = true : false)
ri ||= (true == fb || true == fb.resume && fb = true)
.
1183d
1083,1110c
# # JMP nでpcをnだけ増やす。ただし、nは符号付き
# when :JMP
## @pc = @pc + getarg_sbx(cop)
## pc = pc + lpl.getarg_sbx(cop) - 1
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
## next

# when :JMPIF
## if @stack[@sp + getarg_a(cop)] then
# if stack[rou.getarg_a(cop)]
## @pc = @pc + getarg_sbx(cop)
## pc = pc + lpl.getarg_sbx(cop) - 1
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
## next
# end

# # JMPNOT Ra, nでもしRaがnilかfalseならpcをnだけ増やす。ただし、nは符号付き
# when :JMPNOT
## if !@stack[@sp + getarg_a(cop)] then
# if !stack[rou.getarg_a(cop)]
## @pc = @pc + getarg_sbx(cop)
## pc = pc + lpl.getarg_sbx(cop) - 1
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
## next
# end
.
1079c
cop, sym = rg['cop'], rg['sym']
.
1068,1070c
end while [true][thi] # fuantei ? mruby:70410200 monami-ya.mrb:60510200
# break if 0 != thi }
.
1064,1065c
begin # fuantei ? mruby:70410200 monami-ya.mrb:60510200
# loop {
.
1054d
1052d
1045,1046d
1042,1043d
1032,1037c
# fv[oi] = ta.(fv[oi]) if oi <= ht = fv.hgt # c
# fv = fv[oi] ? [thl[oi], fv[oi]] : []
fv = (fv[oi] = ta.(fv[oi]) if oi <= ht = fv.hgt) ? # c
[thl[oi], fv[oi]] : []
.
1027,1030c
fv = [thl[oi], ta.(fv[oi]), thl[oi + 1], []] # c t
.
1023d
998c
# imem = @imem
imem = @Imem
.
993,994d
991c
# rg = Rg.new rg
pc, sp, cop, sym = [rg['pc'], rg['sp'], rg['cop'], rg['sym']]
.
979c
# ?_ == pr.to_s[1] || (mt, pr = [pr, imem.l__s__send])) # q
?_ == pr.to_s[1] || mt = pr) # q
.
977d
964d
960d
958c
# r.each_with_index { |v, i| flg[i] = lpl.ckth(v, 1)} ## ####
.
956c
# sym, (r0, r1) = rslt pl # higokan mruby 70410200 # bce75e27 2211410200 matz
# sym, r, flg = rslt(pl); r0, r1 = r
sym, r, flg = rslt(pl)
.
933,945d
928c
-> { # flg[-1]
.
918,926c
# sz.step(sz + ap -= ap >> 2) { |n| plr<< lm.(s[n])} # p c
# (rs[1] = s.size) < mx = 0xf && mx = rs[1] - 1
0 == s.size ? @Slp.slp(0) : # plr += lm.(s[plr.size, 0xf]) # c
plr += lm.(s[sz .. sz + (ap = (ap += ap >> 1) >> 1)]) # + (ap <=> 0)]) # c
.
916c
-> { # flg[0]
.
910,911c
-> { # f
# r = r1 < sz && plr[r1] || lm.(r1) # c
.
908d
904,906c
# sz = 4; ap = (1 << sz) - 1 - 1
# sz -= 2; ap = ((ap << sz) + ap >> sz - 1) + 1 >> 1
ap = 1 << sz = 3
ap = ((ap += (ap <<= 1) + (ap <<= 2) + (ap << 2)) >> sz) + 1 >> 1
)

# lm = ->(r1) {r1.nil? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
lm = ->(r1) {imem.send(pr, *isr0, r1, mt)} # l
.
901,902c
# pl, mt, isr0, r, r0, r1, sym, sy, pr, sz = nil
mt, isr0, r0, r1, sym, sy, pr = nil

f = false; flg = [false, false]
r = nil; rs = [?-, ?-] # q 2
.
895,898c
(
pc1 = pc + 1
loc = @@Loc
lpl = @pl # ; plb = @@plb
# imem = @imem
imem = @Imem
i_sp = lpl.afl(@pla.assoc('sp')[1], ?i) ## # q

# pl = nil; s = Stack.new; sp = nil; plr = nil
# s = Stack.new; plr = nil
s = Stack.new; plr = []
i = @irep
.
889,893d
883c
[pl[lpl.afl('sym', ?i)].to_sym, # q
r, r.map { |v| lpl.ckth(v, 1)}]
# *[r, r.map { |v| lpl.ckth(v, 1)}].map { |v| [v[0], v[-1]]}]
.
879,881c
# r = r.map { |v| v[1] = v[-1]} # higokan ? mruby 70410200
.
874,876c
# r = [pl[lpl.afl(thl[0], ?i)]] # q
r = [pl[lpl.afl(thl[0], ?i)], []] # q # t
r1 = pl[lpl.afl(thl[1], ?i)] # q
# r<< r1 if knid(pl[lpl.afl('ctr', ?i)][0], :Array) && lpl.ckth(r1, 3) # p # q
r[1] = r1 if knid(pl[lpl.afl('ctr', ?i)][0], :Array) && lpl.ckth(r1, 3) # p # q

# r = Array.new(thl.size) { |n| pl[lpl.afl(thl[n], ?i)]} # q
.
856c
# @pla = [['sp', 'ctr']]
.
852a
## self[0] = [[thl[0], [thini]], [thl[1], [thini]],
.
846c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # http://www.monami-ya.jp/
.
840a
## def plini
.
823c
GC.disable # g # gene gc enable : mruby 6170410200 d17506c1
.
816a
## @pl.plini(@@rmth, @pl = ENVary.new(rmth + 1, thini, thini, [], [])) # 310200plini ?
.
813a
# @pll = [thini, thini, [], []]
# @pl = ENVary.new(rmth + 1, thini, thini, [], [])
## @pl = ENVary.new(rmth + 1, *@pll)

## plini
# @pl.plini
.
795c
# @imem = @@Imem
@Imem = @@Imem
.
793c
GC.start # g # antei ?
.
786a
@@Loc = LOC
.
782,785d
760,768d
756d
751d
745,746c
# 'pc' == k && case v when Numeric then v == @a.assoc(k)[i] && v = -v end # cp
.
713a
def to_a
@a.map { |v| v.dup}
end

.
636d
596c
GC.start # g # antei ?
.
593c
# fpl = delif_c(1, fpl) { |fb, n| fb.resume}
fpl = delif_c(ts, fpl) { |fb, n| fb.resume}
.
573a
ts = @@ts # + 1
.
561,568c
# idx += 1 unless arf = ckth(th[idx], 2) if mx != idx
### idx += 1 unless (0 < idx ? arf = ckth(th[idx], 2) : ckth(th[idx], 0))

# th[idx] = pl_eg(pc, thl[idx]) if arf ||= ckth(th[idx], 2) # (0 < idx) == arf
## ji_ngq ||= ckth(pl_eg(pc, 'ctr')[0], 0) # sp [sp]
# ji_ngq = ckth(pl_eg(pc, 'ctr')[0], 0) if ! ji_ngq && arf ||= ckth(th[idx], 2) # sp [sp]
# th = th[0 ... idx] if ji_ngq && (arf,! || ckth(th[idx], 2))

if arf ||= ckth(th[idx], 2) # (0 < idx) == arf
th[idx] = pl_eg(pc, thl[idx]) # (0 < idx) == arf
# ji_ngq ||= ckth(pl_eg(pc, 'ctr')[0], 0) # sp [sp]
ji_ngq ||= kt.call # c # sp [sp]
# th = th[0 ... idx] if ji_ngq && arf && ckth(th[idx], 2)
th = th[0 ... idx] if ji_ngq && ckth(th[idx], 2)
end

end
} ##
.
558,559c
idx += 1 unless arf = ckth(th[idx], 2) # mx != idx ?
.
554c
# flg ||= ckth(th[mx], 1)
flg = mx <= idx && ji_ngq
.
551,552c
# if ckth(th[mx], 1) || ji_ngq
# if ckth(th[mx], 1) || ckth(pl_eg(pc, 'ctr'), 0) # sp [sp]
if ckth(th[mx], 1) || kt.call # c # sp [sp]
# unless arf = ckth(th[mx], 2)
# th.each_index { |n| pl_es(pc, [thl[n], th[n]])}
th.each_with_index { |v, n|
# th[0 .. idx].each_index { |n|
pl_es(pc, [thl[n], v])
# break if (mx >= idx || ! ji_ngq)
ji_ngq || break
# break if mx != idx
}
.
545,549c
# th = ((idx = 0) ... thl.size).map { |v| pl_eg(pc, thl[v])}
# th = Array.new(thl.size) { |v| 0 == v ? pl_eg(pc, thl[v]) : []} # t # unwork ( thread ? ) mruby 10410200
th = ((idx = 0) .. thl.hgt).map { |v|
0 == v ? pl_eg(pc, thl[v]) : [] # t
}
# flg = false
ji_ngq = false

kt = -> {ckth(pl_eg(pc, 'ctr')[0], 0)} # l # sp [sp]

Fiber.new { ##
while mx = th.hgt
.
535d
511,514d
473,475c
# def ctr_r
# pl_eg('ctr')
# end
.
459c
i = self.afl(k, ?i) # q
.
441c
self[n] = 0 == n ? @@Plmg.(pl_g(-1), pl) : pl # c
.
438c
@@Plmg = ->(pi, pv) {pi.map { |v| [v[0], pv.shift]}} # l
.
435d
432c
# pl = @@Pldv.(pl) # c
pl.map! { |a| a[1]}
.
425c
# sleep 0; GC.start; sleep 0 # g
.
423c
# @@Pldv = ->(pl) {pl.map { |a| a[1]}} # l
.
385a
## plini
.
337c
def method_missing(*a)
a[0] = ?s << a[0].to_s # q
case a[3]
# when Array then a[3].map{ |v| v.nil? ? v : send(*a[0 .. 2], v)}
when Array
a_ = a[0 .. 2]; return a[3].map{ |v| v.nil? ? v : self.send(*a_, v)} # r
else self.send(*a)
end
end
.
333d
267d
263,264d
260c
# @l__s__send = @@l__s__send
.
239,240d
234,235c
# attr_accessor :l__s__send
# @@l__s__send = :s__send
.
146a
# @@slp = (( NSL_ + ( NSL_ >> 5)) >> 8) + 2 >> 2 # 16+ bit MPU
.
133c
# a[n] && yield(a[n], c + i) && (a.delete_at(n); redo); n += 1
a[n] && yield(a[n], c + i) && (next a.delete_at(n)); n += 1
.
126,129d
33a
# rmth = 63
# rmth = 47
@@rmth = 39
@@ts = 1 # = (@@rmth >> 1) + 1 # = 68060
.
18,19c
# :s__send, :l__s__send,
:ctr_s, :p, :s, :fibt].clear
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
heiwa furiisekkusu 1t

YAMAGUTIseisei

unread,
Jul 5, 2020, 8:13:17 AM7/5/20
to
./include/mrbconf.h ( d17506c / not monami-ya.mrb )

43d



./build/mrbgems/mruby-meta-circular-heiretu/mrblib/irep.rb ( both : monami-ya.mrb , d17506c )

44,47c
# ?i != m ? self[m.afl( k, ?i)] : self[0].index(self[0].assoc(k)) # q 2
?i != m ? self[m.afl( k, ?i)] : (s = self[0]).index(s.assoc(k)) # self.index(idx) # q 2
# ?i != m ? self[m.afl( k, ?i)] : loop {(s = self[0]).index(s.assoc(k) && break)} # self.index(idx) # fuguai taisaku # q 2
.
35d



mruby-meta-circular-heiretu/sample/jit-1.rb

1469c
fis[1].resume(0 > fis[0] ? -1 : n) # cp
.
1465,1467c
# ise[i_i_d].reject!.with_index { |fis, n|
# ise[i_i_d].reject_c!(ts) { |fis, n|
ise[i_i_d].delif_c(ts) { |fis, n|
# 0 > fis[0] && n = -1 # cp
.
1452a
# ise[i_i_s].reject_c!(ts) { |pfl, n|
.
1433c
if 0 <= rg.p
.
1422c
rg.p = rg.p.abs
.
1402c
rg.p = -rg.p
.
1399d
1393,1394d
1390c
0 <= rg.p
.
1383,1384c
if pco.pop || 0 <= rg.p
.
1381a
# 0.step(0) { |n|
# ise[i_i_f].delete_at(n) && redo if ise[i_i_f][n] && ise[i_i_f][n].resume(n) && 0 == n

# }

.
1367,1369c
# ise[i_i_s]<< [0 > rg['ctr', 1] ? -rg['pc'] : rg['pc'], rg.to_ra] # p # cp
ise[i_i_s]<< [0 > rg.p ? -pcl : pcl, Rg.new(rg.to_ra)] # p # cp
# ise[i_i_s]<< [0 > rg['ctr', 1] ? -pcl : pcl, rg.ss(po)] # p # cp
.
1351,1352c
# pcf = pfl[0]
# if 0 > pcf
if 0 > pcf = pfl[0]
.
1342d
1330c
if 0 > rg.p
.
1315d
1276c
# cop, sym = rg['cop'], rg['sym']
cop, sym = rg.to_ra('cop', 'sym')
.
1272a
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
.
1264,1270c
## if !@stack[@sp + getarg_a(cop)] then
# if !stack[rou.getarg_a(cop)]
## @pc = @pc + getarg_sbx(cop)
## pc = pc + lpl.getarg_sbx(cop) - 1
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
## next
# end
! stack[rou.getarg_a(cop)] || next
.
1260c
# end
stack[rou.getarg_a(cop)] || next
.
1254,1258c
## if @stack[@sp + getarg_a(cop)] then
# if stack[rou.getarg_a(cop)]
## @pc = @pc + getarg_sbx(cop)
## pc = pc + lpl.getarg_sbx(cop) - 1
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
.
1248,1251c
## @pc = @pc + getarg_sbx(cop)
## pc = pc + lpl.getarg_sbx(cop) - 1
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
## next
.
1235d
1206,1207c
# ri ||= (true == fb || true == fb.resume && fb = true)
ri ||= true == fb || (true == fb.resume && fb = true)
.
1198d
1196c
# rg = Rg.new(*rg)
.
1093,1118d
1089c
# cop, sym = rg['cop'], rg['sym']
cop, sym = rg.to_ra('cop', 'sym')
.
1079,1080c
# end while [true][thi] # fuantei ? mruby:70410200 monami-ya.mrb:60510200
break if 0 != thi }
.
1075,1076c
# begin # fuantei ? mruby:70410200 monami-ya.mrb:60510200
loop {
.
1068,1073c
# opa = opg.(thi).push('ctr', [sp]) # c
#
# pl.pl_es(pc1, opa)

pl.pl_es(pc1, opg.(thi).push('ctr', [sp])) # c

# pl.ctr_s(pc1) if 0 == thi
#
# (0 != thi && ht <= thi) ? thi = 0 : thi += 1

if 0 == thi
pl.ctr_s(pc1)
elsif ht <= thi
thi = -1
end
thi += 1
.
1047,1057c
# if 'th' == k
# if 0 == oi
# fv = [thl[oi], ta.(fv[oi]), thl[oi + 1], []] # c
# else
# fv = (fv[oi] = ta.(fv[oi]) if oi <= ht = fv.hgt) ? # c
# [thl[oi], fv[oi]] : []
# end
case k
when 'th'
fv = [
-> {[thl[oi], ta.(fv[oi]), thl[oi + 1], []]}, # c
-> {(fv[oi] = ta.(fv[oi]) if oi <= ht = fv.hgt) ? # c
[thl[oi], fv[oi]] : []}
][oi <=> 0].call
# else
else lopa<< k # p
.
1020d
1014d
1001d
996a

1 < m && m = fy.(m, false) # c

.
995a
2 < m && m = fy.(m, false) # c
# [2 < m && m = fy.(m, false)] # c
.
983,984d
980d
959,962c
0 == s.size ? @Slp.slp(0) : plr += lm.( # c
s[sz .. sz + (ap = (ap += ap >> 1) >> 1)]) # + (ap <=> 0)])
# [(s + [nil])[sz .. 1 + sz + ap -= ap >> 2]])
.
947,948c
lm = ->(r1) {r1.nil? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {r1.empty? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {[1 < r1.size, r1 = r1[0 .. -2]][0] ?
# imem.send(pr, *isr0, r1, mt) : r1} # l
.
943,944c

# ap = 1 << sz = 3
# ap = ((ap += (ap <<= 1) + (ap <<= 2) + (ap << 2)) >> sz) + 1 >> 1
sz = nil; ap = @@fls_m
.
935d
933a
# sp, sz, isr0, r0, r1, lm, sy = [] # higokan ? mruby 70410200
.
929,930d
925d
916a
# @@fls_w = 4; @@fls_m = (1 << @@fls_w) - 1 - 1
# @@fls_w -= 2
# @@fls_m = ((@@fls_m << @@fls_w) + @@fls_m >> @@fls_w - 1) + 1 >> 1
# @@fls_w = nil

@@fls_m = 1 << @@fls_w = 3; @@fls_m = (
(@@fls_m += (@@fls_m <<= 1) + (@@fls_m <<= 2) + (@@fls_m << 2)) >> @@fls_w
) + 1 >> 1
@@fls_w = nil
.
912,914c
# [pl[lpl.afl('sym', ?i)].to_sym, # q
# r, r.map { |v| lpl.ckth(v, 1)}]
[pl[lpl.afl('sym', ?i)].to_sym, r, r.map { |v| lpl.ckth(v, 1)}] # q
.
901,905c
r = [pl[lpl.afl(thl[0], ?i)]] # q
# r = [pl[lpl.afl(thl[0], ?i)], []] # q # t
# r1 = pl[lpl.afl(thl[1], ?i)] # q
# r[1] = r1 if knid(pl[lpl.afl('ctr', ?i)][0], :Array) && lpl.ckth(r1, 3) # p # q
r[1] = knid(pl[lpl.afl('ctr', ?i)][0], :Array) && # q
lpl.ckth(pl[lpl.afl(thl[1], ?i)], 3) ? # q
pl[lpl.afl(thl[1], ?i)] : [] # q # t

.
879d
872c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # www.monami-ya.jp
.
866d
847a
@rmt = wkth
.
843,845d
832,837d
812d
785,787c
# def pg
# @p
# end
.
781,783c
# def ps(i)
# @p = i
# end
.
746,755d
742,743c
def to_ra(*a)
if a.empty?
@a.map { |v| v.dup}
else
a.map { |v| self[v]}
end
.
719a
attr_accessor :p

.
621d
594,595c
sl.slp 0
Fiber.yield(flg || mx < thi)

# th[idx] = pl_eg(pc, thl[idx]) if mx >= idx && ckth(th[idx], 2)
ckth(th[idx], 2) && th[idx] = pl_eg(pc, thl[idx])

# th[idx] = s_id(th[idx], pc - 1) if mx >= idx
## if ckth(th[mx], 1) || ji_ngq
## if ckth(th[mx], 1) || ckth(pl_eg(pc, 'ctr'), 0) # sp [sp]
# if ckth(th[mx], 1) || kt.call # c # sp [sp]
## unless arf = ckth(th[mx], 2)
## th.each_index { |n| pl_es(pc, [thl[n], th[n]])}
# th.each_with_index { |v, n|
## th[0 .. idx].each_index { |n|
# pl_es(pc, [thl[n], v])
## break if (mx >= idx || ! ji_ngq)
# ji_ngq || break
## break if mx != idx
# }
## flg = true ##
## flg ||= ckth(th[mx], 1)
# flg = mx <= idx && ji_ngq
# end
# sl.slp 0
# Fiber.yield(flg && idx >= mx) ##
# idx += 1 unless arf = ckth(th[idx], 2) # mx != idx ? # ! kara ary
## idx += 1 unless arf = mx == idx ? arf : ckth(th[idx], 2) # mx != idx ?
## idx += 1 unless arf = ckth(th[idx], 2) if mx != idx # mx != idx ?
#### idx += 1 unless (0 < idx ? arf = ckth(th[idx], 2) : ckth(th[idx], 0)) # && mx > idx # mx != idx ? # ! kara ary
## th[idx] = pl_eg(pc, thl[idx]) if arf ||= ckth(th[idx], 2) # kara ary # (0 < idx) == arf
### ji_ngq = ckth(pl_eg(pc, 'ctr'), 0) if ! ji_ngq # sp [sp]
### ji_ngq ||= ckth(pl_eg(pc, 'ctr')[0], 0) # sp [sp]
## ji_ngq = ckth(pl_eg(pc, 'ctr')[0], 0) if ! ji_ngq && arf ||= ckth(th[idx], 2) # sp [sp]
## th = th[0 ... idx] if ji_ngq && (arf.! || ckth(th[idx], 2)) # kara ary de nai nara kara ary kakunin
#
# if arf ||= ckth(th[idx], 2) # kara ary # (0 < idx) == arf
# th[idx] = pl_eg(pc, thl[idx]) # kara ary # (0 < idx) == arf
## ji_ngq ||= ckth(pl_eg(pc, 'ctr'), 0) # sp [sp]
## ji_ngq ||= ckth(pl_eg(pc, 'ctr')[0], 0) # sp [sp]
# ji_ngq ||= kt.call # c # sp [sp]
# th = th[0 ... idx] if ji_ngq && ckth(th[idx], 2) # kara ary de nai nara kara ary kakunin
# end

} ##
}
.
574,591c

# if (ji_ngq ||= kt.call) || ckth(th[idx], 1) # ) && mx >= idx
if ckth(th[idx], 1) # && mx >= idx
if ji_ngq ||= kt.call
# idx > mx && idx = mx
thi.step(idx) { |n| pl_es(pc, [thl[n], th[n]])}
thi = idx + 1
end
idx += 1 if mx > idx
.
556,572c
# while mx = th.hgt # saizu henkou ari
loop {

if 0 < idx && ji_ngq ||= kt.call && ckth(th[idx], 2)
idx -= 1
flg = true
else
# th[idx] = s_id(th[idx], pc - 1) # if mx >= idx # && ckth(th[idx], 3)
th[idx], t = s_id(th[idx], pc - 1) # if mx >= idx # && ckth(th[idx], 3)
.
551a
thi = 0
mx = th.hgt
.
550c
# th = (th = pl_g(pc)
## [th[self.afl(thl[0], ?i)], th[self.afl(thl[1], ?i)]])
# [th[idx = self.afl(thl[0], ?i)], th[idx + 1]])

.
536c
# self.send(*a) || a[1]
[self.send(*a) || a[1], nil]
.
530c
## return a[0] if 0 >= a.hgt
return [a[0], nil] if 0 >= a.hgt
.
524c
# (TB.dup == a || case a when Array then 0 >= a.hgt end) && (return a)
(TB.dup == a || knid(a, :Array).!) && (return a)
.
464,465c
# i_k = self.afl(k, ?i) # q
# i_k = loop {self.afl(k, ?i) && break} # q # fuguai taisaku
# 'ctr' == k && knid(v, :Array).! ? pl[i_k]<< v : pl[i_k] = v # p
# 'ctr' == k && case v when Array then true end.! ? pl[i_k]<< v : pl[i_k] = v # p # higokan ? mruby 70410200
# pl[i_k] = 'ctr' == k && ! knid(v, :Array) ? pl[i_k] + [v] : v # p
# pl[i_k] = 'ctr' == k && ! knid(v, :Array) ? pl[i_k]<< v : v # p
## pl[i_k].send(('ctr' == k && ! knid(v, :Array) ? '<<' : '='), v) # p
## pl[i_k].send(('ctr' == k && ! knid(v, :Array) ? '<<' : 'replace'), v) # p
# pl[i_k = self.afl(k, ?i)] += [v] # q # ?
# pl[i_k] = (pl[i_k]<< v).send('ctr' == k && knid(v, :Array).! ? 'itself' : 'pop') # p # .itself higokan monami-ya.mrb:60510200 mruby:70410200
# pl[i_k] = (pl[i_k]<< v)['ctr' == k && knid(v, :Array).! ? 0 .. -1 : -1] # p # ?
# pl[i_k = self.afl(k, ?i)] =
# (pl[i_k]<< v)['ctr' == k && knid(v, :Array).! ? 0 .. -1 : -1] # p # ?
['ctr' == k, k = self.afl(k, ?i)][0] && # q
knid(v, :Array).! ?
# case v when Array then true end.! ? # higokan ? mruby 70410200
pl[k]<< v : pl[k] = v # p
.
437d
384a

.
338,339c
# a_ = a[0 .. 2]; return a[3].map{ |v| v.nil? ? v : self.send(*a_, v)} # r
a_ = a[0 .. 2]; return a[3].map{ |v| v.nil? ? v : send(*a_, v)} # r
# else self.send(*a)
else send(*a)
.
336d
330,331c
# def s__r1_eq_sr01(*a) a[0][ a[2]] ==
# a[0][ a[1] + 1] end
def s__r1_eq_sr01(*a) a[0][ a[1] + 1] ==
a[0][ a[2]] end
.
259,261c
# def initialize
# end
.
236,238d
158c
# (r - 1).times {sleep 0}; r.times {sleep t} # antei ?
.
155c
# (r - 1).times {sleep 0}; GC.start; r.times {sleep t} # g # fuantei ( keisan gosa ) ?
.
133d
123c
# def delif_c(i, a = nil)
def delif_c(i = @@ts, a = nil)
.
98c
# def +(i = 1)
def +(i = 0)
.
3,4d



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net tel:081-70-5152-1104
祝 Softbank-PHS 展開期間延長



# mruby-process/src/process.c
#
# 357a
# mrb_define_method(mrb, mrb->kernel_module, "usleep", mrb_ker_usleep, MRB_ARGS_REQ(1)); // kimushu/mruby-sleep
# // mrb_define_method(mrb, mrb->kernel_module, "msleep", mrb_ker_msleep, MRB_ARGS_REQ(1)); // kimushu/mruby-sleep
# .
# 191a
#
# static mrb_value
# mrb_ker_usleep(mrb_state *mrb, mrb_value self) // kimushu/mruby-sleep
# {
# mrb_int usecs;
# mrb_get_args(mrb, "i", &usecs);
# usleep(usecs);
# return mrb_nil_value();
# }
#
# /*
# static mrb_value
# mrb_ker_msleep(mrb_state *mrb, mrb_value self) // kimushu/mruby-sleep usleep yobi
# {
# mrb_int msecs;
# mrb_get_args(mrb, "i", &msecs);
#
# // for (; msecs > 0; --msecs) {
# // usleep(1000);
# // }
# // return mrb_nil_value();
# // IIJ , Tomoyuki Sahara , YAMAGUTIseisei
# time_t beg; // , end;
# struct timeval tv;
#
# beg = time(0);
# tv.tv_sec = 0; // fuyou ?
# tv.tv_usec = msecs;
# if (0 > select(0, 0, 0, 0, &tv)) mrb_sys_fail(mrb,
# "mrb_ker_msleep failed"
# // "mrb_f_msleep failed"
# );
# return mrb_fixnum_value(time(0) - beg); // float ?
# }
# */
#
# .

<-> matsumotory/mruby-sleep # bamchoh/mruby-sleep

YAMAGUTIseisei

unread,
Oct 25, 2020, 7:21:56 AM10/25/20
to
1501c
# ise[i_i_d].reject!.with_index { |fis, n|
.
1497d
1489c
ise[i_i_s].delif_c(ts) { |pfl, n|
.
1487c
# ise[i_i_s].reject! { |pfl| # Inspired by : RobertDoggett ? http://microware.com/# , Professor TAKAZAWA Yosimitu http://mu.ice.uec.ac.jp/~takazawa/
.
1465a
sl.slp(0, 0xf)

.
1401,1402c
# ise[i_i_s]<< [0 > rg['ctr', 1] ? -rg['pc'] : rg['pc'], rg.to_a] # p # cp
ise[i_i_s]<< [0 > rg.p ? -pcl : pcl, Rg.new(rg.to_a)] # p # cp
.
1384,1385d
1373d
1310d
1305,1306c
# end
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
end && rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
.
1297,1303c
! stack[rou.getarg_a(cop)] # || next
.
1288,1292c
stack[rou.getarg_a(cop)] # || next
.
1282a
true
.
1261d
1252d
1241d
1238,1239c
# ri ||= true == fb || (true == fb.resume && fb = true)
ri ||= true == fb || true == fb.resume && fb = true
.
1234d
1231d
1229d
1182c
# callinfo.p += 1
callinfo[0 .. 2] = [rg['sp'], rg['pc'], irep]
callinfo.p += 3

.
1180c
# callinfo[0] = irep
.
1177c
# callinfo.p += 1
.
1175c
# callinfo[0] = rg['pc']
.
1172c
# callinfo.p += 1
.
1170c
# callinfo[0] = rg['sp']
.
1147d
1137,1138c
end while [true][thi] # fuantei ? mruby:70410200 monami-ya.mrb:60510200
# break if 0 != thi }
.
1133,1134c
begin # fuantei ? mruby:70410200 monami-ya.mrb:60510200
# loop {
.
1116,1131c
# pl.pl_es(pc1, opg.(thi).push('ctr', [sp])) # c
pl.pl_es(pc1, opg.(thi).push( # c
*['ctr', [sp]] + [[:ctr_s, pc1], []][thi <=> 0]))

# if 0 == thi
# pl.ctr_s(pc1)
# elsif ht <= thi
# thi = -1
# end
# thi += 1
thi += 0 != thi && ht <= thi ? -thi : 1
.
1098,1104c
# when 'th'
# fv = [
# -> {[thl[oi], ta.(fv[oi]), thl[oi + 1], []]}, # c t
# -> {(fv[oi] = ta.(fv[oi]) if oi <= ht = fv.hgt) ? # c
# [thl[oi], fv[oi]] : []}
# ][oi <=> 0].call
when 'th' then fv = fvl[oi <=> 0].(oi) # c
.
1090,1096d
1085a
fv = []
fvl = [->(oi) {[thl[oi], ta.(fv[oi]), thl[oi + 1], []]}, # l # c
->(oi) {((oi <= ht = fv.hgt) && fv[oi] = ta.(fv[oi])) ? # l # c
[thl[oi], fv[oi]] : []}] # .lazy

.
1084c
# thl = @@mh_thl
thl = mh_thl
.
1053c
# m = fy.(m, f) # c
loc.verb "#{pc.to_xeh} #{sym} #{rs[1]} #{rs[0]}"
sl.plwt(m) {m = Fiber.yield(f && 0 == m)}
.
1041c
# 1 < m && m = fy.(m, false) # c
.
1037c
# 2 < m && m = fy.(m, false) # c
.
1030c
# 0 > i ? (r[1] = r[0]; flg[1] = true; ~ i) : i
0 > i ? (flg[1] = ! ! r[1] = r[0]; ~ i) : i
.
1013,1016c
# fy = ->(m, f) { # @Slp.slp 0
# loc.verb "#{pc.to_xeh} #{sym} #{rs[1]} #{rs[0]}"
# Fiber.yield(f && 0 == m)
# }
.
1003,1006c
# ((sw = sp + sz) + 0xe).step(sw, -1) { # higokan mruby 70410200 # bbab89e7 5211410200 tmtm
0 == s.size ? @Slp.slp(0) : # plr += lm.( # c
# s[sz .. sz + (ap = (ap += ap >> 1) >> 1)]) # + (ap <=> 0)])
# [sl.slp(0),
# sz.step(sz + ap -= ap >> 2) { |n| plr<< lm.(s[n])} # p # c
plr += lm.(s[sz .. sz + (ap = (ap += ap >> 1) >> 1)]) # + (ap <=> 0)]) # c
# plr += lm.(s[sz .. sz + ap -= ap >> 2]) {r1.empty?} # ? # c
# plr += lm.(s[sz .. sz + ap -= ap >> 2], 'empty?') # c
# ].lazy.to_a[s.s.size <=> 0] # .force # c
# (sz + ap -= ap >> 2).downto(sz) { |n|
# plr<< s.ow?(n) ? nil : lm.(s[n]) # p c
# }
.
1000a
# 0 == m && wo.include?(r) || wo.push(r).sort!
.
992,993c
# lm = ->(r1, &b) {yield ? r1 : imem.send(pr, *isr0, r1, mt)} # ? # l
# lm = ->(r1, ck) {r1.send(ck) ? r1 : imem.send(pr, *isr0, r1, mt)} # l
.
989,990c
lm = ->(r1) {r1 && imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {imem.send(pr, *isr0, r1, mt)} # l
.
984,986c
ap = @@fls_w ||= 1 << sz = 3
ap = @@fls_m ||= ((ap += (ap <<= 1) + (ap <<= 2) + (ap << 2)) >> sz) + 1 >> 1
.
981,982c
# sz = 4; ap = @@fls_w ||= (1 << sz) - 1 - 1
## sz = 4; @@fls_m || (ap = @@fls_w ||= (1 << sz) - 1 - 1; @@fls_w = nil)
# sz -= 2; ap = @@fls_m ||= ((@@fls_w << sz) + @@fls_w >> sz - 1) + 1 >> 1
## sz = nil; ap = @@fls_m
.
979a
m = 1; wo = []
.
976c
isr0, mt, r0, r1, sym, sy, pr = nil
.
972c
# i = @irep
s.irep(i = @irep)
.
970a
sl = @Slp
.
956,959c
# @@fls_m = 1 << @@fls_w = 3; @@fls_m = (
# (@@fls_m += (@@fls_m <<= 1) + (@@fls_m <<= 2) + (@@fls_m << 2)) >> @@fls_w
# ) + 1 >> 1
# @@fls_w = nil
@@fls_w = nil; @@fls_m = nil
.
951,954c
class Fls__l
end
.
946,947d
944c
# r = r.map { |v| v[1] = v[-1]} # higokan ? mruby 70410200
.
941c
# r = Array.new(thl.size) { |n| pl[lpl.afl(thl[n], ?i)]} # q
.
939a
r = [pl[lpl.afl(thl[0], ?i)]] # q
r[1] = knid(pl[lpl.afl('ctr', ?i)][0], :Array) && # q
lpl.ckth(pl[lpl.afl(thl[1], ?i)], 3) ? # q
pl[lpl.afl(thl[1], ?i)] : [] # t # q
.
930,938c
# thl = @@mh_thl
thl = mh_thl
.
904c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 # http://www.monami-ya.jp/
.
900c
# thl = @@mh_thl
thl = mh_thl
.
819c
# 'pc' == k && case v when Numeric then v == @a.assoc(k)[i] && v = -v end' # cp
.
791,795c
# if a.empty?
# @a.map { |v| v.dup}
# else
a.map { |v| self[v]}
end

def to_a
@a.map { |v| v.dup}
.
758a

def owc(i = @ir) i = owi?(i) && @@ow.delete_at(@@ow.index(i)) end
.
738a
def owi?(i) @@ow.assoc(i) end

.
732,736c
# def []=(*a)
def []=(sp, va, pc = nil)
#p [sp, va, pc, self.object_id]
# @@m.lock
pp = sp + @p

# knid(pc, :Fixnum) && (@ow[pc] && (@ow[pc].include?(pp) || (@ow.push(pp); @ow.sort!)) || @ow[pc] = [pp])
@s[pp] = va
# @@m.unlock
# a
end

def irep(i)
owi?(i) || (@@ow<< [i, []]; 0xf < @@ow.size && @@ow.shift; @ir = i) # p
.
716c
# @p = sp; @s = s
@p = sp; @s = s; @ir = nil
.
711c
attr_accessor :p, :s
.
709a
@@ow = []
.
668c
# fpl = delif_c(ts, fpl) { |fb, n| fb.resume}
fpl = delif_c(ts, fpl) { |fb, n| fb.resume(n)}
.
653c
# fpl<< plw(pc) if pc && 0 <= pc # p
pc && 0 <= pc && fpl<< plw(pc) # p
.
603,640d
601d
599c
# Fiber.yield(flg || mx < thi)
# m = Fiber.yield(flg || mx < thi)
# 0.step(m) { |n|
((m >> 2) + 1).times { |n| m = Fiber.yield([flg || mx < thi][n])}
.
597a
# 0 < m && m = Fiber.yield(false)
.
593a
# elsif mx > idx
else
pl_es(pc, [thl[idx], th[idx]])
.
590,592c
if kt.call
# if ji_ngq ||= kt.(pc) # c
# if ji_ngq ||= plw__kt(pc)
# thi.step(idx) { |n| pl_es(pc, [thl[n], th[n]])}
0.step(idx) { |n| pl_es(pc, [thl[n], th[n]])}
.
588d
584d
580c
# if 0 < idx && kt.call && ckth(th[idx], 2)
if 0 < idx && ckth(th[idx], 2) && kt.call
# if 0 < idx && ckth(th[idx], 2) && ji_ngq ||= kt.(pc) # c
# if 0 < idx && ckth(th[idx], 2) && ji_ngq ||= plw__kt(pc)
.
576,577c
# Fiber.new { ##
Fiber.new { |m = 1|
0 < m && Fiber.yield(false)
.
574c
# kt = -> {ckth(pl_eg(pc, 'ctr')[0], 0)} # l # sp [sp]
kt = -> {ji_ngq ||= ckth(pl_eg(pc, 'ctr')[0], 0)} # l # sp [sp]
# kt = @@kt
.
572c
# mx = th.hgt
.
566,568d
563c
# th = ((idx = 0) .. thl.hgt).map { |v|
th = ((idx = 0) .. mx = thl.hgt).map { |v|
.
558,561c
# thl = @@mh_thl
thl = mh_thl
# idx = 0 ##
.
554a
# def plw__kt(pc)
# ckth(pl_eg(pc, 'ctr')[0], 0) # sp [sp]
# end

# @@kt = ->(pc) {ckth(pl_eg(pc, 'ctr')[0], 0)} # l # sp [sp] # higokan ? mruby 70410200
.
550,552c
# (loc = @@Loc).verb("#{pc.to_xeh} #{a[0]} #{a[1].to_xeh}")
# [self.send(*a) || a[1], nil]

a, op = a
[self.send(a, op) || op,
case a when Numeric then true end ||
(loc = @@Loc).verb("#{pc.to_xeh} #{a} #{op.to_xeh}")]
.
544d
541,542c
# knid(a, :Array) ? s_id(a, pc) : a # __method__(a, pc) : #? mruby 410200
case a when Array then s_id(a, pc) else a end # __method__(a, pc) else #? mruby 410200
.
537c
# (TB.dup == a || case a when Array then 0 >= a.hgt end) && (return a)
.
512a
# 0 : ary 1 : ! ary 2 : kara ary 3 : ! kara ary
.
491,494d
481c
aa.each_slice(2) { |k, v| send(k, v)}
.
461,478c
knid(k, :Symbol) && (aa.push(k, v); break)
i = self.afl(k, ?i) # q
# i = loop {self.afl(k, ?i) && break} # q # fuguai taisaku
pl[i] = 'ctr' == k && ! knid(v, :Array) ? pl[i]<< v : v # p
# pl[i].send(('ctr' == k && ! knid(v, :Array) ? '<<' : 'replace'), v) # p
## (pl[i = self.afl(k, ?i)] += [v]).replace!{ |i| # q
## i.send(case v when Numeric then 'itself' else 'pop' end)}
.
453c
aa = []
.
435,437c
# if 0 == n
# pl.map! { |a| a[1]}
# end
0 == n && pl.map! { |a| a[1]}
.
334,336c
# a_ = a[0 .. 2]; return a[3].map{ |v| v.nil? ? v : send(*a_, v)} # r
a3 = a[3]; a3.map{ |v| v.nil? ? v : send(*a[0 .. 2], v, a[4])}
.
325,326d
164a

def plwt(m = 1)
sf = 2 # (@@ts >> 1) + 1
((m >> sf) + 1).times { |n| yield n}
end
.
130,134c
# n = 0
# c = -i - 1
n = 0; c = i + 1
while 0 < c -= 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
# a[n] && yield(a[n], c + i) && (next a.delete_at(n)); n += 1
a[n] && yield(a[n], i - c) && (next a.delete_at(n)); n += 1
# (v = a[n]) && yield(v, i - c) && a.delete_at(n) || n += 1
.
122d
96d
35,36c
@@ts = 1 # = (@@rmth >> 1) + 1 # = $$ + 1 # = 68060
# @@mh_thl = (0 .. 1).to_a.map { |n| 'th' + n.to_xeh}
@@mh_thl = nil

def mh_thl
@@mh_thl ||= (0 .. 1).to_a.map { |n| 'th' + n.to_xeh}
end
.
16d
10c
:ADD, :ADDI, :SUB, :SUBI, :MUL, :DIV, :EQ, # :LOADF,
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )

YAMAGUTIseisei

unread,
Jan 10, 2021, 5:37:23 AM1/10/21
to
1492,1496c
sl.slp # {GC.start} # g
.
1484d
1473,1479c
ise[i_i_d]<< [pfl[0], isfl(pfl[1])] # p
.
1471d
1453c
# @pc = rg['pc']
@pc = pc = rg['pc']
.
1440c
# lpl.plini
.
1429,1434d
1425,1426c
# rg.push('pc', rg['pc', -1] + 1)
# rg.push('sp', rg['sp', -1])
rg.push('pc', pc = rg['pc', -1] + 1)
rg.push('sp', rg['sp', -1])
.
1419,1423d
1415c
(pctj<< (pco[0] = pc) + 1) if ifj.(sym) # p # c
.
1411,1412c
[(ifj.(sym) || ifs.(sym)) || ( # c 2
ist.(pc) if pctj.pop != pc && istm.call; false), # c
.
1408,1409c
sym = rg['sym']
loc.verb "#{pc.to_xeh} #{sym} #{rg['cop'].to_xeh}" if 0 <= rg.p
.
1404,1405c

opg.(pc) # c
.
1370c
# pfl[0] = pcf.abs # cp
pfl[0] = -pcf # cp
.
1368c
# if pcf.abs == rg['pc'] # cp
if -pcf == rg['pc'] # cp
.
1361a
# stack.cs c
stack.c = c # fuantei ?
.
1356,1358c
# @@opg = ->(irep, rg, imem) { # l
opg = ->(pcl) { # l
.
1351a
# stack.cs rg['cop']
stack.c = rg['cop'] # fuantei ?
.
1331a
### GC.disable # g
.
1307c
# stack[0] = stack[rou.getarg_a(cop)]
stack[0] = stack.getarg_a
.
1304c
# return stack[rou.getarg_a(cop)]
return stack.getarg_a
.
1302a
# @rmt.join # higokan ? mruby-thread:410200

.
1300a

# stack.idel(irep)
stack.idel(@irepid)

.
1289,1290d
1287c
# ! stack[rou.getarg_a(cop)]
! stack.getarg_a
.
1282c
# stack[rou.getarg_a(cop)]
stack.getarg_a
.
1274,1275d
1262c
# rg = Rg.new([['pc', @pc], ['sp', @sp], ['cop'], ['sym']])
rg = Rg.new([['pc', pc], ['sp', @sp], ['cop'], ['sym']])
.
1260c
i_i_d = 0; i_i_s = 1;
.
1258d
1256a
pc = @pc
.
1255c
ise = [[], []]
.
1248a
# stack.rs(rou = @Rou)
stack.r = rou = @Rou
.
1234d
1118,1127c
# pl.pl_es(pc1, opg.(thi).push( # c
# *['ctr', [sp]] + [[:ctr_s, pc1], []][thi <=> 0]))
pl.pl_es(pc1, opg.(thi) + # c
['ctr', [sp]] + [[:ctr_s, pc1], []][thi <=> 0])

.
1100,1106c
# when 'th' then fv = fvl[oi <=> 0].(oi) # c
when 'th'
# fv = fvl[-1].(oi); fvl.delete_at(((1 <=> fvl.size) << 1) + 1) # c
fv = fvl[-1].(oi); fvl.delete_at(((0 <=> fvl.hgt) << 1) + 1) # c
.
1091,1093c
# fvl = [->(oi) {[thl[oi], ta.(fv[oi]), thl[oi + 1], []]}, # l # c
# ->(oi) {((oi <= ht = fv.hgt) && fv[oi] = ta.(fv[oi])) ? # l # c
# [thl[oi], fv[oi]] : []}] # .lazy
fvl = [->(oi) {((oi <= ht = fv.hgt) && fv[oi] = ta.(fv[oi])) ? # l # c
[thl[oi], verb.(fv[oi])] : []}, # c
->(oi) {[thl[oi], verb.(ta.(fv[oi])), thl[oi + 1], []]}] # .lazy # l # c 2
.
1087c
verb = ->(verb) { # l
# loc.verb("#{pc.to_xeh} #{verb[0]} #{verb[1].to_xeh}")
verb
}
.
1083c
ta = ->(ta) { # l
.
1052c
# ca.force[ #? mruby 410200
ca[
flg.inject(0) { |rv, v| rv = v ? 0 : 1 | rv << 1}].call
.
1030d
1023c
# sym, (r0, r1) = rslt pl # higokan mruby 70410200 # bce75e27 2211410200 matz http://mruby-master-changes.hatenablog.com/entry/2014/11/24/114903
.
1018c
# Fiber.new { |m = 1|
Fiber.new { |m = 1, f = false, flg = [false, false]|
.
1011c
] # .lazy #? mruby 410200
.
1009c
# rs[0] = r1.to_xeh},
rs[0] = r1},
.
1007c
# rs[1] = r0.to_xeh},
rs[1] = r0},
.
1005c
# plr<< s.ow?(n) ? nil : lm.(s[n]) # p # c
.
1002,1003c
# plr += lm.(s[sz .. sz + ap -= ap >> 2], 'empty?') # c
# ].lazy.to_a[s.s.size <=> 0] # .force # c
.
995,997c
# ((sw = sp + sz) + 0xe).step(sw, -1) { # higokan mruby 70410200 # bbab89e7 5211410200 tmtm http://mruby-master-changes.hatenablog.com/entry/2014/11/26/203350
0 == s.size ? @Slp.slp(0) :
.
993c
# rs = [r1.to_xeh, r0.to_xeh]},
rs = [r1, r0]},
.
980,982c
lm = ->(r1) {r1 && imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {imem.send(pr, *isr0, r1, mt)} # l
# lm = ->(r1) {r1.empty? ? r1 : imem.send(pr, *isr0, r1, mt)} # l
.
969c
# m = 1; wo = []
.
967c
# f = false; flg = [false, false]
.
927,929c
# r[1] = knid(pl[lpl.afl('ctr', ?i)][0], :Array) && # q
# r[1] = lpl.ckth(pl[lpl.afl('ctr', ?i)][0], 0) && # q
# lpl.ckth(pl[lpl.afl(thl[1], ?i)], 3) ? # q
# pl[lpl.afl(thl[1], ?i)] : [] # t # q

r[1] = pl[lpl.afl(thl[1], ?i)] # q
(lpl.ckth(pl[lpl.afl('ctr', ?i)][0], 0) && lpl.ckth(r[1], 3)) || r[1] = [] # q # t
.
912,919c
# include M__Wkth # higokan ? monami-ya.mrb:60510200 mruby:70410200

# def wkth(pc = 1)
.
873c
### GC.disable # g # gene gc enable : mruby 6170410200 d17506c1
.
868d
864a
# @pll = [thini, thini, [], []]
# @pl = ENVary.new(rmth + 1, thini, thini, [], [])
## @pl = ENVary.new(rmth + 1, *@pll)
.
829a

# module M__Wkth
def wkth(pc = 1)
# Thread.new($pcmax) { |pcmax|
# Thread.new(@pl, pc) { |pl, pc| # @Imem,
# pl.plm(pc)
Thread.new(pc) { |pc|
Pl.new.plm(pc)
}
end
# end

# include M__Wkth # higokan ? monami-ya.mrb:60510200 mruby:70410200 # omoi ?

.
815,822d
808,812c
# i ||= @s.assoc('ctr')[1] + 1
# @s.assoc(a[0])[@i] = a[1]
# @s.assoc(a.shift)[a[0] || @i] = v
# 'pc' == k && case v when Numeric then v == @s.assoc(k)[i] && v = -v end # cp
@s.assoc(k)[i] = v
.
805,806d
795,797c
# i ||= @s.assoc('ctr')[1] + 1
@s.assoc(k)[i]
# v = @s.assoc(k)[i]
.
792,793d
787c
@s.map { |v| v.dup}
.
780,782d
776c
@s.assoc(a.shift).delete_at a[0]
.
772c
@s.assoc(a.shift).delete_at 1
.
768c
@s.assoc(a.shift).pop
.
764c
@s.assoc(a.shift)<< a[0] # p
.
759c
@s = a.shift
.
747c
def owc(i = @ir) i = owasoc(i) && @@ow.delete_at(@@ow.index(i)) end

# def rs(r = nil)
# @r = r
# end

# def cs(c = nil)
# @c = c
# end

def getarg_a
@s[@r.getarg_a(@c) + @p]
end
.
724c
def idel(i)
@@ow.delete(owasoc(i))
end

def owasoc(i) @@ow.assoc(i) end
.
721c
owasoc(i) || (
@@ow<< [i, []] # p
0xf < @@ow.size && @@ow.shift
@ir = i
)
.
712a
# @@ow[@@ow.owasoc(i)] # <<
# @@m.lock
# @i_i = @@ow.owasoc(i)
# @@m.lock
.
692c
# @p = sp; @s = s; @ir = nil
# @p = sp; @s = s; @ir, @i_i = nil
@p = sp; @s = s; @ir, @i_i, @c, @r = nil
.
685,686c
@@m = Mutex.new
# attr_accessor :p, :s
# attr_accessor :p, :s, :r
attr_accessor :c, :p, :s, :r
.
645c
### GC.start # g # antei ?
.
638c
# (flg = [true][ith]) || redo ###
.
612c
# ckth(th[idx], 2) && th[idx] = pl_eg(pc, thl[idx])
( # th[idx].nil? || # fuguai taisaku ?
ckth(th[idx], 2)) && th[idx] = pl_eg(pc, thl[idx])
.
607,610c
# ((m >> 2) + 1).times { |n| m = Fiber.yield([flg || mx < thi][n])}
sl.plwt(m) { |n| m = Fiber.yield([flg || mx < thi][n])}
.
605d
602c
# idx += 1 if mx > idx
idx += (mx <=> idx) + 1 >> 1
.
591c
# if ckth(th[idx], 1)
if # th[idx] && # mx >= idx && # fuguai taisaku ?
ckth(th[idx], 1) then
.
581d
576,578c
# Fiber.new { |m = 1| 0 < m && Fiber.yield(false)
Fiber.new { |m = 1, thi = 0| 0 < m && Fiber.yield(false)
.
572d
569,570c
# thi = 0
.
563d
559d
547,548c
# case a when Numeric then true end ||
case a when Numeric then nil else [a, op] end &&
(loc = @@Loc).verb("#{pc.to_xeh} #{a} #{op.to_xeh}")
]
.
541,544c
# opc, op = a
.
534,535c
knid(a, :Array) ? s_id(a, pc) : a # __method__(a, pc) : #? mruby 410200
# case a when Array then s_id(a, pc) else a end # __method__(a, pc) else #? mruby 410200 # omoi ?
.
529a
# (tb == a || knid(a, :Array).! || 0 >= a.hgt) && (return a)
.
472,474d
467c
# knid(k, :Symbol) && (aa.push(k, v); next)
.
441,445c
# 0 == n && pl.map! { |a| a[1]}
# pl
0 == n ? pl.map! { |a| a[1]} : pl
.
417,418c
@@Loc.plok(n) { |a| JSON::parse(ENV[@@idb + a[0]])}
.
406,407c
@@Loc.plok(n, v) { |a| ENV[@@idb + a[0]] = JSON::generate(a[1])}
.
384c
a || return # 410200plini
.
379d
366c
# @@Slp = SLP
@@Slp = SLP.dup
.
345a

def method_missing(*a)
# '__' == a[0][0 .. 1] ? # higokan mruby 70410200
'__' == (a[0] = a[0].to_s)[0 .. 1] ?
self.mmis(?s << a[0], *a[1 .. -1]) :
self.mmis(:s__send, *a[1 .. -1])
end
.
341d
337,339c
# def method_missing(*a)
def mmis(*a)
# a[0] = ?s << a[0].to_s # q
case a[3] # a[@@I_s__r1 + 1]
.
333a
def s__send( *a) a[0].send(a[3])[a[1]] end
.
325c
# @@I_s__stack = @@I_s__irep =
# @@I_s__i = 0; @@I_s__r0 = 1; @@I_s__r1 = 2; @@I_s__mt = 3
.
264,265c
# def initialize
# end
.
239,240c
#LOC = Loc.new(FL << '.loc')
## LOC = Loc.new(FL << '/loc') # RISC OS ?
LOC = Plok.new(FL << ?. << 'lok'.replace('loc')) # q
# LOC = Plok.new(FL << '/' 'lok'[''] = 'loc') # RISC OS ? # higokan monami-ya.mrb:60510200 mruby:70410200
.
235,236c
#class Loc
class Plok
# include M__Loc
include M__Plok
.
228,231c
### GC.disable # g
# @@m.lock
# puts s
# @@m.unlock
@@mlok.mlok {puts s}
.
225d
223a
## }
## @@m.unlock
.
222a
# ][0]
.
220c
GC.disable # hituyou <-> monami-ya.mrb:60510200 osoku-naru , mruby:70410200 SeguFo(-nado?) # g
## @@m.unlock
# [yield(a), ## @ji_ngq &&
[yield(a), GC.start, ## @ji_ngq && # g
.
218c
end ## if @ji_ngq
.
209d
204,207c
# def ploc(*a)
def plok(*a)
## @@mlok.mlok {
## @@m.lock
# GC.disable # g
.
201a
## @ji_ngq = true
.
199a
# attr_accessor :ji_ngq

.
196c
# @@m = Mlok.new
@@mlok = MLOK
# @@m = Mutex.new
.
194c
#module M__Loc # Inspired by Professor NAGAI Hidetosi http://rubykaigi.org/2011/ja/schedule/details/17S05/#KyuTech
module M__Plok # Inspired by Professor NAGAI Hidetosi http://rubykaigi.org/2011/ja/schedule/details/17S05/#KyuTech
.
166c
# [true][Time.now.to_f.to_s.split(?.)[1].to_i & 15] && GC.start # q # g
.
161,162c
# (r - 1).times {sleep 0}; r.times {sleep t} # antei ?
# (r - 1).times {sleep 0}
.
156,159c
## (r - 1).times {usleep 0}; GC.start; r.times {usleep t} # g # conf.gem :github => 'kimushu/mruby-sleep' # msleep usleep
## (r - 1).times {msleep 0}; GC.start; r.times {msleep t} # g # usleep yobi
## (r - 1).times {sleep 0}; GC.start; r.times {sleep t} # g # fuantei ( keisan gosa ) ?
(r - 1).times {usleep 0}; b && yield; r.times {usleep t} # g # conf.gem :github => 'kimushu/mruby-sleep' # msleep usleep
# (r - 1).times {msleep 0}; b && yield; r.times {msleep t} # g # usleep yobi
# (r - 1).times {sleep 0}; b && yield; r.times {sleep t} # g
# (r - 1).times {usleep 0}; r.times {usleep t}
.
154c

# def s__slp(t = @@slp, r = 1)
# Time.now.to_f
# end

# def slp(t = @@slp, r = 1)
def slp(t = @@slp, r = 1, &b)
.
148a
# @@m = Mlok.new
# @@m = MLOK

# @@slp = 7; @@slp =
# (((NSL_ >> 9 - @@slp) + (NSL_ >> 7 - (@@slp - 7))) >> @@slp) + 1 >> 1
.
147a
module M__Mlok
@@m = nil

def initialize(m = @@m)
@m = m ||= Mutex.new
end

def mlok(&b)
@m.lock
yield
@m.unlock
end
end

class Mlok
include M__Mlok
end

MLOK = Mlok.new


.
140c
## )][0] ? self.replace(a) : # f ? self.replace(a) : # higokan taisaku ?
a
.
132,138c
n = 0; c = i + 1 ## c = -i - 1 ### c = (n = 0) - 1
while 0 < c -= 1 ## 0 > c += 1 ### i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
a[n] && yield(a[n], i - c) && (next a.delete_at(n)); n += 1 ## i + c ### c
# (v = a[n]) && yield(v, i - c) ? a.delete_at(n) : n += 1
.
130c
## [! a, ( # higokan taisaku ?
a ||= self # a ||= f = self # a ||= (f = true; self)
.
89a
## i + (((0 <=> i) + 1 >> 1 << 0x20) - 1 & i << 1)
.
29a
# class GC # monami-ya.mrb # http://www.monami-ya.jp/
# end
# def GC.start() end
# def GC.disable() end

.
23,24c
# NSL_ = 6309 # nanosleep() # OSX/PPC : 20486309 ?
NSL_ = 10065 # nanosleep() # OSX/PPC : 204810065 ?
.
21c
# GC.start # g
.
14c
# :pool, :syms,
:s__send, :pool, :syms, # :ji_ngq,
.
12d
6c
:+, :-, :*, :/,
:Array, :Numeric, :Fixnum, :Symbol, # :String,
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )

YAMAGUTIseisei

unread,
Mar 28, 2021, 11:49:08 AM3/28/21
to
1543d
1519,1520d
1515,1516d
1468d
1465d
1376c
# end && rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)

sym = (c = [nil, 0, 1][[:JMP, :JMPIF, :JMPNOT].index(sym)]) &&
stack.getarg_a
(! c || [sym, ! sym][c]) &&
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)
.
1371,1374c
# when :JMPNOT
### if !@stack[@sp + getarg_a(cop)] then
## ! stack[rou.getarg_a(cop)]
# ! stack.getarg_a
.
1358,1368c
# when :JMP
### @pc = @pc + getarg_sbx(cop)
### pc = pc + lpl.getarg_sbx(cop) - 1
## true

# when :JMPIF
### if @stack[@sp + getarg_a(cop)] then
### @pc = @pc + getarg_sbx(cop)
## stack[rou.getarg_a(cop)]
# stack.getarg_a
.
1355c
# case sym
.
1348d
1333d
1211c
# ['ctr', [sp]] + [[:ctr_s, pc1], []][thi <=> 0])
[:ctr, [sp]] + [[:_ctr_s, pc1], []][thi <=> 0])
.
1208,1209d
1195d
1193d
1181,1183d
1178a
# thl = @@mh_thl
.
1170c
ta = ->(ta) { # l
.
1152a
tb = TB
.
1142c
# loc.verb "#{pc.to_xeh} #{sym} #{rs[1]} #{rs[0]}"
c_l.verb(pc)
.
1130,1139c
# r0, r1 = r
# if ji_ngq[0]
# pr || (pr, sy = imem.fml('st', sym)[1 .. -1]
# ?_ == pr.to_s[1] || mt = pr) # q
# isr0 = [mt ? i : s, r0]
# sz = plr.size
# end
## ca.force[ #? mruby 410200
# ca[
# ji_ngq.inject(0) { |rv, v| rv = v ? 0 : 1 | rv << 1}].call
c_l.ca
.
1119,1120c
# f = # ktf &&
# ji_ngq.all?
.
1107,1117c
# if ! f || ! ktf
## pl = lpl.pl_g(pc1) ##
f = c_l.plg(pc1) && c_l.rslt
## sym, (r0, r1) = rslt pl # higokan mruby 70410200 # bce75e27 2211410200 matz http://mruby-master-changes.hatenablog.com/entry/2014/11/24/114903
# sym, r, ji_ngq = rslt(pl)

## sp = sp[0] if (ktf = knid(sp, :Array))

## if ji_ngq[0] && 0 > (sp || s.p = sp = pl[i_sp].flatten[0])
# ji_ngq[0] && s.ps(pl[i_sp].flatten[0]) { |i| # && 0 <= sp
# 0 > i ? (ji_ngq[1] = ! ! r[1] = r[0]; ~ i) : i
# }
.
1103,1104c
# Fiber.new { |m = 1, f = false, ji_ngq = [false, false]|
Fiber.new { |m = 1, f = false|
.
1063,1096c
# lm = ->(r1) {r1 && imem.send(pr, *isr0, r1, mt)} # l
## lm = ->(r1) {r1.empty? ? r1 : imem.send(pr, *isr0, r1, mt)} # l

# ca = [
# -> { # f
## r = r1 < sz && plr[r1] || lm.(r1) # c
# r = (r = plr[r1] ; r1 >= sz ||
# r.nil?) ? lm.(r1) : r # c
# s[r1] = sy ? [s[r1], r].inject(sy) : r
## 0 == m && wo.include?(r) || wo.push(r).sort!
## rs = [r1.to_xeh, r0.to_xeh]},
# rs = [r1, r0]},
# -> { # ji_ngq[0]
## ((sw = sp + sz) + 0xe).step(sw, -1) { # higokan mruby 70410200 # bbab89e7 5211410200 tmtm http://mruby-master-changes.hatenablog.com/entry/2014/11/26/203350
# 0 == s.size ? @Slp.slp(0) :
## [sl.slp(0),
## sz.step(sz + ap -= ap >> 2) { |n| plr<< lm.(s[n])} # p # c
# plr += lm.(s[sz .. sz + (ap = (ap += ap >> 1) >> 1)]) # + (ap <=> 0)]) # c
## plr += lm.(s[sz .. sz + ap -= ap >> 2]) {r1.empty?} # ? # c
## plr += lm.(s[sz .. sz + ap -= ap >> 2], 'empty?') # c
## ].lazy.to_a[s.s.size <=> 0] # .force # c
## (sz + ap -= ap >> 2).downto(sz) { |n|
## plr<< s.ow?(n) ? nil : lm.(s[n]) # p # c
## }
## rs[1] = r0.to_xeh},
# rs[1] = r0},
# -> { # ji_ngq[-1]
## rs[0] = r1.to_xeh},
# rs[0] = r1},
# -> {}
# ] # .lazy #? mruby 410200
.
1059,1060c
# sz = 4; @@fls_m || (ap = (1 << sz) - 1 - 1)
# sz -= 2; ap = @@fls_m ||= ((ap << sz) + ap >> sz - 1) + 1 >> 1
.
1050,1057c
sym = nil
# r = nil; rs = [?-, ?-] # q 2
rs = [?-, ?-] # q 2
## wo = []
.
1047a
# pl, sp, r, r0, r1, sym, sy, pr = nil
# pl, r, r0, r1, sym, sy, pr = nil
.
1044c
# s.irep(i = @irep)
s.irep(i = @irepid)

c_l = Fls__l.new(loc, s, i, imem, lpl)
.
1042c
s = Stack.new # ; plr = []
.
1025,1029c
# @@fls_m = nil
.
1022c
# r[1] = pl[lpl.afl(thl[1], ?i)] # q
# (lpl.ckth(pl[lpl.afl('ctr', ?i)][0], 0) && lpl.ckth(r[1], 3)) || r[1] = [] # q # t
r[1] = pl[lpl.afl(thl[1], ?i)] || @r[1] # q # fuguai taisaku
(lpl.ckth(pl[@i_sp][0], 0) && lpl.ckth(r[1], 3)) || r[1] = [] # q # t

@sym, r, ji_ngq =
[pl[lpl.afl('sym', ?i)].to_sym, r, r.map { |v| lpl.ckth(v, 1)}] # q

ji_ngq[0] && @s.ps(pl[@i_sp].flatten[0]) { |i| # && 0 <= sp
0 > i ? (ji_ngq[1] = ! ! r[1] = r[0]; ~ i) : i
}

@r = r
@f = (@ji_ngq = ji_ngq).all?
end

def plg(pc)
@f || ! ((@pl = @lpl.pl_g(pc)).empty? && @r.empty?) # fuguai taisaku
end

def verb(pc)
return if -1 == @rs[i = @mh_thl.size] # r

@loc.verb "#{pc.to_xeh} #{@sym} #{@rs[1]} #{@rs[0]}"

@f && @rs[i] = -1
end
.
1019,1020c
# r = [pl[lpl.afl(thl[0], ?i)]] # q
r = [pl[lpl.afl(thl[0], ?i)]] || @r[0] # q # fuguai taisaku
.
1016c
# r = Array.new(thl.size) { |n| pl[lpl.afl(thl[n], ?i)]} # q
.
1014c
thl = mh_thl
# thl = @@mh_thl
.
1011,1012c
def rslt # (pl)
lpl = @lpl
pl = @pl
.
1009a
#
## r = Array.new(thl.size) { |n| pl[lpl.afl(thl[n], ?i)]} # q
#
## r.map { |v| v[1] = v[-1]}
## r = r.map { |v| v[1] = v[-1]} # higokan ? mruby 70410200
#
# [pl[lpl.afl('sym', ?i)].to_sym, r, r.map { |v| lpl.ckth(v, 1)}] # q
# end

class Fls__l
include M__H
@@fls_m = nil
@@mh_thl = nil

def initialize(loc, s, irep, imem, lpl)
(
@loc = loc
@s = s; @i = irep; @imem = imem; @lpl = lpl

@mh_thl = @@mh_thl ||= mh_thl

@isr0, @pr, @sym, @mt, @r, @r0, @r1 = nil; @rs = [?-, ?-] # q 2
@f = false; @ji_ngq = [false, false]
@sz = 1
sz = 4; @@fls_m || (ap = (1 << sz) - 1 - 1)
sz -= 2; @ap = @@fls_m ||= ((ap << sz) + ap >> sz - 1) + 1 >> 1

@pl = []; @plr = []
lm = ->(r1) {r1 && @imem.send(@pr, *@isr0, r1, @mt)} # l
@ca = [
-> { # f
# @r = @r1 < @sz && @plr[@r1] || @lm.(@r1) # c
sz = (sz = @plr[@r1] ; @r1 >= @sz ||
sz.nil?) ? lm.(@r1) : sz # c
s[@r1] = @sy ? [s[@r1], sz].inject(@sy) : sz
# 0 == m && wo.include?(r) || wo.push(r).sort!
# [[@r1, @r0], @sym]
@rs = [@r1, @r0]
},
-> { # ji_ngq[0]
## ((sw = sp + sz) + 0xe).step(sw, -1) { # higokan mruby 70410200 # bbab89e7 5211410200 tmtm http://mruby-master-changes.hatenablog.com/entry/2014/11/26/203350
# @sz.step(@sz + @ap -= @ap >> 2) { |n| @plr<< @lm.(s[n])} # p c
0 == s.size ?
# Slp.new.slp(0) :
## @Slp.slp(0) :
nil :
@plr += lm.(s[sz = @sz .. # c
sz + (@ap = (sz = @ap; sz += sz >> 1) >> 1)]) # + (@ap <=> 0)]) # sz = @ap >> 1) + (sz >> 1)])
# plr<< s.ow?(n) ? nil : lm.(s[n]) # p c
@rs[1] = @r0 # ; [@rs, @sym]
},
-> { # ji_ngq[-1]
@rs[0] = @r1 # ; [@rs, @sym]
},
-> { # [@rs, @sym]
}
] # .lazy #? mruby 410200

# plb = Plb
# i_th = lpl.afl('th', ?i) # q
# @i_sp = plb.assoc('sp')[1]
@i_sp = lpl.afl('ctr', ?i) # q
)
end

def ca # (i)
# @sp ||= @s.p = @pl[@i_sp][0]
@r0, @r1 = @r

if (ji_ngq = @ji_ngq)[0]
@pr || (@pr, @sy = @imem.fml('st', @sym)[1 .. -1]
# ?_ == @pr.to_s[1] || @mt = @pr) # q
?_ != @pr.to_s[1] || @mt = @pr) # q
@isr0 = [@mt ? @i : @s, @r0]
@sz = @plr.size
end

# (@ca).force[ #? mruby 410200
# @ca.force[ #? mruby 410200
@ca[
ji_ngq.inject(0) { |ca, v| ca = v ? 0 : 1 | ca << 1}].call
end
.
1007d
998,1005c
# def rslt(pl)
# lpl = @pl
# thl = mh_thl
#
# r = [pl[lpl.afl(thl[0], ?i)]] # q
.
696d
680d
665d
662d
657,658c
# idx += (mx <=> idx) + 1 >> 1
idx -= (idx <=> mx) >> 1
.
650,651c
# 0.step(idx) { |n| pl_es(pc, [thl[n], th[n]])}
a = []; 0.step(idx) { |n| a.push(thl[n], th[n])}
pl_es(pc, a)
.
644d
641a
# th[idx], t = s_id(th[idx]) # if mx >= idx # && ckth(th[idx], 3)
.
633a
t = nil
.
631d
626d
618a
# thl = @@mh_thl
.
616a
loc = @@Loc
.
606a
# knid(a, :Numeric).! && [a, op]]
# case a when Numeric then nil else [a, op] end]
.
605a
## knid(a, :Numeric).! &&
.
604d
602a

a = (@@Imem).str__getarg(a)

.
594,595c
# knid(a, :Array) ? s_id(a, pc) : a # __method__(a, pc) : #? mruby 410200
knid(a, :Array) ? s_id(a) : a # __method__(a) : #? mruby 410200
## case a when Array then s_id(a, pc) else a end # __method__(a, pc) else #? mruby 410200 # omoi ?
# case a when Array then s_id(a) else a end # __method__(a) else #? mruby 410200 # omoi ?
.
589,591c
((tb = TB.dup) == a || knid(a, :Array).!) && (return a)
.
536c
# aa.each_slice(2) { |k, v| send(k, v)}
aa.each_slice(2) { |k, v| send(k[1 .. -1], v)}
.
530c
?_ == (k = k.to_s)[0] && (aa.push(k, v); break) # q
.
505,507c
# 0 == n ? pl.map! { |a| a[1]} : pl
0 == n ? pl.map { |a| a[1]} : pl
.
461c
# plini(@@rmth) # 410200plini
.
452,453d
432d
407,410c
## '__' == a[0][0 .. 1] ? # higokan mruby 70410200
# '__' == (a[0] = a[0].to_s)[0 .. 1] ?
# '__' != a[0][0 .. 1] ? # higokan mruby 70410200
'__' != (a[0] = a[0].to_s)[0 .. 1] ?
# self.mmis(?s << a[0], *a[1 .. -1]) :
# self.send(:s__send, *a[1 .. -1])
self.mmis('s__' << a[0], *a[1 .. -1]) :
self.mmis(:s__send, a[1].to_s[2 .. -1], *a[2 .. -1])
.
398d
396d
325a
# (f = @@fml).(lb).assoc(sym) # c
.
324a
# @fml.(lb).assoc(sym) # c
.
323a
def str__getarg(s)
?_ == s.to_s[0] && s = "getarg" << s # q
s
end

def ta(l, cop) [l[0] || :getarg_a, l[1] || cop][0 .. l[2] || 1] end

.
321a
# @fml = @@fml
.
303,309c
# [:MOVE, :__sr0], [:LOADL, :pool],
# [:LOADI, :__r0 ], [:LOADSYM, :syms],
# [:LOADSELF, :__sr0], [:LOADT, :__r0],
# [:ADD, :__sr01, :+], [:ADDI, :__r0, :+],
# [:SUB, :__sr01, :-], [:SUBI, :__r0, :-],
# [:MUL, :__sr01, :*], [:DIV, :__sr01, :/],
# [:EQ, :__r1_eq_sr01]],
[:MOVE, :sr0], [:LOADL, :__pool],
[:LOADI, :r0 ], [:LOADSYM, :__syms],
[:LOADSELF, :sr0], [:LOADT, :r0],
[:ADD, :sr01, :+], [:ADDI, :r0, :+],
[:SUB, :sr01, :-], [:SUBI, :r0, :-],
[:MUL, :sr01, :*], [:DIV, :sr01, :/],
[:EQ, :r1_eq_sr01]],
.
294,295d
290d
288d
281,283d
269d
251d
235d
217a
include M__H
.
205d
202a

.
194,196d
191d
180a
# @@slp = 2; @@slp =
# (((NSL_ >> @@slp) + (NSL_ >> 5 + @@slp)) >> 9 - @@slp) + 1 >> 1

.
145c
)][0] ? self.replace(a) : # f ? self.replace(a) : # fuguai taisaku
.
140,142c
# n = 0; c = i + 1 ## c = -i - 1 ### c = (n = 0) - 1
# while 0 < c -= 1 ## 0 > c += 1 ### i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
# n = fr.abs; c = fr.sgp - 1 # aisyou ( sureddo )
n = fr.abs; c = (fr + fr.abs >> 1) - 1
while i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
# a[n] && yield(a[n], i - c) && (next a.delete_at(n)); n += 1 ## i + c ### c
a[n] && yield(a[n], c) && (next a.delete_at(n)); n += 1
.
137c
[! a, ( # fuguai taisaku
.
132c
# def delif_c(i = @@ts, a = nil)
def delif_c(i = @@ts, a = nil, fr = 0)
.
130a
# def delif_c(i = nil)
.
40,41c
@@ts = 2 # = (@@rmth >> 1) + 1 # = $$ + 1 # = 68060
.
24,25c
NSL_ = 6309 # nanosleep() # OSX/PPC : 20476309 ?
# NSL_ = 10065 # nanosleep() # OSX/PPC : 20480065 ?
.
17c
# :ctr_s, :p, :s, :fibt].clear
# :ctr_s, :p, :s, :r, :c, :fibt].lazy.force.lazy
:p, :s, :r, :c,
:ctr_s, :fibt].lazy.force.clear.lazy
.
13,14c
:__sr0, :__r0, :__sr01, :__r1_eq_sr01, # :__i__r0,
.
6c
# :+, :-, :*, :/,
:-, :/, :*, :+,
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
日が照つてゐた 今から五億年前に ──高橋新吉

YAMAGUTIseisei

unread,
Apr 24, 2021, 8:28:22 PM4/24/21
to
1690,1691c
## @rmt.kill # nil ( monami-ya.mrb 60510200 ) , Assertion failed: ((obj)->tt != MRB_TT_FREE), function mrb_gc_mark, file src/gc.c, line 591. ( mruby 70410200 )
### @rmt.join
# @rmt.each(&:kill)
.
1666,1670d
1624c
# loc.vrb "#{pc.to_xeh} #{sym} #{rg['cop'].to_xeh}" if 0 <= rg.p
loc.vrb [1, pc, sym, rg['cop']] if 0 <= rg.p
.
1510a
# @rmt.each { |rmt| rmt.join} # .alive?
.
1486d
1480d
1475d
1469d
1435c
# ri ||= true == fb || true == fb.resume && fb = true
(ri ||= fb && true == fb.resume) && fb = nil
.
1337c
# sp = [sb].flatten
sp = [sp].flatten
.
1326d
1313c
# fv = fvl[-1].(oi); fvl.delete_at(((0 <=> fvl.hgt) << 1) + 1) # c
fv = (fvl.delete_at(((0 <=> fvl.hgt) << 1) + 1) || fvl[0]).(oi) # c
.
1303,1305c
# fvl = [->(oi) {((oi <= ht = fv.hgt) && fv[oi] = ta.(fv[oi])) ? # l # c
# [thl[oi], verb.(fv[oi])] : []}, # c
# ->(oi) {[thl[oi], verb.(ta.(fv[oi])), thl[oi + 1], []]}] # .lazy # l # c 2
fvl = [->(oi) {((oi <= ht = fv.hgt) && fv[oi] = imem.ta(fv[oi], cop)) ? # l
[thl[oi], verb.(fv[oi])] : []}, # c
->(oi) {[thl[oi], verb.(imem.ta(fv[oi], cop)), thl[oi + 1], tb]}] # .lazy # l # c
.
1300a
thl = MH_THL
.
1299c
# thl = mh_thl
.
1290,1293c
# sb = sp
# ta = ->(ta) { # l
# [ta[0] || (sb = ~ [sp].flatten[0]; :getarg_a), ta[1] || cop][
# 0 .. ta[2] || 1] }
.
1284c
loc.vrb("Unkown code #{sym} ") # .to_s
.
1247,1263c
# if 0 == m
# c_l.ca # (m)
# end
f = 0 == m && c_l.ca && f
c_l.vrb(pc)
# sl.plwt(m) {m = Fiber.yield(f && 0 == m)}
sl.plwt(m) {m = Fiber.yield(f)}
.
1240,1241d
1237,1238c
# sp = sp[0] if (ktf = knid(sp, :Array))

# f = ktf && ji_ngq.all?
.
1224,1235c
# if f.! || ktf.!
# f = c_l.plg(pc1) && c_l.rslt
f = c_l.plg(pc1) && c_l.rslt(pc)
.
1220d
1216c
# loc.vrb [3, pc, sym, rs[1], rs[0]]
.
1186,1213c
c_l = Fls__l.new(loc, s, i, imem, @pl, sl)
sl = @Slp
)
.
1183,1184c
# sz = 4; @@fls_m || (ap = (1 << sz) - 1 - 1)
# sz -= 2; @ap = @@fls_m ||= ((ap << sz) + ap >> sz - 1) + 1 >> 1
sl = @@fls_m || (f = 4; sl = (1 << f) - 1 - 1
f -= 2; sl = @@fls_m = ((sl << f) + sl >> f - 1) + 1 >> 1)
.
1179,1181c
# sym = nil
# rs = [?-, ?-]
.
1166,1177c
# c_l = Fls__l.new(loc, s, i, imem, lpl)
.
1162d
1160d
1158c
# i_sp = lpl.afl(@pla.assoc('sp')[1], ?i) ## # q
.
1156c
# lpl = @pl # ; plb = @@plb
.
1150d
1148c
@@fls_m = nil
.
1142c
## @loc.vrb "#{pc.to_xeh} #{@sym} #{@rs[1]} #{@rs[0]}"
@loc.vrb [3, pc, @sym, @rs[1], @rs[0]]
.
1139c
def vrb(pc)
.
1131a
ji_ngq = r.map { |v| lpl.ckth(v, 1)}
ji_ngq[0] && @s.p = pl[@i_sp].flatten[0]
@sym ||= pl[lpl.afl('sym', ?i)].to_sym # q

.
1127,1129c
# ji_ngq[0] && @s.ps(pl[@i_sp].flatten[0]) { |i| # && 0 <= sp
# 0 > i ? (ji_ngq[1] = ! ! r[1] = r[0]; ~ i) : i
# }
.
1124,1125c
# sym, (r0, r1) = rslt pl # higokan mruby 70410200 # bce75e27 2211410200 matz http://mruby-master-changes.hatenablog.com/entry/2014/11/24/114903
# @sym, r, ji_ngq =
# [pl[lpl.afl('sym', ?i)].to_sym, r, r.map { |v| lpl.ckth(v, 1)}] # q
.
1116,1122c
# r = [pl[lpl.afl(thl[0], ?i)]] || @r[0] # q # fuguai taisaku
# r[1] = pl[lpl.afl(thl[1], ?i)] || @r[1] # q # fuguai taisaku
# (lpl.ckth(pl[@i_sp][0], 0) && lpl.ckth(r[1], 3)) || r[1] = [] # q # t

# thl.each_with_index { |v, n| r[n] = pl[lpl.afl(v, ?i)]} # q
thl.each_with_index { |v, n|
r[n] = (pl[lpl.afl(v, ?i)] || @r[n]) # q # fuguai taisaku
r[n][0] && knid(r[n][0], :Numeric) && r[n] = r[n][0]
}
r[1] = r[0] if knid(pl[@i_sp][0], :Array) && lpl.ckth(r[1], 2)
.
1110,1111c
thl = MH_THL
r = []
.
1106c
# def rslt # (pl)
def rslt(pc)
.
1103a

@f
.
1094d
1088,1089c
def ca # (m) # (i)
# 0 == m || return

.
1075,1078c
@rs[0] = @r1},
-> {}
.
1072,1073c
# }
@rs[1] = @r0},
.
1064,1070c
0 == @s.size ? nil : # Slp.new.slp(0) : ## @Slp.slp(0) :
# @plr += @lm.(@s[(@sz = @plr.size) .. @sz + @ap -= @ap >> 2]) # c
@plr += lm.(s[(sz = @sz) ..
sz + (ap = (ap += ap >> 1) >> 1)]) # + (ap <=> 0)]) # sz = @ap >> 1) + (sz >> 1)]) # c
# plr<< s.ow?(n) ? nil : lm.(s[n]) # p c
# (sz + ap -= ap >> 2).downto(sz) { |n|
.
1059,1061c
@rs = [@r1, @r0]},
.
1054c
# @r = @r1 <= @sz && @plr[@r1] || @lm.(@r1) # c
.
1047,1048c
# sz = 4; @@fls_m || (ap = (1 << sz) - 1 - 1)
# sz -= 2; @ap = @@fls_m ||= ((ap << sz) + ap >> sz - 1) + 1 >> 1
# @ap = ap
.
1044c
# @isr0, @pr, @sym, @mt, @r, @r0, @r1 = nil; @rs = [?-, ?-] # q 2
@isr0, @pr, @sym, @mt, @r0, @r1 = nil; @r = []; @rs = [?-, ?-] # q 2
.
1042c
# @mh_thl = @@mh_thl ||= mh_thl
@mh_thl = @@mh_thl
.
1037c
# def initialize(loc, s, irep, imem, lpl)
def initialize(loc, s, irep, imem, lpl, ap)
.
1033,1035c
# @@mh_thl = nil
@@mh_thl = MH_THL.dup
.
1015,1030d
994c
thl = MH_THL
.
973a


# @pla = [['sp', 'ctr']]

.
971,972d
845,846c
# def getarg_a
def method_missing(*a)
# @s[@r.getarg_a(@c) + @p]
@s[@r.send(a[0], @c) + @p]
.
837,838c
# def is(i = nil)
# @i = i
.
826,831c
## @p
# end
.
821,824c
#### def ps(i, &b)
## id = self.object_id
## @p = a[0] if ! a.empty?
## @p = pt
## @p = i
## (i == @p) && return(i) # higokan ? mruby 70410200
#### return i if i == @p
## @p = 0 > i ? ~ i : i
#### @p = b ? yield(i) : i
.
818,819c
##def sp(*a)
## def sp(pt)
.
800a
# owi?(i) || (@@ow<< [i, []]; 0xf < @@ow.size && @@ow.shift; @ir = i) # p
.
794a
# a = @s[@p.ipt a[0]] = a[1]
# a = @s[@p + a[0].sgp] = a[1]
.
780a
# s[@p.ipt a[0]]
.
766d
758,759d
678,679c
idx -= (idx <=> mx) >> 1 # idx += (mx <=> idx) + 1 >> 1

t && loc.vrb([2, pc - 1, *t])
#### (loc = @@Loc).verb("#{pc.to_xeh} #{a} #{op.to_xeh}")]
.
676c
# pl_es(pc, [thl[idx], th[idx]])
r = pl_es(pc, [thl[idx], [th[idx]]])
.
670,672c
# a = []; 0.step(idx) { |n| a.push(thl[n], th[n])}
a = []; 0.step(idx) { |n| a.push(thl[n], [th[n]])}
# pl_es(pc, a)
r = pl_es(pc, a)
.
661,662c
# th[idx], t = s_id(th[idx], pc - 1) # if mx >= idx # && ckth(th[idx], 3)
th[idx], t = s_id(th[idx]) # if mx >= idx # && ckth(th[idx], 3)
.
645a
# r = nil
.
639a
thl = MH_THL
.
638d
616,626c
# a, op = a
#
# a = (@@Imem).str__getarg(a)
#
# [self.send(a, op) || op,
# case a when Numeric then nil else [a, op] end]
## knid(a, :Numeric).! && [a, op]]
a[0] = (@@Imem).str__getarg(a[0])
[self.send(*a) || a[1],
case a[0] when Numeric then nil else a end]
# knid(a[0], :Numeric).! && a]
.
606,609c
knid(a, :Array) ? s_id(a) : # __method__(a) : #? mruby 410200
# case a when Array then s_id(a) else # __method__(a) else #? mruby 410200 # omoi ?
a # end
.
602d
600c
# def s_id(a, pc)
def s_id(a)
.
561c
pl_es(0, [:ctr, ctr])
.
546c
# pl[i] = 'ctr' == k && ! knid(v, :Array) ? pl[i]<< v : v # p
pl[i] = knid(v, :Numeric) ? pl[i]<< v : v # p
.
519d
496c
# @@Loc.plok(n) { |a| JSON::parse(ENV[@@idb + a[0]])}
### a = [n]
@@Loc.plok(n) { |a| ### @ca =
JSON::parse( ### @ca =
ENV[@@idb + a[0].to_xeh])
}
.
486c
# @@Loc.plok(n, v) { |a| ENV[@@idb + a[0]] = JSON::generate(a[1])}
@@Loc.plok(n, v) { |a| ENV[@@idb + a[0].to_xeh] = JSON::generate(a[1])}
.
464a
### @ca = nil
.
335c
# def ta(l, cop) [l[0] || :getarg_a, l[1] || cop][0 .. l[2] || 1] end
def ta(l, cop) [l[0] || :_a, l[1] || cop][0 .. l[2] || 1] end
.
320,321c
# [:ADD, [[] ]], [:ADDI, [[:getarg_c ], []]],
# [:SUB, [[] ]], [:SUBI, [[:getarg_c ], []]],
[:ADD, [[] ]], [:ADDI, [[:_c ], []]],
[:SUB, [[] ]], [:SUBI, [[:_c ], []]],
.
317,318c
# [:MOVE, [[:getarg_b ], []]], [:LOADL, [[:getarg_bx ], []]],
# [:LOADI, [[:getarg_sbx ], []]], [:LOADSYM, [[:getarg_bx ], []]],
[:MOVE, [[:_b ], []]], [:LOADL, [[:_bx ], []]],
[:LOADI, [[:_sbx ], []]], [:LOADSYM, [[:_bx ], []]],
.
301,307d
286a

# @@Slp.slp 0
.
285a
case a
when Array
s = a[1].to_xeh << " " * a[0] << "#{a[2]} #{a[3].to_xeh}"
a[4] && s << " #{a[4].to_xeh}"
else
s = a
end

.
284c
def vrb(a)
.
272c
## a[0] = a[0].to_xeh
.
225c
# include M__H
.
151,153c
# (v = a[n]) && yield(v, c) && a.delete_at(n) || n += 1
# end
}
## )][0] ? self.replace(a) : # f ? self.replace(a) # fuguai taisaku
.
147,149c
# n = fr.abs; c = (fr + fr.abs >> 1) - 1
# while i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
# i.times.with_index(fr.sgp) { |n, c| # aisyou ( sureddo )
n = fr + fr.abs >> 1
i.times { |c|
.
143,145c
# (i > n = a.size) && i = n
(i > n = a.size - fr.abs) && i = n
.
141c
## [! a, ( # fuguai taisaku
.
133d
118a
include M__H

.
77c
# @@ks ||= (0 .. 9).to_a.join + ?- # * '' higokan mruby 70410200 # ?0.upto # higokan mruby 70410200 # 7221410200 6ccae658 suzukaze http://mruby-master-changes.hatenablog.com/entry/2014/12/27# ? # q
.
46,48c
# def mh_thl
# @@mh_thl ||= (0 .. 1).to_a.map { |n| 'th' + n.to_xeh}
# end
.
44d
31a
MH_THL = (0 .. 1).map { |n| 'th' + n.to_xeh}
.
27,28c
# NSL_ = 6309 # nanosleep() # OSX/PPC : 20476309 ?
NSL_ = 10065 # nanosleep() # OSX/PPC : 20480065 ?
.
14,20c
# :__sr0, :__r0, :__sr01, :__r1_eq_sr01,
# :s__send, :pool, :syms, # :ji_ngq,
:sr0, :r0, :sr01, :r1_eq_sr01,
:s__send, :__pool, :__syms, # :ji_ngq,

# :p, :s, :r, :c,
# :ctr_s, :fibt].lazy.force.clear.lazy
:_ctr_s, :p, :s, :r, :c, :fibt].clear
.
8a
:_a, :_b, :_sbx, :_bx, :_c,
.
7a
:ctr, :th, :th0, :th1, :sym,

.
6d
2a
# Memorial : Merry HongmengOS

.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
日が照つてゐた 今から五億年前に ──高橋新吉



<Subject: jit-1_-_github__ysei‾mruby-meta-circular-heiretu_-_nightly_-_2_0_2_1_0_3_2_8_8230120200.rb
>Subject: jit-1_-_github__ysei‾mruby-meta-circular-heiretu_-_nightly_-_2_0_2_1_0_3_2_8__8230120200.rb

YAMAGUTIseisei

unread,
Jul 13, 2021, 8:20:28 AM7/13/21
to
1646c
# ise[i_i_d].delif_c(ts) { |fis, n|
ise[i_i_d].delif_c { |fis, n|
.
1640c
# ise[i_i_s].delif_c(ts) { |pfl, n|
ise[i_i_s].delif_c { |pfl, n|
.
1583,1587d
1546d
1513a
@Slp.slp 0
.
1461,1463c
# sym = (c = [nil, 0, 1][[:JMP, :JMPIF, :JMPNOT].index(sym)]) &&
# stack.getarg_a
# (! c || c && [sym, ! sym][c]) &&
# rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop)

c = [:JMP, :JMPIF, :JMPNOT].index(sym) - 1
(0 > c || (sym = stack.getarg_a; [sym, ! sym][c])) &&
.
1411a
sl.slp 0
.
1408,1409c
# (ri ||= fb && true == fb.resume) && fb = nil
ri ||= true == fb.resume
.
1402a
sl = @Slp
.
1309d
1284,1286c
# when 'th'
# fv = (fvl.delete_at(((0 <=> fvl.hgt) << 1) + 1) || fvl[0]).(oi) # c
when 'th' then fv = fvl[-1].(oi); fvl = fvl[0 .. fvl.size - 2] # c
.
1272,1278c
# fvl = [->(oi) {((oi <= ht = fv.hgt) && fv[oi] = imem.ta(fv[oi], cop)) ? # l
fvl = [
->(oi) {((oi <= ht = fv.hgt) && fv[oi] = imem.ta(fv[oi], cop)) ? # l
[thl[oi], verb.(fv[oi])] : []}, # c
->(oi) {[thl[oi], verb.(imem.ta(fv[oi], cop)), thl[oi + 1], tb]} # .lazy # l # c
]
.
1267,1268d
1264c
## loc.verb("#{pc.to_xeh} #{verb[0]} #{verb[1].to_xeh}")
# loc.vrb(
# "#{pc.to_xeh} getarg#{verb[0]} #{verb[1].to_xeh}")
.
1257c
# bt = imem.fml('th', 'bt')[1 .. -1]
bt = imem.fml_th_bt
.
1230d
1225,1228c
# f = 0 == m && c_l.ca && f
f = c_l.ca(m, pc) && f
.
1213d
1190,1198c
# sl = @@fls_m || (f = 4; sl = (1 << f) - 1 - 1
# f -= 2; sl = @@fls_m = ((sl << f) + sl >> f - 1) + 1 >> 1)
sl = @@fls_m ||= @@fls_mc.(4)
.
1187d
1184d
1175a
@@fls_mc = ->(sz) {
@@fls_m = (1 << sz) - 1 - 1
sz -= 2; sz = ((@@fls_m << sz) + @@fls_m >> sz - 1) + 1 >> 1
@@fls_mc = nil
sz
}
.
1171c
# @f && @rs[i] = -1
@f && @rs[i] ||= -1
.
1168,1169c
### @loc.vrb "#{pc.to_xeh} #{@sym} #{@rs[1]} #{@rs[0]}"
## @loc.vrb "#{pc.to_xeh} #{@sym} #{rs[1]} #{rs[0]}"
@loc.vrb [3, pc, @sym, rs[1], rs[0]]
.
1166c
# return if -1 == @rs[i = @mh_thl.size] # r
return if -1 == (rs = @rs)[i = @mh_thl.size] # r
.
1154c
# ji_ngq = r.map { |v| lpl.ckth(v, 1)}
ji_ngq = r.map { |r| lpl.ckth(r, 1)}
.
1138d
1132,1136c
# r = r.map { |v| v[1] = v[-1]} # higokan ? mruby 70410200
.
1129a
v = [nil, nil]
.
1123d
1109c
@r0, @r1 = @r
# @pr || (@pr, @sy = @imem.fml('st', @sym)[1 .. -1]
@pr || (@pr, @sy = @imem.fml('st', @sym)[1 .. -1][0]
.
1103,1106c
# def ca # (m) # (i)
def ca(m, pc) # (i)
0 == m || return
.
1088c
# plr<< s.ow?(n) ? nil : lm.(isr0, s[n]) # p # c
.
1083,1086c
# @plr += lm.(s[(sz = @sz) .. # c
# sz + (ap = (ap += ap >> 1) >> 1)]) # sz = @ap >> 1) + (sz >> 1)])
# @sz.step(@sz + (@ap = (@ap += @ap >> 1) >> 1)) { |n|
@sz.step(@sz + (ap = (ap += ap >> 1) >> 1)) { |n| # + (ap <=> 0))
@plr<< @lm.(s[n])} # p # c
.
1074,1077c
@r = @r1 <= @sz && @plr[@r1] || @lm.(@r1) # c
s[@r1] = @sy ? [s[@r1], @r].inject(@sy) : @r
.
1071c
@lm = ->(r1) {r1 && @imem.send(@pr, *@isr0, r1, @mt)} # l
.
1066,1068d
1059d
1057c
@s = s; @i = irep; @imem = imem; @lpl = lpl # ; @ap = ap
.
1050d
1041c
pl[0] = [[thl[0], [thini]], [thl[1], [thini]],
['sym', [0]], ['ctr', []]] # @pla = [['sp', 'ctr']]
.
1037,1039d
1026d
1023c
# module M__PlIni # osx/ppc http://master.dl.sourceforge.net/project/hpc/OldFiles/gcc-bin.tar.gz#4p3__3.400 #gcc-tiger-bin.tar.gz#4p1__1.400 # cctools-590.36.dmg # Rake : Ruby1.9+/OSX10.4/PPC ?
.
1002c
# @rmt = wkth
@rmt = []
@@nth.times {@rmt<< wkth} # p
.
978a
@Slp = @@Slp
.
977d
970a
@@nth = NTH
.
857d
855d
849d
828d
785c
# attr_accessor :c, :p, :s, :r
attr_accessor :c, :p, :r
.
712c
( th[idx].nil? || # fuguai taisaku ?
.
705,706c
# t && loc.vrb([2, pc - 1, *t])
v && 0 != vl && loc.vrb([2, pc - 1, *v])
.
702a

r || (next ini.call) # fuguai taisaku ?

.
701a
# r = pl_es(pc, [thl[idx], [th[idx], nil]])
.
700d
693,696c
# a = []; 0.step(idx) { |n| a.push(thl[n], [th[n]])}
# r = pl_es(pc, a)
r = pl_es(pc, (0 .. idx).flat_map{|n| [thl[n], [th[n]]]})
# r = pl_es(pc, (0 .. idx).flat_map{|n| [thl[n], [th[n]], n != mx]})
.
684,685c
# th[idx], t = s_id(th[idx]) # if mx >= idx # && ckth(th[idx], 3)
th[idx], v = s_id(th[idx]) # if mx >= idx # && ckth(th[idx], 3)
.
676c
# t = nil
v = nil
.
674c
# Fiber.new { |m = 1, thi = 0| 0 < m && Fiber.yield(false)
Fiber.new { |m = 1| 0 < m && Fiber.yield(false)
.
669c
# ji_ngq = false
.
662,666c
vl = LV__VRB

idx, thi, ji_ngq = nil # idx = 0 ##
ini = -> {idx, thi = 0; ji_ngq = false}.call # l # fuguai taisaku

## th = Array.new(thl.size) { |v| 0 == v ? pl_eg(pc, thl[v]) : []} # t # unwork ( thread ? ) mruby 10410200
# th = Array.new(thl.size) { |v| 0 == v ? pl_eg(pc, thl[v]) : tb} # unwork ( thread ) mruby 10410200 # mruby-thread e139cfed 1211410200 sdottaka
# th = ((idx = 0) .. mx = thl.hgt).map { |v|
# 0 == v ? pl_eg(pc, thl[v]) : [] # t
# }
th = (idx .. mx = thl.hgt).map { |v| 0 == v ? pl_eg(pc, thl[v]) : tb}
.
660d
657a
tb = TB
.
638,648c
# a[0] = (@@Imem).str__getarg(a[0])
a[0] = (@@Imem).getarg__(a[0])
# [self.send(*a) || a[1],
# case a[0] when Numeric then nil else a end]
## knid(a[0], :Numeric).! && a]
[self.send(*a) || a[1], case a[0] when Numeric then nil else a end]
# [self.send(*a) || a[1], knid(a[0], :Numeric).! && a]
.
628c
## v.kind_of?(Array) ? # unwork ( thread ? )
.
623d
620c
# case a[0] when Numeric then a.inject else (ROU).send(*[
# [a[1], ?_ == (a = a[0].to_s)[0] && a = "getarg" << a][0], a].rotate) end
## case a[0] when Numeric then a.inject else (ROU).send(a[0].getarg__, a[1]) end
## case a[0] when Numeric then a.inject else (ROU).send((@@Imem).getarg__(a[0]), a[1]) end
.
618a
### GC.start # g
.
572c
ensure
.
568d
542c
# 0 == n ? pl.map { |a| a[1]} : pl
0 == n ? (return pl.map { |a| a[1]}) : pl # r
.
516,519c
# @@Loc.plok(n) { |a| ### @ca =
@@Loc.plok(*@@Idx.idx(:Numeric, n)) { |a| ### @ca =
JSON::parse( ### @ca =
# ENV[@@idb + a[0].to_xeh])
ENV[@@idb + a[0]])
} # || nil
.
514c

.
503,504c
# @@Loc.plok(n, v) { |a| ENV[@@idb + a[0].to_xeh] = JSON::generate(a[1])}
@@Loc.plok(*@@Idx.idx(:Numeric, n, v)) { |a| ENV[@@idb + a[0]] =
JSON::generate(
a[1])} # || nil
.
491a

.
489d
487d
475a


class Idx
def idx(tp, *a)
a[0] = a[0].to_xeh
a
end
end
@@Idx = Idx.new

.
439,443c
# '__' != (a[0] = a[0].to_s)[0 .. 1] ?
# self.mmis('s__' << a[0], *a[1 .. -1]) :
if '__' != (a[0] = a[0].to_s)[0 .. 1]
a[0] = 's__' << a[0]
case a[3] # a[@@I_s__r1 + 1]
when Array then a3 = a.pop; return a3.map{ |v| v.nil? ? v : send(*a, v)} # r
else self.send(*a)
end
else
# self.mmis(:s__send, a[1].to_s[2 .. -1], *a[2 .. -1])
self.send(:s__send, a[1].to_s[2 .. -1], *a[2 .. -1])
end
.
435,437c
def method_missing(*a) # atode modosu
.
427,433c
# def mmis(*a)
# case a[3] # a[@@I_s__r1 + 1]
# when Array
# a3 = a[3]; a3.map{ |v| v.nil? ? v : send(*a[0 .. 2], v, a[4])}
# else send(*a)
# end
# end
.
425a
# def method_missing(*a) a[0].send(a[3])[a[1]] end
.
358a
# def fml_th_bt
# @@fml_th_bt
## @@fml[0].assoc(lb)
# end

.
354,356c
## @fml.(lb).assoc(sym) # c
# @@fml.(lb).assoc(sym) # c
## (f = @@fml).(lb).assoc(sym) # c
[sym, @@fml.assoc(sym)[1 .. -1].assoc(lb)[1 .. -1]]
.
350d
345,347c
# def str__getarg(s)
def getarg__(s)
# ?_ == s.to_s[0] && s = "getarg" << s # q
# s
?_ == s.to_s[0] ? "getarg" << s : s # q
.
343c
@fml_th_bt = @@fml_th_bt
end
.
341c
attr_accessor :fml_th_bt

def initialize
.
317,339c
# @@fml = ->(lb) { [ # l
# ['st',
# [:MOVE, :sr0], [:LOADL, :__pool],
# [:LOADI, :r0 ], [:LOADSYM, :__syms],
# [:LOADSELF, :sr0], [:LOADT, :r0],
# [:ADD, :sr01, :+], [:ADDI, :r0, :+],
# [:SUB, :sr01, :-], [:SUBI, :r0, :-],
# [:MUL, :sr01, :*], [:DIV, :sr01, :/],
# [:EQ, :r1_eq_sr01]],
# ['th',
# ['bt', ['sym', true, 'th', true], ['sym', false, 'th', true]],
# [:MOVE, [[:_b ], []]], [:LOADL, [[:_bx ], []]],
# [:LOADI, [[:_sbx ], []]], [:LOADSYM, [[:_bx ], []]],
# [:LOADSELF, [[:mk_opcode, 0], []]], [:LOADT, [[true, '', 0], []]], # mk_opcode 0
# [:ADD, [[] ]], [:ADDI, [[:_c ], []]],
# [:SUB, [[] ]], [:SUBI, [[:_c ], []]],
# [:MUL, [[]]], [:DIV, [[]]], [:EQ, [[]]]
# ]].assoc(lb) # .lazy
# }
@@fml_th_bt = [['sym', true, 'th', true], ['sym', false, 'th', true]]
@@fml = [
[:MOVE, ['st', :sr0 ], ['th', [:_b ], []]],
[:LOADL, ['st', :__pool ], ['th', [:_bx ], []]],
[:LOADI, ['st', :r0 ], ['th', [:_sbx ], []]],
[:LOADSYM, ['st', :__syms ], ['th', [:_bx ], []]],
[:LOADSELF, ['st', :sr0 ], ['th', [:mk_opcode, 0 ], []]], # mk_opcode 0
[:LOADT, ['st', :r0 ], ['th', [true, '', 0 ], []]],
[:ADD, ['st', :sr01, :+], ['th', []]],
[:ADDI, ['st', :r0, :+], ['th', [:_c ], []]],
[:SUB, ['st', :sr01, :-], ['th', []]],
[:SUBI, ['st', :r0, :-], ['th', [:_c ], []]],
[:MUL, ['st', :sr01, :*], ['th', []]],
[:DIV, ['st', :sr01, :/], ['th', []]],
[:EQ, ['st', :r1_eq_sr01], ['th', []]]
]
.
296c
# s = a[1].to_xeh << " " * a[0] << "#{a[2]} #{a[3].to_xeh}"
s = a[1].to_xeh << " " * a[0] <<
"#{a[2]} #{a[3].to_xeh}"
# "#{a[2].to_s << (8 > a[2].size ? ' ' : '')} #{a[3].to_xeh}"
.
271a
## @@Slp.slp 0 # read syoutotu taisaku
.
257c
) # .move # ? # conf.gem :github => 'miura1729/mruby-mmm'
.
205a
# def initialize; @@slp ||= @@nsl_.force[0] end #? mruby 410200

.
202a

# @@nsl_ = [ #? mruby 410200
@@slp = # conf.gem :github => 'matsumotory/mruby-sleep' # 'bamchoh/mruby-sleep' # msleep usleep
(((@@slp = NSL_ >> 2) + (@@slp >> 5)) >> 7) + 1 >> 1
# (((@@slp = NSL_ >> 1) + (@@slp >> 5)) >> 8) + 1 >> 1
# ].lazy #? mruby 410200

.
200,201d
198a
# ].lazy #? mruby 410200
.
197c
# @@slp = 2; @@slp = # [ #? mruby 410200
.
195c
@@slp = nil
# @@slp = 7; @@slp = # [ #? mruby 410200
.
161c
## )][0] ? self.replace(a) : # f ? self.replace(a) : # fuguai taisaku
.
159d
155c

.
152,153c
# while i > c += 1 # c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
.
149,150c
n = fr + (fr = fr.abs) >> 1
(i > fr = a.size - fr) && i = fr

.
141d
50,53c
# @@mh_thl = (0 .. 1).to_a.map { |n| 'th' + n.to_xeh}
.
38a
LV__VRB = 1

.
33a
NTH = 1 # = 68060
.
23,25c
# :_ctr_s, :p, :s, :r, :c, :fibt].clear
:_ctr_s, :p, :r, :c, :fml_th_bt, :fibt].clear
.
18,19d
3,4d



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
祝 任天堂すいっち有機 EL モデル

YAMAGUTIseisei

unread,
Oct 8, 2021, 5:13:13 AM10/8/21
to
1691,1692d
1650a
# if 0 == ise[i_i_d].size || (1 == ise[i_i_d].size && 0 > ise[i_i_d][-1][0])
.
1591,1594c
## c, sym = @@opf.(irep, pcl) # c
# rg.push('cop', c)
# rg.push('sym', sym)
# stack.c = c # fuantei ?
rg.push('cop', stack.c = (sym = @@opf.(irep, pcl)).shift) # c
rg.push('sym', sym = sym[0])
.
1478c
i_i_d = 0; i_i_s = 1
.
1450d
1396a

.
1340,1341c
# pl.pl_es(pc1, opg.(thi) + # c
# [:ctr, [sp]] + [[:_ctr_s, pc1], []][thi <=> 0])
# pl.pl_es(pc1, opg.(thi) + opg0.call) # c 2
pl.pl_es(pc1, opg.(thi) + opg0.(thi)) # c 2
.
1336a
# opg0 = -> {['ctr', [sp]] + [[:ctr_s, pc1], []][thi <=> 0]} # l
.
1334c
# lopa
lopa + opg0.(oi) # c
.
1326,1328c
# when 'th' then fv = fvl[-1].(oi); fvl = fvl[0 .. fvl.size - 2] # c
# when 'th' then fv = fvl[-1].(oi); fvl = fvl[0 .. fvl.hgt - 1] # c

# when 'th' then fv = fvl.(oi) # c
when 'th' then fv = fvl[oi <=> 0].(oi) # c

.
1315,1320c
## fvl = [
## ->(oi) {((oi <= ht = fv.hgt) && fv[oi] = imem.ta(fv[oi], cop)) ? # l
## [thl[oi], verb.(fv[oi])] : []}, # c
## ->(oi) {[thl[oi], verb.(imem.ta(fv[oi], cop)), thl[oi + 1], tb]} # .lazy # l # c
## ]
fvl = [->(oi) {[thl[oi], verb.(imem.ta(fv[oi], cop)), thl[oi + 1], tb]}, # l # c
->(oi) {((oi <= ht = fv.hgt) && fv[oi] = imem.ta(fv[oi], cop)) ? # l
[thl[oi], verb.(fv[oi])] : []}] # .lazy # c

# k_sp = @pla.assoc('sp')[1]
opg0 = ->(oi) {[:ctr, [sp]] + [[:_ctr_s, pc1], []][oi <=> 0]} # l

.
1307d
1301,1304d
1299c
fml = [sym]<< fml # p
.
1278a
# rg.to_s # fuguai taisaku
.
1268,1270d
1264,1265d
1262d
1259c
# f = c_l.plg(pc1) && c_l.rslt(pc)
c_l.plg(pc1) && f = c_l.rslt(pc)
.
1250,1254d
1246c
# c_l = Fls__l.new(loc, s, i, imem, @pl, sl)
c_l = Fls__l.new(loc, s, i, imem, @Rou, @pl, sl)
.
1236d
1226,1228c
# sz -= 2; sz = ((@@fls_m << sz) + @@fls_m >> sz - 1) + 1 >> 1
# @@fls_mc = nil
# sz
sz -= 2
[((@@fls_m << sz) + @@fls_m >> sz - 1) + 1 >> 1, @@fls_mc = nil][0]
.
1218d
1216c
# @loc.vrb [3, pc, @sym, rs[1], rs[0]]
@loc.vrb [3, pc, @sym, *rs[0 ... i].reverse]
.
1214d
1211,1212c
# return if -1 == (rs = @rs)[i = @mh_thl.size] # r
return if -1 == (rs = @rs)[i = @@mh_thl.size] # r
.
1203c
# @f = (@ji_ngq = ji_ngq).all?
@f = [ji_ngq.all? || (return false), @ji_ngq = ji_ngq][0] # r
.
1198d
1190,1195d
1187c
# r[1] = r[0] if knid(pl[@i_sp][0], :Array) && lpl.ckth(r[1], 2)
r[1] = r[0] if case pl[@i_sp][0] when Array then lpl.ckth(r[1], 2) end
.
1183,1184c
# thl.each_with_index { |v, n|
thl.each_with_index { |h, n|
# r[n] = (pl[lpl.afl(v, ?i)] || @r[n]) # q # fuguai taisaku
r[n] = (pl[lpl.afl(h, ?i)] || @r[n]) # q # fuguai taisaku
v[n] = r[n][1]
.
1167c
# ji_ngq.inject(0) { |ca, v| ca = v ? 0 : 1 | ca << 1}].call
# (ji_ngq = @ji_ngq).inject(0) { |ca, v| ca = v ? 0 : 1 | ca << 1}
ji_ngq.inject(0) { |ca, v| ca = v ? 0 : 1 | ca << 1}
].(ji_ngq[0] && @plr.size) # c
.
1162a
# (ji_ngq = @ji_ngq)[0] && @sz = @plr.size
.
1160,1161c
# @isr0 = [@mt ? @i : @s, @r0]
.
1157,1158c
# @pr || (@pr, @sy = @imem.fml('st', @sym)[1 .. -1][0]
@pr || (@pr, @sy = @imem.fml('st', @sym)
.
1151d
1148c
) # .move # ? # conf.gem :github => 'miura1729/mruby-mmm'
.
1141c
# -> {}
->(sz) {}
.
1139c
# -> { # ji_ngq[-1]
->(sz) { # ji_ngq[-1]
.
1129,1137c
# 0 == @s.size ? nil : # Slp.new.slp(0) : ## @Slp.slp(0) :
0 == s.size ? nil : # Slp.new.slp(0) : ## @Slp.slp(0) :
# @sz.step(@sz + @ap -= @ap >> 2) { |n| @plr<< @lm.(@isr0, s[n])} # p # c
sz.step(sz + (ap = (ap += ap >> 1) >> 1)) { |n| @plr<< lm.(s[n])} # + (ap <=> 0)) # p # c
# plr<< s.ow?(n) ? nil : lm.(isr0, s[n]) # p # c
.
1127c
# -> { # ji_ngq[0]
->(sz) { # ji_ngq[0]
.
1122,1123c
# -> { # f
->(sz) { # f
# @r = @r1 <= @sz && @plr[@r1] || @lm.(@isr0, @r1) # c
@r = @r1 <= sz && @plr[@r1] || lm.(@r1) # c
.
1120c
# @lm = ->(r1) {r1 && @imem.send(@pr, *@isr0, r1)} # l
# lm = ->(r1) {r1 && imem.send(@pr, irep, s, @r0, r1, @mt)} # l
lm = ->(r1) {r1 && rou.send(@pr, @mt ? irep : s, @r0, r1, @mt)} # l
.
1117c
# @sz = 1
.
1114,1115c
# @isr0, @pr, @sym, @mt, @r0, @r1 = nil; @r = []; @rs = [?-, ?-] # q 2
@pr, @sym, @mt, @r0, @r1 = nil; @r = []; @rs = [?-, ?-] # q 2
@sy = nil

.
1110c
# i_sp = lpl.afl(@pla.assoc('sp')[1], ?i) ## # q
# @s = s; @i = irep; @imem = imem; @lpl = lpl # ; @ap = ap
@s = s; @imem = imem; @lpl = lpl
.
1106,1107c
# def initialize(loc, s, irep, imem, lpl, ap)
def initialize(loc, s, irep, imem, rou, lpl, ap)
.
1095c
['sym', [0]], ['ctr', []]] # @pla = [['sp', 'ctr']]
.
1090,1093c

# pl[0] = [[thl[0], [thini]], [thl[1], [thini]],
.
1046,1062d
1030a
rmth = @@rmth
# @pla = Array.new($pcmax)
# $pltini.call()
thini = [false, 0]
# @pll = [thini, thini, [], []]
# @pl = ENVary.new(rmth + 1, thini, thini, [], [])
## @pl = ENVary.new(rmth + 1, *@pll)

# @pl = ENVary.new(true) # 410200plini
plini(@@rmth, @pl = ENVary.new(rmth + 1, thini, thini, [], [])) # 310200plini ?

# @rmt = []
# @@nth.times {@rmt<< wkth} # p
@rmt = Array.new(@@nth) {wkth}

.
867d
769,770c
# (th[idx].nil? || # fuguai taisaku ?
# ckth(th[idx], 2)) && th[idx] = pl_eg(pc, thl[idx])
.
766a

(th[idx].! || ckth(th[idx], 2)) && ((th[idx] = pl_eg(pc, thl[idx])) || # fuguai taisaku ?
(next ini.call)) # fuguai taisaku ?

.
762,763c
# v && 0 != vl && loc.vrb([2, pc - 1, *v])
v[0] && 0 != vl && loc.vrb([2, pc - 1, *v])
.
754,755c
r = pl_es(pc, [thl[idx], [th[idx], nil]])
.
750d
747,748d
742,743c
# if # th[idx] && # mx >= idx && # fuguai taisaku ?
# ckth(th[idx], 1) then
if ckth(th[idx], 1)
.
729,730c
# v = nil
v = []
.
726d
720,722d
713,717c
# th = Array.new(thl.size) { |v| 0 == v ? pl_eg(pc, thl[v]) : tb} # unwork ( thread ) # mruby-thread e139cfe 1211410200 sdottaka
.
710,711c
# idx, thi, ji_ngq = nil # idx = 0 ##
# ini = -> {idx, thi = 0; ji_ngq = false}.call # l # fuguai taisaku ?
idx, thi, ji_ngq = (ini = -> {[idx = 0, thi = 0, ji_ngq = false]}).call # l # fuguai taisaku ? # idx = 0 ##
.
675c
# ([] == a || ! knid(a, :Array)) && (return a) # t
.
614,616c
# i = self.afl(k, ?i) # q
k = self.afl(k, ?i) # q
# k = loop {self.afl(k, ?i) && break} # q # fuguai taisaku
# pl[i] = knid(v, :Numeric) ? pl[i]<< v : v # p
pl[k] = knid(v, :Numeric) ? pl[k]<< v : v # p
.
589,590c
# 0 == n ? (return pl.map { |a| a[1]}) : pl # r
0 != n ? (return pl) : pl.map { |a| a[1]} # r
.
564,565c
# ENV[@@idb + a[0]])
ENV[@@Idx.lbl(a)])
.
561,562c
@@Loc.plok(n) { |a| ### @ca =
# @@Loc.plok(*@@Idx.idx(:Numeric, n)) { |a| ### @ca =
.
546,547c
# @@Loc.plok(*@@Idx.idx(:Numeric, n, v)) { |a| ENV[@@idb + a[0]] =
@@Loc.plok(n, v) { |a| ENV[@@Idx.lbl(a)] =
.
531,533c
# (0 .. n).each{ |i|
# self[i] = *a
# }
(0 .. n).each{ |i| self[i] = *a}
.
518c
# @@Idx = Idx.new
@@Idx = Idx.new(@@idb)
.
513,515c
@@idb = nil

def initialize(idb = FL.dup) @@idb = idb end

# def idx(tp, *a)
def idx(*a)
# a[0] = a[0].to_xeh
# a
a[0].to_xeh
end

def lbl(a)
@@idb + idx(*a)
.
478a

# def fml_th_bt
# @@fml_th_bt
## @@fml[0].assoc(lb)
# end
.
464,477c
# def str__getarg(s)
def getarg__(s)
# ?_ == s.to_s[0] ? "getarg" << s : s # q
?_ == s.to_s[0] ? 'getarg' << s : s # q
end

def ta(l, cop) [l[0] || :_a, l[1] || cop][0 .. l[2] || 1] end

def fml(lb, sym)
# [sym, @@fml.assoc(sym)[1 .. -1].assoc(lb)[1 .. -1]]
# [sym, @@fml.assoc(sym)[1 .. -1][@@fmli.index(lb)]] # fukusayou ?
# [sym, @@fml.assoc(sym)[@@fmli.index(lb) + 1]] # fukusayou ?
# [sym, @@fml.assoc(sym)[@@fmli.index(lb) + 1] + []] # fukusayou ? kaihi : mruby 70410200
@@fml.assoc(sym)[@@fmli.index(lb) + 1] + [] # fukusayou ? kaihi : mruby 70410200
.
456,462c
def initialize
# @fml = @@fml
@fml_th_bt = @@fml_th_bt
end
.
447,454c
attr_accessor :fml_th_bt
# attr_accessor :fml_th_bt, :fmli
.
444,445c
module M__Imem
@@fml_th_bt = [['sym', true, 'th', true], ['sym', false, 'th', true]]
@@fmli = ['st', 'th']
@@fml = [
# [:MOVE, ['st', :sr0 ], ['th', [:_b ], []]],
# [:LOADL, ['st', :__pool ], ['th', [:_bx ], []]],
# [:LOADI, ['st', :r0 ], ['th', [:_sbx ], []]],
# [:LOADSYM, ['st', :__syms ], ['th', [:_bx ], []]],
# [:LOADSELF, ['st', :sr0 ], ['th', [:mk_opcode, 0 ], []]], # mk_opcode 0
# [:LOADT, ['st', :r0 ], ['th', [true, '', 0 ], []]],
# [:ADD, ['st', :sr01, :+], ['th', []]],
# [:ADDI, ['st', :r0, :+], ['th', [:_c ], []]],
# [:SUB, ['st', :sr01, :-], ['th', []]],
# [:SUBI, ['st', :r0, :-], ['th', [:_c ], []]],
# [:MUL, ['st', :sr01, :*], ['th', []]],
# [:DIV, ['st', :sr01, :/], ['th', []]],
# [:EQ, ['st', :r1_eq_sr01], ['th', []]]
[:MOVE, [:sr0 ], [[:_b ], []]],
[:LOADL, [:__pool ], [[:_bx ], []]],
[:LOADI, [:r0 ], [[:_sbx ], []]],
[:LOADSYM, [:__syms ], [[:_bx ], []]],
[:LOADSELF, [:sr0 ], [[:mk_opcode, 0 ], []]], # mk_opcode 0
[:LOADT, [:r0 ], [[true, '', 0 ], []]],
[:ADD, [:sr01, :+ ], [[]]],
[:ADDI, [:r0, :+ ], [[:_c ], []]],
[:SUB, [:sr01, :- ], [[]]],
[:SUBI, [:r0, :- ], [[:_c ], []]],
[:MUL, [:sr01, :* ], [[]]],
[:DIV, [:sr01, :/ ], [[]]],
[:EQ, [:r1_eq_sr01 ], [[]]]
]
# ['st', nil, 'th', ['bt', ['sym', true, 'th', true], ['sym', false, 'th', true]],
.
441,442d
382,385d
375,380c
ROU = Rou.new
.
373c
class Rou
include RiteOpcodeUtil
include M__Rou
end
.
371a
end
.
366,370c
# def mmis(*a)
# case a[3] # a[@@I_s__r1 + 1]
# when Array
# a3 = a[3]; a3.map{ |v| v.nil? ? v : send(*a[0 .. 2], v, a[4])}
# else send(*a)
# end
# end

def method_missing(*a) # atode modosu
# '__' != a[0][0 .. 1] ? # higokan mruby 70410200
# '__' != (a[0] = a[0].to_s)[0 .. 1] ?
# self.mmis('s__' << a[0], *a[1 .. -1]) :
if '__' != (a[0] = a[0].to_s)[0 .. 1]
a[0] = 's__' << a[0]
case a[3] # a[@@I_s__r1 + 1]
when Array then a3 = a.pop; return a3.map{ |v| v.nil? ? v : send(*a, v)} # r
else self.send(*a)
end
else
# self.mmis(:s__send, a[1].to_s[2 .. -1], *a[2 .. -1])
self.send(:s__send, a[1].to_s[2 .. -1], *a[2 .. -1])
end
.
361,364c
def s__sr0( *a) a[0][ a[1]] end
def s__r0( *a) a[1] end
def s__sr01( *a) a[0][ a[1] + 1] end
# def s__i__r0( *a) a[0].send(a[3])[a[1]] end
def s__send( *a) a[0].send(a[3])[a[1]] end
def s__r1_eq_sr01(*a) a[0][ a[1] + 1] ==
a[0][ a[2]] end
# def method_missing(*a) a[0].send(a[3])[a[1]] end
.
359c
# def s__i_pool_r0( *a) a[@@I_s__i].pool[ a[@@I_s__r0]] end
# def s__i_syms_r0( *a) a[@@I_s__i].syms[ a[@@I_s__r0]] end
.
322,357c
module M__Rou
# @@I_s__stack = @@I_s__irep =
# @@I_s__i = 0; @@I_s__r0 = 1; @@I_s__r1 = 2; @@I_s__mt = 3
.
301,302c
## "#{a[2]} #{a[3].to_xeh}"
"#{a[2].to_s <<
(2 != a[0] && 7 < a[2].size ? ' ' : ' ')}#{a[3].to_xeh}"
.
299d
281c
### @nm && retry
.
242,252d
145,149d
47c
@@ts = 2 # = (@@rmth >> 1) + 1 # = $$ + 1 # = 68060
.
29c
NTH = 1 # = 68060
.
19d
16,17d
7a
:sr0, :r0, :sr01, :r1_eq_sr01,
:s__send, :__pool, :__syms,
.

YAMAGUTIseisei

unread,
Feb 6, 2022, 10:37:58 AM2/6/22
to
1695c
fis[i_fb].resume(0 > fis[i_pc] ? -1 : n) # cp
.
1688c
ise[i_i_d]<< [pfl[i_pc], isfl(pfl[i_rg])] # p
.
1680,1681c
# rg.shift :cop
# rg.shift :sym
.
1675c
# rg.shift 'sp'
.
1672c
# rg.shift 'pc'
rg.shift('pc'); rg.shift('sp'); rg.shift(:cop); rg.shift(:sym)
.
1654,1656c
# if ise[i_i_d].empty? || (1 == ise[i_i_d].size && 0 > ise[i_i_d][-1][0])
if ise[i_i_d].empty? || (0 == ise[i_i_d].hgt && 0 > ise[i_i_d][-1][0])
.
1639,1647c
sym = rg[:sym]
# loc.vrb "#{pc.to_xeh} #{sym} #{rg[:cop].to_xeh}" if 0 <= rg.p
loc.vrb [1, pc, sym, rg[:cop]] if 0 <= rg.p

# [(ifj.(sym) || ifs.(sym)) || ( # c 2
# ist.(pc) if pctj.pop != pc && istm.call; false), # c
# (next if pcoj.call)
# ][0] && (
[(ifj.(sym) || ifs.(sym)) || (ist.(pc) if pctj.pop != pc && istm.call # c 3
false), pcoj.call &&
next][0] && (
# (pctj<< (pco[0] = pc) + 1) if ifj.(sym) # p # c
(pctj<< 1 + pco[0] = pc) if ifj.(sym) # p # c
.
1607,1608c
# ise[i_i_d]<< pfl # p
# next false # r
next ! (ise[i_i_d]<< pfl) # r # p
.
1593,1597c
rg.push(:cop, stack.c = (sym = @@opf.(irep, pcl)).shift) # c
rg.push(:sym, sym = sym[0])
.
1582,1585d
1580a
# sl.slp 0
rg.pop :cop
rg.pop :sym
# stack.cs rg[:cop]
stack.c = rg[:cop] # fuantei ?
.
1562c
# @Slp.slp 0
sl.slp 0
.
1516c
cop, sym = rg.to_ra(:cop, :sym)
.
1481c
rg = Rg.new([['pc', pc], ['sp', @sp], [:cop], [:sym]])
.
1479c
i_i_d = 0; i_i_s = 1; i_pc = 0; i_rg = 1; i_fb = 1
.
1395,1396c
# callinfo[0 .. 2] = [rg['sp'], rg['pc'], irep]
# callinfo.p += 3
callinfo.p += (callinfo[0 .. 2] = [rg['sp'], rg['pc'], irep]).size
.
1391d
1386d
1381d
1360c
cop, sym = rg.to_ra(:cop, :sym)
.
1321d
1295,1297c
verb = ->(verb) { # loc.vrb( # l
## "#{pc.to_xeh} getarg#{verb[0]} #{verb[1].to_xeh}")
# "#{pc.to_xeh} #{str__getarg}#{verb[0]} #{verb[1].to_xeh}")
.
1281d
1279a
str__getarg = STR__GETARG
.
1276c
tb = TB.dup
.
1272c
pc, sp, cop, sym = [rg['pc'], rg['sp'], rg[:cop], rg[:sym]]
.
1258,1260d
1256d
1247d
1226,1228d
1219c
# @f && @rs[i] ||= -1
@f && @ji_ngq<< n # p
.
1216,1217c
# @loc.vrb [3, pc, @sym, *rs[0 ... i].reverse]
@loc.vrb [3, pc, @sym, *@rs.reverse]
.
1212,1213c
# return if -1 == (rs = @rs)[i = @@mh_thl.size] # r
return if @ji_ngq[n = -1] == n # r
.
1203,1204c
# @f = [ji_ngq.all? || (return false), @ji_ngq = ji_ngq][0] # r
@f = [ji_ngq.all? || return, @ji_ngq = ji_ngq][0] # r
.
1198,1199c
# @r = r
# ji_ngq = r.map { |r| lpl.ckth(r, 1)}
ji_ngq = (@r = r).map { |r| lpl.ckth(r, 1)}
.
1193d
1188d
1186d
1174a

## class CaAry_ < Array; include M__CaAry_; end


.
1139c
->(sz) { # ji_ngq[-1]
.
1134d
1132c
# @sz.step(@sz + @ap -= @ap >> 2) { |n| @plr<< @lm.(@isr0, s[n])} # p # c
.
1130c
->(sz) { # ji_ngq[0]
.
1125a
@plr.clear
.
1123c
->(sz) { # f
.
1118,1119c
# lm = ->(r1) {r1 && rou.send(@pr, irep, s, @r0, r1, @mt)} # l
.
1115d
1108c
# @mh_thl = @@mh_thl
.
1105c
# @s = s; @i = irep; @imem = imem; @lpl = lpl
.
1100d
1098c
# @@mh_thl = MH_THL.dup
@@mh_thl = MH_THL # .dup # dup omoi ?
.
1087d
1042a
# @rmt = Array.new(@@nth) { |i| wkth((@c_a<< CaAry_.new), i)} # p

.
1040,1041c
# @c_a = []
.
1035c
## @pl = ENVary.new(rmth + 1, *@pll)
.
1033c
# @pll = [thini, thini, [], []]
.
1027c
### GC.start # g # antei ?
.
1006a
# Thread.new(c_a, tid) { |c_a, tid| Pl.new.plm(c_a, tid)}
.
1000a
# def wkth(c_a, tid = 1)
.
928d
926d
897,900d
840,841c
# @@m = Mutex.new
.
782c
pc && 0 <= pc && fpl<< plw(pc) # p
# (pc = ctr_g) && 0 <= pc && fpl<< plw(pc, c_a, tid) # p
.
776a
# def plm(c_a, tid = 0)
.
767,769d
757,758c
# v[0] && 0 != vl && loc.vrb([2, pc - 1, *v])
.
745,751c
# r = pl_es(pc, (0 .. idx).flat_map{|n| [thl[n], [th[n]]]})
r = pl_es(pc, kt.call ? (thi = idx + 1
(0 .. idx).flat_map { |n| [thl[n], [th[n], v[n]]]}) :
# thi = idx + 1
# else if mx > idx
# r = pl_es(pc, [thl[idx], [th[idx], nil]])
[thl[idx], [th[idx], v[idx]]])
# end
.
743c
v[0] && ve.call

# if kt.call
.
740,741d
736d
731d
727,728c
# v = []
.
725a

th = (idx .. mx = thl.hgt).map { |v| 0 == v ? pl_eg(pc, thl[v]) : tb}
.
720c
# th = (idx .. mx = thl.hgt).map { |v| 0 == v ? pl_eg(pc, thl[v]) : tb}
th = nil

idx, thi, ji_ngq = (ini = -> {[idx = 0, thi = 0, ji_ngq = false]}).call # l # fuguai taisaku ? # idx = 0 ##
.
715,717c
vl = LV__VRB
v = []
ve = -> {0 != vl && loc.vrb([2, pc - 1, *v])}
## "#{(pc - 1).to_xeh} #{imem.getarg__(v[0])} #{v[1].to_xeh}")}
# ve = -> {loc.vrb "#{(pc - 1).to_xeh} #{v[0]} #{v[1].to_xeh}"}
.
713d
709c
tb = TB.dup
.
707a
# def plw(pc, c_a, tid) ##
.
693,698c
# a[0] = (@@Imem).getarg__(a[0])
a = [[a[1], case a = a[0] when Numeric then
## else a = (@@Imem).getarg__(a) end][0], a].reverse # .rotate
else ?_ == a.to_s[0] && a = 'getarg' << a end][0], a].reverse # .rotate # q # higokan monami-ya.mrb:60510200 mruby:70410200 : STR__GETARG , $str__getarg
# [self.send(*a) || a[1], case a[0] when Numeric then nil else a end]
[self.send(*a) || a[1], case a[0] when Numeric then else a end] # then nil
.
680a
# ([] == a || case a when Array then true end.!) && (return a) # t # higokan mruby:70410200 monami-ya.mrb:60510200
.
672,676c
case a[0] when Numeric then a.inject else (ROU).send(
*a) end
## a[0].getarg__, a[1]) end
## (@@Imem).getarg__(a[0]), a[1]) end
.
658c
## 0 == lf ? return(false) : (md &= bf if 0 == lf >> bfsz) # ? mruby 70410200 # r
.
647,648c
bfsz = (a = [knid(th, :Array), tb == th]).size
.
645a
tb = TB.dup
.
620,621c
# pl[k] = knid(v, :Numeric) ? pl[k]<< v : v # p
pl[k] = case v when Numeric then pl[k]<< v else v end # p
.
617c
# knid(k, :Symbol) && (send(k, v); break)
.
592d
584d
567d
565d
552a

.
549c

.
532,535d
519d
510,511d
508d
502a
## class CaAry_ < Array; include M__CaAry_; end

.
465,469d
452,453c
?_ == s.to_s[0] ? 'getarg' << s : s # q # higokan monami-ya.mrb:60510200 mruby:70410200 : STR__GETARG , $str__getarg
.
450d
447a
# @fmli = @@fmli
.
413,425d
409a

.
340d
336c
# when Array then a3 = a.pop; return a3.map{ |v| v.nil? ? v : send(*a, v)} # r
when Array then return (a3 = a.pop).map{ |v| v.nil? ? v : send(*a, v)} # r
.
331,332d
321,329c
def method_missing(*a)
.
319d
285c
# (2 != a[0] && 7 < a[2].size ? ' ' : ' ')}#{a[3].to_xeh}"
([' ', ' '][(0 <=> a[2].size - 7) >> 1])}#{a[3].to_xeh}"
.
202,205d
156a

# module M__CaAry_
# (
# @@ca = []
# ## @@ctr = -1
# @@m = Mutex.new
# @@ofs = MTH # + 1
# )
#
# def initialize(a = [], id = 0, ofs = @@ofs)
# # @ca = [] # cannot set instance variable (ArgumentError)
# # @@ca[ofs + id + @@ctr += 1] = a
# @@ca[ofs + id] = a
# end
# end
#
# class CaAry_ < Array
# include M__CaAry_
# end


.
145,146c
# a[n] && yield(a[n], c) && (next a.delete_at(n)); n += 1
## (v = a[n]) && yield(v, c) && a.delete_at(n) || n += 1
(v = a[n]) && yield(v, c) && (next a.delete_at(n)); n += 1
.
126,127c
# ?i != m ? self[m.__method__(k, ?i)] : (s0 = self[0]).index(s0.assoc(k)) # self.index(idx) # q 2 #? mruby 410200
?i != m ? self[m.afl(k, ?i)] : (s0 = self[0]).index(s0.assoc(k)) # self.index(idx) # q 2
# ?i != m ? self[m.afl(k, ?i)] : loop { (s0 = self[0]).index(s0.assoc(k)) && break} # self.index(idx) # fuguai taisaku # q 2
.
83a

def getarg__(s)
?_ == s.to_s[0] ? 'getarg' << s : s # q # higokan monami-ya.mrb:60510200 mruby:70410200 : STR__GETARG , $str__getarg
end
.
46c
@@ts = 3 # = (@@rmth >> 1) + 1 # = $$ + 1 # = 68060
.
35a
STR__GETARG = 'getarg' # $str__getarg

.
28a
MTH = 1 # = 6809
.
26,27c
# NSL_ = 6309 # OSX/PPC : 20476309 ? # nanosleep()
NSL_ = 10065 # OSX/PPC : 20480065 ? # nanosleep()
# TS = 2 # = (@@rmth >> 1) + 1 # = $$ + 1 # = 68060
.
19c
:fibt].clear
.
17a
:sr0, :r0, :sr01, :r1_eq_sr01,
:s__send, :__pool, :__syms,
.
7,9c
# :ctr, :th, :th0, :th1, :sym,
:ctr, :th, :th0, :th1 , :sym, :cop,
:_ctr_s, :p, :r, :c, :fml_th_bt,
# :_ctr_s, :p, :r, :c, :fml_th_bt, :fmli,
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
日が照つてゐた 今から五億年前に ──高橋新吉

YAMAGUTIseisei

unread,
Jun 26, 2022, 11:10:20 AM6/26/22
to
1826,1827c
# if 0 <= rg.p
if rg.flge?
.
1814c
# 0 > rg.p && rg.p = ~ rg.p
# 0 > (pt = rg.p) && rg.p = ~ pt
# rg.p = ~ rg.p
rg.flgflp # flg_e
.
1812d
1809,1810c
# if 0 > rg.p &&
if rg.flgd? && (
ise[i_i_d].empty? || (0 == ise[i_i_d].hgt && 0 > ise[i_i_d][-1][i_pc]))
.
1793,1803c
# vrb "#{pc.to_xeh} #{sym} #{rg[:cop].to_xeh}" if 0 <= rg.p
# @@Vrb.s<< [1, pc, sym, rg[:cop]] if 0 <= rg.p # p
@@Vrb.s<< [1, pc, sym, rg[:cop]] if rg.flge? # p

# [(ifj.(sym) || [ifs.(sym), sym = false][0]) || # c 2 # sym hakai # bagu no moto
# pctj.pop != pc && istm.call && ! ist.(pc), # false, # c
# (next if pcoj.call) ][0] && (
[stu.call, # sym hakai # bagu no moto
(next if pcoj.call) # r
][0] && (
## ifj.call && (pctj<< 1 + pco[0] = pc) # p
# (pctj<< 1 + pco[0] = pc) if sym # p
sym && pctj<< 1 + pco[0] = pc # p
# rg.p = ~ rg.p
rg.flgflp # flg_d
.
1787c
# if pco.pop || 0 <= rg.p
if pco.pop || rg.flge?
.
1779c
(ifj.call || [ifs.call, sym = false][0]) || # sym hakai # bagu no moto
pctj.pop != pc && istm.call && ! ist.(pc) # false # c
}
.
1775a
stu = -> { # l
.
1771,1772c
# ise[i_i_s]<< [0 > rg.p ? -pcl : pcl, Rg.new(*rg.to_a)] # p # cp
ise[i_i_s]<< [rg.flgd? ? ~ pcl : pcl, Rg.new(*rg.to_a)] # p # cp
.
1768d
1761,1762d
1753,1756c
# if -pcf == rg['pc'] # cp
if ~ pcf == rg['pc'] # cp
# pfl[i_pc] = -pcf # cp
pfl[i_pc] = ~ pcf # cp
.
1750d
1744,1745c
# rg.push(:cop, stack.c = (sym = @@opf.(irep, pcl)).shift) # c
rg.push(:cop, stack.c = (sym = @@opf.(irep, pcl))[0]) # c
# rg.push(:sym, sym = sym[0])
rg.push(:sym, sym = sym[1])
.
1734,1735c
rg.pop :cop; stack.c = rg[:cop]
.
1731,1732c
# if 0 > rg.p
if rg.flgd?
# rg.pop :cop
# rg.pop :sym
# stack.c = rg[:cop]
.
1717c
# if ifj.(sym) # c
if ifj.call
.
1663c
rg['pc', -1] = rg['pc'] + rou.getarg_sbx(cop) # cp
.
1661d
1638,1639c
# ifj = ->(sy) {?J == sy.to_s[0]} # l # q
# ifs = ->(sy) {[:ENTER, :SEND, :RETURN, :NOP].include?(sy)} # l
ifj = -> {?J == sym.to_s[0]} # l # q
ifs = -> {[:ENTER, :SEND, :RETURN, :NOP].include?(sym)} # l
.
1635d
1608,1609c
# rgd &&= nil
# sl.slp 0
sl_.slp 0
.
1603,1605c
# ri ||= true == fb.resume(rgd)
ri ||= [true == fb.resume(rgd), rgd = nil][0] # .slice! higokan mruby 70410200
.
1599,1601c
# Fiber.new { |m = 1, ri = false, rf = false|
Fiber.new { |m = 1, ri = false, rf = false, sl_ = @@Slp|
.
1596d
1593c
# sl = @Slp
.
1540d
1451,1452c
# [thl[oi], vrb.(fv[oi])] : []}].lazy] #? mruby 410200 # c
[thl[oi], vrb.(fv[oi])] : []}]] # c
.
1449c
[->(oi) {[thl[oi], vrb.(imem.ta(fv[oi], cop)), thl[oi + 1], tb]}, # l # c
.
1445,1446c
# [thl[oi], vrb.(fv[oi])] : []}, # c
# ->(oi) {[thl[oi], vrb.(imem.ta(fv[oi], cop)), thl[oi + 1], tb]}] # l # c
.
1438,1439c
# [thl[oi], vrb.(fv[oi])] : []}, # c
# ->(oi) {[thl[oi], vrb.(imem.ta(fv[oi], cop)), thl[oi + 1], tb]}] # .lazy # l # c
.
1429,1432c
vrb = ->(vrb) { # l # LV__VRB
# @@Vrb.s<< [2, pc, getarg__(vrb[0]), vrb[1]] # p
vrb
.
1412c
# ini = ->(rg) { # l
ini = ->(rg = nil) { # l
.
1410a
) # .move # ? # conf.gem :github => 'miura1729/mruby-mmm'
.
1409c
pc1, fml = nil
.
1400,1407c
# tb = TB.dup
tb = (TB)
loc = @@Loc
imem = @Imem
pl = @pl
# i_lf = @idx['lf']
i_lb = imem.fmli.index('th') + 1
sl = @Slp
.
1398c
# pc1 = 1 + pcabs = pc.abs # cp
.
1396c
pc, sp, cop, sym = nil
.
1393a
(
.
1375,1384c
# f ||= c_l.plg(pc) && c_l.rslt(pc)
# f = c_l.ca(m, pc) && f
f = c_l.plg(pc) && c_l.rslt(pc) && c_l.ca(m, pc)
c_l.verb(pc)
# sl.plwt(m) {m = Fiber.yield(f)}
sl_.plwt(m) {m = Fiber.yield(f)}
.
1373c
# Fiber.new { |m = 1, f = false|
Fiber.new { |m = 1, f = false, sl_ = @Slp|
.
1370c
# sl = @Slp
.
1368d
1365c
s = Stack.new
.
1361d
1349,1350c
## vrb "#{pc.to_xeh} #{@sym} #{rs[1]} #{rs[0]}"
.
1346c
def verb(pc)
.
1342d
1337,1338c
# @f = [ji_ngq.all? || return, @ji_ngq = ji_ngq][0] # r
@f = *[(@ji_ngq = ji_ngq).all? || return] # ||= higokan ? monami-ya.mrb:60510200 mruby:70410200 # r
.
1334,1335c
# ji_ngq[0] && @s.p = pl[@i_sp].flatten[0]
ji_ngq[0] && @s.p = pl[@@i_sp].flatten[0]
# @sym ||= pl[lpl.afl('sym', ?i)].to_sym # q
@sym ||= pl[@@i_sym].to_sym
.
1327c
# r[1] = r[0] if case pl[@i_sp][0] when Array then lpl.ckth(r[1], 2) end
r[1] = r[0] if case pl[@@i_sp][0] when Array then lpl.ckth(r[1], 2) end
.
1324d
1319,1321c
# thl.each_with_index { |h, n|
(0 ... thl.size).each { |n|
# r[n] = (pl[lpl.afl(h, ?i)] || @r[n]) # q # fuguai taisaku
r[n] = (pl[lpl.afl(thl[n], ?i)] || @r[n]) # q # fuguai taisaku
.
1307,1308d
1304a
ji_ngq = [false] # , false]
.
1303d
1301c
@@i_sp ||= lpl.afl('ctr', ?i) # q
@@i_sym ||= lpl.afl('sym', ?i) # q
# thl = $mh_thl
thl = @@mh_thl
.
1283,1288c
# (@ca).force[ #? mruby 410200
# @ca.force[ #? mruby 410200
@ca[
ji_ngq[1] ? 0 : 1].call
end
.
1281d
1277,1278d
1275a
## (@ca).force[ #? mruby 410200
## @ca.force[ #? mruby 410200
# @ca[
# ji_ngq.inject(0) { |ca, v| ca = v ? 0 : 1 | ca << 1}
# ].(ji_ngq[0] && @plr.size, @r) # c

.
1268c
# @i_sp = lpl.afl('ctr', ?i) # q
.
1260c
->(sz, r) { # ji_ngq[-1]
.
1257,1258c
sz.step((ap = (ap += ap >> 1) >> 1)) { |n| plr<< lm.(s[n])} # + (ap <=> 0)) # p # c
# plr<< s.ow?(n) ? nil : lm.(isr0, s[n]) # p # c
.
1254c
# ->(sz, r) { # ji_ngq[0]
->(sz = plr.size, r = @r) { # ji_ngq[0]
.
1248,1250c
# ->(sz, r) { # f
->(sz = plr.size, r = @r) { # f
# @r = @r1 <= sz && @plr[@r1] || lm.(@r1) # c
@r = r[1] <= sz && plr[r[1]] || lm.(r[1]) # c
# @plr.clear # .slice! .pop(n) .shift(n) higokan monami-ya.mrb:60510200 mruby:70410200
plr.clear # .slice! .pop(n) .shift(n) higokan monami-ya.mrb:60510200 mruby:70410200
.
1244c
# @pl = []; @plr = []
@pl = []; plr = []
.
1239c
# @f = false; @ji_ngq = [false, false]
ap = @f = false; @ji_ngq = [ap, ap]
.
1233d
1226d
1224a
@@i_sp, @@i_sym = nil
.
1098,1099c
@s.clear; 1 < s.size && # puts(s.chop) # .chop # fuguai taisaku (osx/ppc, freebsd8/i386)
(s.each_line { |s| puts s}; s = '') # fuguai taisaku ? (osx/ppc, freebsd8/i386)
.
1095d
1091d
1084,1085c

.
1077,1079d
1053a
def flgflp; @p = ~ @p end
# def flg_e; @p = ~ @p end
# def flg_d; @p = ~ @p end
def flge?; 0 <= @p end
def flgd?; 0 > @p end

.
863c
## fpl = delif_c(1, fpl) { |fb, n| fb.resume(pc)} # ?
.
856,857d
853c
# fpl<< self.plw(pc) if flg[0] # p
.
847c
pc && 0 <= pc && fpl<< plw(pc) # p
.
834c
# v = []
.
824d
807,815c
# r = pl_es(pc, ((kt.call ? (thi = idx + 1; 0) : idx) .. idx
r = pl_es(pc, ((kt.call ? (flg ||= mx <= idx; 0) : idx) .. idx
.
795,804c
0 < idx && ckth(th[idx], 2) && kt.call ? flg = ! ! idx -= 1 : # ji_ngq ||= plw__kt(pc) # flg ||= true
# 0 < idx && ckth(th[idx], 2) && kt.call ? idx -= 1 : # ji_ngq ||= plw__kt(pc)
(th[idx], v = s_id.(th[idx])) # if mx >= idx # && ckth(th[idx], 3) # c
.
792,793c
# (next(Fiber.yield(false); ini.call))) # fuguai taisaku ?
(next(Fiber.yield(! ini.call)))) # false # fuguai taisaku ?
.
788d
777,785c
s_id = ->(ti) { # l
## ti[0] = case a = ti[0] when Numeric then a else getarg__(a) end
# ti = [st_id([ti]), ti] #(ti), ti]
a = (ti = [st_id([ti]), ti])[0] #(ti), ti])[0]
# ti[0][1].nil? && ti[0][1] = ti[1]
a[1].nil? && a[1] = ti[1]
# ti[0]
a
.
771,772c
# fb0 = ->(m) {0 < m && Fiber.yield(false)
# th = (idx .. mx = thl.hgt).map {tb}}
fb0 = ->(m) {0 < m && Fiber.yield(false); th = [tb] * (1 + mx = thl.hgt)}
.
759,765c
# v = []
## "#{(pc - 1).to_xeh} #{getarg__(v[0])} #{v[1].to_xeh}")} # LV__VRB
.
756a
imem = @@Imem
.
739,741d
729a
# (a = st_id(a) # } # __method__(a) # } #? mruby 410200
# a.delete_at(-1) if 0 < a.hgt
# a)
.
728d
722,725d
714d
703c
# def initialize; end
.
672,673d
670d
547,549d
522,532c
def idx(*a) a[0].to_xeh end
def lbl(a) @@idb + idx(*a) end
.
477d
363d
357d
347,348d
225d
156,158c
# i.times { |c|
i.times { |fr|
# (i = a[n]) && yield(i, c) && (next a.delete_at(n)); n += 1
(i = a[n]) && yield(i, fr) && (next a.delete_at(n)); n += 1
.
154d
103d
37d
6c
:ctr, :th, :th0, :th1 , :sym, :cop, :sp, :pc,
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
日が照つてゐた 今から五億年前に ──高橋新吉



# From - Sun Apr 24 08:31:34 2022
# Date: Sun, 24 Apr 2022 08:27:10 +0000
# From: YAMAGUTIseisei <sei...@hello.to>
# Organization: NaritaSyuzanJyuku
# User-Agent: Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.8.1.17) Gecko/20080930 Thunderbird/2.0.0.17 ThunderBrowse/3.82 Mnenhy/0.7.6.0
# Newsgroups: relcom.comp.sources.d,tw.bbs.comp.sources,japan.test
# Followup-To: tw.bbs.edu.computer-science,fj.sys.x68000
# Subject: Debug ? ( Was : jit-1_-_github__ysei‾mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_4_0_4__4040220200.rb )
# In-Reply-To: <t2f2ok$e4k$1...@dont-email.me>
#
# 1098,1099c
# @s.clear; 1 < s.size && # puts(s.chop) # .chop # fuguai taisaku (osx/ppc, freebsd8/i386)
# (s.each_line { |s| puts s}; s = '') # fuguai taisaku ? (osx/ppc, freebsd8/i386)
# .
#
#
#
# --
# YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
# http://hello.to/seisei/ mailto:seisei@.68..net
# 祝 PhantomX
#
#
#
# # 1098,1099c1098,1099
# # < 1 < s.size && puts(s.chop) # fuguai taisaku (osx/ppc, freebsd8/i386)
# # < @s.clear
# # ---
# # > @s.clear; 1 < s.size && # puts(s.chop) # .chop # fuguai taisaku (osx/ppc, freebsd8/i386)
# # > (s.each_line { |s| puts s}; s = '') # fuguai taisaku ? (osx/ppc, freebsd8/i386)
#
#
#

YAMAGUTIseisei

unread,
Oct 17, 2022, 6:09:08 PM10/17/22
to
1790d
1788c
@@Vrb.vrb
.
1777d
1770d
1765c
# )
end
.
1761,1763c
# sym && pctj<< 1 + pco[0] = pc # p
sym || pctj<< 1 + pco[0] = pc # p
.
1754,1759c
# [stu.call, # sym hakai # bagu no moto
# (next if pcoj.call) # r
# ][0] && (
if [stu.call, ( # sym hakai # bagu no moto
next if pcoj.call)][0] # r
then
.
1752a
## @@Vrb.vrb
.
1751d
1743d
1730,1733c
# (ifj.call || [ifs.call, sym = false][0]) || # sym hakai # bagu no moto
ifj.call || (ifs.call || sym = false) || # sym hakai # bagu no moto
.
1728d
1724,1725c
# ise[i_i_s]<< [rg.flgd? ? ~ pcl : pcl, Rg.new(*rg.to_a)] # p # cp
ise[i_i_s]<< [rg.flgd? ? ~ pcl : pcl, rg.to_ra('pc', 'sp', :cop, :sym)] # p # cp
.
1711,1713c
# pfl[i_pc] = ~ pcf # cp
# pcf = false
pcf = ! pfl[i_pc] = ~ pcf # cp
.
1709d
1701d
1699d
1686,1688d
1684d
1669d
1589,1590d
1559,1561c
# sl_.slp 0
.
1555d
1552,1553c
# Fiber.new { |m = 1, ri = false, rf = false, sl_ = @@Slp|
Fiber.new { |m = 1, ri = false, rf = false|
.
1544,1547c
# pc = rg['pc']
# rgd = rg.dup
# rgd = rg.to_ra('pc', 'sp', :cop, :sym)
rgd = rg
pc = rgd[0]
.
1513c
args<< stack[a + i + 1] # p
# args<< stack.getarg_a(i + 1) # p
.
1495c
# callinfo.p += (callinfo[0 .. 2] = rg.to_ra('sp', 'pc') + [irep]).size
callinfo.p += (callinfo[0 .. 2] = rg.to_ra('sp', 'pc') << irep).size
.
1453,1455c
# sp = [sp].flatten
sp = [*sp]
.
1451d
1448,1449d
1445a
pl.pl_es(pc1, opg.(thi)) # c
.
1440,1444c
rg && ini.(rg) # c
.
1438c
# 0.upto(NaN) { |thi| # higokan ? mruby 70410200
.
1428d
1422d
1419d
1414,1417d
1396,1403c
fvl = [->(oi) {[:ctr, [sp]] + [[:_ctr_s, pc1], []][oi <=> 0]}, # l
.
1381d
1370d
1367,1368c
ini = ->(rg = nil) { # l
# ini = ->(pc, sp, cop, sym) { # l
.
1363,1364c
# pc1, fml = nil
pc1, pcabs, fml = nil
.
1360c
i_lb = imem.fmli.index('th') # + 1
.
1354d
1349a
# pc, sp, cop, sym = rg.to_ra('pc', 'sp', :cop, :sym)
.
1348d
1332,1336c
# f = c_l.plg(pc) && c_l.rslt(pc) && c_l.ca(m, pc)
f = c_l.plg && c_l.rslt && 0 == m && c_l.ca

## fb = fb.drop_while{|lm| f = lm.(m)}

c_l.verb # (pc)
.
1329d
1325,1326c
# c_l = Fls__l.new(loc, s, i, imem, @Rou, @pl, pc, @@Vrb)
# c_l = Fls__l.new(loc, s, i, imem, @Rou, @pl)
c_l = Fls__l.new(s, i, imem, @Rou, @pl, pc, @@Vrb)

## fb = Fb = [->(m){c_l.plg}, ->(m){c_l.rslt}, ->(m){0 == m}, ->(m){c_l.ca}]
## fb = Fb = [->{c_l.plg}, ->{c_l.rslt}, ->{c_l.ca}]

.
1308,1309c
## @@Vrb.vrb "#{@pc.to_xeh} #{@sym} #{r[0].to_xeh} #{r[1].to_xeh}"
# @@Vrb.vrb [3, pc, @sym, *@rs.reverse] # p
@@Vrb.s<< [3, @pc, @sym, *@r] # p
.
1305c
def verb # (pc)
.
1301,1302c
def plg # (pc)
# @f || ! ((@pl = @lpl.pl_g(pc + 1)).empty? && @r.empty?) # fuguai taisaku
@f || ! ((@pl = @lpl.pl_g(@pc + 1)).empty? && @r.empty?) # fuguai taisaku
.
1297,1298c
# @f = *[(@ji_ngq = ji_ngq).all? || return] # ||= higokan ? monami-ya.mrb:60510200 mruby:70410200 # r
@f ||= (@ji_ngq = ji_ngq).all? || return # r
.
1291,1295c
(ji_ngq = (@r = r).map { |r| lpl.ckth(r, 1)})[0] &&
@s.p = [sp].flatten[0]
# @sym ||= pl[@@i_sym].to_sym
.
1284,1285c
# r[1] = r[0] if case pl[@@i_sp][0] when Array then lpl.ckth(r[1], 2) end
r[1] = r[0] if case sp when Array then ji_ngq[1] = lpl.ckth(r[1], 2) end
.
1278,1279c
# r[n] = (pl[lpl.afl(thl[n], ?i)] || @r[n]) # q # fuguai taisaku
r[n] = (pl[@@i_thl[n] ||= lpl.afl(thl[n], ?i)] || @r[n]) # q # fuguai taisaku
.
1276d
1257,1259c
@sym ||= pl[lpl.afl('sym', ?i)].to_sym # q

# @@i_sp ||= lpl.afl('ctr', ?i) # q
sp = pl[@@i_sp ||= lpl.afl('ctr', ?i)][0] # q
# @@i_sym ||= lpl.afl('sym', ?i) # q
.
1249,1253c
def rslt # (pc)
pc = @pc
.
1243a
### (1 <=> @plr.size) | (ji_ngq[1] ? 0 : 1)].(@plr.size, @r) # c
.
1237,1238c
# @pr || (@pr, @sy = @imem.fml(@i_lb, @sym)
# ?_ != @pr.to_s[1] || @mt = @pr) # q
@pr || (pr, @sy = @imem.fml(@i_lb, @sym)
?_ != (@pr = pr).to_s[1] || @mt = pr) # q
.
1230,1234c
# ji_ngq && @plr.clear
.
1227,1228c
def ca # (m, pc) # (i)
# 0 == m || return
.
1223c
@i_lb = imem.fmli.index('st') # + 1
.
1210,1216c
0 == s.size ? Slp.new.slp(0) : ## @Slp.slp(0) :
# sz.step(sz + (ap = (ap += ap >> 1) >> 1)) { |n| @plr<< lm.(s[n])} # + (ap <=> 0)) # p # c
# @plr += lm.(s[sz, ap = (ap += ap >> 1) >> 1]) # c
as = s[sz, ap = (ap += ap >> 1) >> 1]
as && plr += lm.(as) # c
# plr<< s.ow?(n) ? nil : lm.(s[n]) # p # c
} # , # @rs[1] = r[0]
# ->(sz, r) { # ji_ngq[-1]
# }, # @rs[0] = r[1]
# ->(sz, r) {}
.
1206c
}, # rs = [r1, r0]
.
1204c
s[r[1]] = @sy ? [s[r[1]], _].inject(@sy) : _
.
1200,1202c
# @r = r[1] <= sz && plr[r[1]] || lm.(r[1]) # c
_ = r[1] < sz && plr[r[1]] || lm.(r[1]) # c
.
1198c
# ->(sz, r) { # f
.
1195c
# lm = ->(r1) {r1 && rou.send(@pr, @mt ? irep : s, @r[0], r1, @mt)} # l
lm = ->(r1) {rou.send(@pr, @mt ? irep : s, @r[0], r1, @mt)} # l
.
1193d
1190,1191c
ap = @@fls_m ||= (ap = 1 << @@fls_m = 3; # @@fls_mc.(3) # c
((ap += (ap <<= 1) + (ap <<= 2) + (ap << 2)) >> @@fls_m) + 1 >> 1)
.
1187d
1184c
# @pr, @sym, @mt, @r0, @r1 = nil; @r = []; @rs = [?-, ?-] # q 2
@pr, @sym, @mt = nil; @r = []
.
1182c
# @s = s; @imem = imem; @rou = rou, @lpl = lpl
@s = s; @imem = imem; @rou = rou, @lpl = lpl; @pc = pc
.
1180c
# @loc = loc
.
1176c
# def initialize(loc, s, irep, imem, rou, lpl, pc, vrb)
def initialize(s, irep, imem, rou, lpl, pc, vrb)
.
1174c
# @@i_sp, @@i_sym = nil
# @@i_sp = nil
@@i_sp, @@i_sym = nil; @@i_thl = []
.
1167,1172c
# @@fls_mc = ->(sz) {
# @@fls_m = 1 << sz
# [((@@fls_m += (@@fls_m <<= 1) + (@@fls_m <<= 2) + (@@fls_m << 2)) >> sz
# ) + 1 >> 1,
# @@fls_mc = nil][0]
# }
.
1045,1048c
s << "\n" # "\C-J" "\xa" http://techracho.bpsinc.jp/hachi8833/2018_06_21/58071
# }.chop # .chop # fuguai taisaku (osx/ppc, freebsd8/i386)
}
# )
# 0 > fr && f && break # (a ||= 0 <= fr ,,, ) || break # r # m # PUTSN:- || pc:!-
0 <= fr && f && break # (a ||= 0 <= fr ,,, ) || break # r # m # PUTSN:- || pc:!-
end
1 < s.size && # puts(s.chop) # .chop # fuguai taisaku (osx/ppc, freebsd8/i386)
(s.each_line { |s| puts s}; s = '') # fuguai taisaku ? (osx/ppc, freebsd8/i386)
# @s.clear
.
1040,1043c
a[4] && s << " #{a[4].to_xeh}"
else
s << a
end
.
1037,1038c
## 2 == a[0] && a[2] = (rou ||= ROU).getarg__(a[2]) # .chomp # fuguai taisaku ? ( freebsd8/i386 )
"#{(a[2] = (rou ||= ROU).getarg__(a[2])) << # .chomp << # fuguai taisaku ? ( freebsd8/i386 )
.
1029,1035c
until @s.empty?
# s = ''
# @s.each{ |a|
# puts(
@s.delif_c(ptn, fr){ |a| # fuguai taisaku ? ( osx/ppc, freebsd8/i386 )
case a
when Array
# sa ||= [[' ', ' '], [' ', ' ']][a[0] <=> 2]
sa ||= [' ', ' ', ' '][a[0] & 1, 2]
s << a[1].to_xeh << " " * a[0] <<
## "#{a[2]} #{a[3].to_xeh}"
.
1025,1026c
# def vrb(a = nil)
def vrb(f = true, fr = 0)
# @s.empty? && return # r

# ptn, fr = 0 > (ptn = PUTSN) ? [~ ptn, (ptn <=> -1) <=> 1] : [ptn, 0]
# # ptn : tune ni seinokazu ni naru , fr : 0 miman wa redo/delif_c
ptn = PUTSN
.
1022c
# @s = a ||= @@s ||= AryM.new
@s = a ||= AryM.new
.
976d
967d
962d
957d
952d
947d
945d
923,924c
# def rs(r = nil)
# @r = r
.
908,920d
893a
def size; @s.length - @p end

.
865,866c
s
# @s
.
855c
# attr_accessor :c, :p, :r
attr_accessor :c, :p, :r, :s
.
811,812c
# fpl = delif_c(ts, fpl) { |fb, n| fb.resume(n)}
fpl = delif_c(ts, 0, fpl) { |fb, n| fb.resume(n)}
## fpl = delif_c(1, 0, fpl) { |fb, n| fb.resume(pc)} # ?
.
794c
# sl = @@Slp
(sl = @@Slp).slp
.
785c
m = sl.plwt(m) { |n| Fiber.yield([ji_ngq][n])}
.
782c
# m = sl.plwt(m) { |n| Fiber.yield([flg || mx < thi][n])}
.
770,775d
766,767c
# r = pl_es(pc, ((kt.call ? (flg ||= mx <= idx; 0) : idx) .. idx
# r = pl_es(pc, ((kt.call && mx <= idx ? 0 : idx) .. idx # kt : ato
r = pl_es(pc, ((mx <= idx && kt.call ? 0 : idx) .. idx
.
761,762c
# 0 < idx && ckth(th[idx], 2) && kt.call ? flg = ! ! idx -= 1 : # ji_ngq ||= plw__kt(pc) # flg ||= true
0 < idx && ckth(th[idx], 2) && kt.call ? idx -= 1 : # ji_ngq ||= plw__kt(pc)
.
758,759c
# (next(Fiber.yield(! ini.call)))) # false # fuguai taisaku ?
(next Fiber.yield(! ini.call))) # false # fuguai taisaku ?
.
751d
749d
745,747c
s_id = ->(ti) { # l
## case a = ti[0] when Numeric then else ti[0] = getarg__(a) end
.
737,739c
# idx, thi, ji_ngq = (ini = -> {[idx = 0, thi = 0, ji_ngq = false]}).call # l # fuguai taisaku ? # idx = 0 ##
idx, ji_ngq = (ini = -> {[idx = 0, ji_ngq = false]}).call # l # fuguai taisaku ? # idx = 0 ##
.
731,733d
726c
# loc = @@Loc
.
712a
a = [a[1], case a = a[0] when Numeric then else getarg__(a) end].reverse # .rotate
# a[0] = a.cycle{ |a| break(case a when Numeric then else getarg__(a) end)}
# a[0] = a.cycle{ |a| break(case a when Numeric then else ROU.getarg__(a) end)}
.
702,705c
# a.delete_at(-1) if 0 < a.hgt)
# end
a
.
700c
# st_id(a)[0] # } # __method__(a) # } #? mruby 410200
a = st_id(a)[0] # } # __method__(a) # } #? mruby 410200
.
698c
# knid(a, :Array) ? # Thread.new { # TRON,BeOS,PalmOS6,Aperios,HongmengOS,1489922543/30-42#97-98 <-> Smalltalk(AlanKay,NAKAJIMA,YOKOTE,TOKORO,OTIAI,NAGAMATSU,TERAOKA,MITUZAWA,FUJINAMI,itojun),DeepConnect,PIMOS ?
knid(a, :Array) && # Thread.new { # TRON,BeOS,PalmOS6,Aperios,HongmengOS,1489922543/30-42#97-98 <-> Smalltalk(AlanKay,NAKAJIMA,YOKOTE,TOKORO,OTIAI,NAGAMATSU,TERAOKA,MITUZAWA,FUJINAMI,itojun),DeepConnect,PIMOS ?
.
694,695c
# ((TB) == a || knid(a, :Array).!) && (return a)
((TB) == a || ! knid(a, :Array)) && (return a)
.
669,670c
# 0 == md >> bfsz && break
0 == (md >>= bfsz) >> bfsz && break
# end == true
end.!.!
.
667c
# md >>= bfsz
.
525a
# unless $mh_thl
## @@m.lock
$mh_thl ||= (0 .. 1).map { |n| 'th' + n.to_xeh}
## @@m.unlock

.
516a

.
513,515c
# def initialize(idb = FL.dup) @@idb = idb end
# def idx(*a) a[0].to_xeh end
# def lbl(a) @@idb + idx(*a) end
include M__Idx
.
508c
module M__Idx
def initialize(idb = FL.dup) @@idb = idb end
def idx(*a) a[0].to_xeh end
def lbl(a) @@idb + idx(*a) end
end
.
465c
# @@fml.assoc(sym)[i_lb] + [] # fukusayou ? kaihi : mruby 70410200
@@fml.assoc(sym)[i_lb + 1] + [] # fukusayou ? kaihi : mruby 70410200
.
448,451d
439d
419a
# include M__RiteOpcodeUtil__Getarg__

.
356d
352a
## when Array then a.pop.map{ |v| v.nil? ? v : self.send(*a, v)}
.
155d
153d
144c
# def delif_c(i = @@ts, a = nil, fr = 0)
def delif_c(i = @@ts, fr = 0, a = nil)
.
56d
32a
PUTSN = 0 # = ~ 0 # = ~ 68 # = 0xbe
.
21c
# :fibt].clear # , :ji_ngq
:fibt, :FRTH].clear # , :FORTH, :FOURTH, :$DEADC0DE
.
19a
:sr0, :r0, :sr01, :r1_eq_sr01,
:s__send, :__pool, :__syms,
.
12,13d
10c
:-, :/, :*, :+, :ji_ngq,
.
7c
# :_ctr_s, :p, :r, :c, :fml_th_bt, :fmli,
:_ctr_s, :s, :p, :r, :c, :fml_th_bt, :fmli,
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net phs://081.70.5152.1104/
日が照つてゐた 今から五億年前に ──高橋新吉

YAMAGUTIseisei(MasinZenmetu)

unread,
Jan 7, 2024, 9:44:27 AM1/7/24
to
1780,1782c
# ise[i_iD].reject!.with_index { |fis, n|
# ise[i_iD].delif_c(ts) { |fis, n|
ise[i_iD].delif_c { |fis, n|
.
1773,1776c
# ise[i_iS].reject! { |pfl| # Inspired by : RobertDoggett ? http://microware.com/# , Professor TAKAZAWA Yosimitu http://mu.ice.uec.ac.jp/~takazawa/
# ise[i_iS].delif_c(ts) { |pfl, n|
ise[i_iS].delif_c { |pfl, n|
ise[i_iD]<< [pfl[i_pc], isfl(pfl[i_rg])] # p
.
1767,1768c
@sp = rg[:sp]
stack.p = rg[:sp]
.
1764,1765c
rg.shift(:pc); rg.shift(:sp); rg.shift(:cop); rg.shift(:sym)
@pc = pc = rg[:pc]
.
1745,1746c
# if rg.flgd? && (
# ise[i_iD].empty? || (0 == ise[i_iD].hgt && 0 > ise[i_iD][-1][i_pc]))
if rg.flgd? &&
ise[i_iD].empty? || (0 == ise[i_iD].hgt && 0 > ise[i_iD][-1][i_pc])
.
1741,1742c
rg.push(:pc, pc = rg[:pc, -1] + 1)
rg.push(:sp, rg[:sp, -1])
.
1735,1737c
sym && pctj<< 1 + pco[0] = pc # p # ifj.call && pctj<<
# sym || pctj<< 1 + pco[0] = pc # p # ifj.call && pctj<<
.
1708,1709c
# ifj.call || (ifs.call || sym = false) || # sym hakai # bagu no moto
ifj.call || (! sym = ! ifs.call) || # sym hakai # sym = (nifs && nifj) # bagu no moto
.
1703,1704c
ise[i_iS]<< [rg.flgd? ? ~ pcl : pcl, rg.to_ra(:pc, :sp, :cop, :sym)] # p # cp
.
1697,1698c
pfl && ise[i_iD]<< pfl # p
.
1689,1691c
if ~ pcf == rg[:pc] # cp
.
1687c
! if pfl = ise[i_iD].pop
.
1645,1647c
# rg[:sp] = @callinfo[@cp]
# rg[:sp, -1] = @callinfo[@cp]
rg[:sp, -1] = callinfo[0]
.
1639,1640c
# rg[:pc, -1] = @callinfo[@cp]
rg[:pc, -1] = callinfo[0] + 1
.
1602c
rg[:pc, -1] = rg[:pc] + rou.getarg_sbx(cop) # cp
.
1598c
# end && rg[:pc, -1] = rg[:pc] + rou.getarg_sbx(cop)
.
1578c
# ifj = -> {?J == sym.to_s[0]} # l # q
ifj = -> {?J == sym[0]} # l # q
.
1576c
rg = Rg.new([:pc, [pc]], [:sp, [@sp]], [:cop, []], [:sym, []])
.
1574c
i_iD = 0; i_iS = 1; i_pc = 0; i_rg = 1; i_fb = 1
.
1549,1550d
1544,1546c
Fiber.new { |m = 1, ri = false, rf = false, sl_ = @@Slp|
# Fiber.new { |m = 1, ri = false, rf = false|
# loop {
loop { sl_.slp 0
.
1537c
# rgd = rg.to_ra(:pc, :sp, :cop, :sym)
.
1535c
# pc = rg[:pc]
.
1508c
# @stack[rg[:sp] + a] = @stack[rg[:sp] + a].send(mid, *args)
.
1492c
rg[:pc, -1] = 0
.
1488,1489c
# rg[:sp] += a
rg[:sp, -1] = rg[:sp] + a
.
1484,1485c
# callinfo.p += (callinfo[0 .. 2] = rg.to_ra(:sp, :pc) + [irep]).size
callinfo.p += (callinfo[0 .. 2] = rg.to_ra(:sp, :pc) << irep).size
.
1477c
# callinfo[0] = rg[:pc]
.
1473c
# callinfo[0] = rg[:sp]
.
1469c
# newirep = Irep::get_irep(@stack[rg[:sp] + a], mid)
.
1437d
1432d
1361,1362c
# pc, sp, cop, sym = [rg[:pc], rg[:sp], rg[:cop], rg[:sym]]
# pc, sp, cop, sym = rg.to_ra(:pc, :sp, :cop, :sym)
.
1355d
1346,1348d
1344d
1336,1339d
1333d
1275,1278c
# case v when Array then ! v.empty? end && @@Vrb.s<< [2, pc, # *v] # p
# *v.map{|v| case v when String then v.chomp else v end}] # fuguai taisaku
case v when Array then ! v.empty? end &&
@@Vrb.s<< [2, pc, # *v] # p
*v.map{|v| case v when String then v.chomp else v end}] # fuguai taisaku
# *v.map{|v| knid(v, :String) ? @rou.getarg__(v) : v}] # otiru # fuguai taisaku
## [2, pc, *v.map{|v| knid(v, :String) ? @rou.getarg__(v) : v}] # fuguai taisaku
.
1247c
# ?_ != (@pr = pr).to_s[1] || @mt = pr) # q
?_ != (@pr = pr)[1] || @mt = pr) # q
.
1244,1245d
1225,1227d
1215,1216c
->(sz = plr.size, r = @r) { # ji_ngq[0]
.
1207,1210c
->(sz = plr.size, r = @r) { # f
# _ = r[1] < sz && plr[r[1]] || lm.(r[1]) # c
_ = plr.fetch(r[1]) { |v| (r[1] >= sz || mkt.(v)) ? lm.(r[1]) : v} # c 2
.
1205c
mkt = ->(v) {v.nil?} # v[0].nil?} # l
.
1190d
1183d
1179d
1051,1052c
# 1 < s.size && # puts(s.chop) # .chop # fuguai taisaku (osx/ppc, freebsd8/i386)
# (s.each_line { |s| puts s}; s = '') # fuguai taisaku ? (osx/ppc, freebsd8/i386)
.
1047c
## )
1 < s.size && # puts(s.chop) # .chop # fuguai taisaku (osx/ppc, freebsd8/i386)
s.each_line { |s| puts s} # fuguai taisaku ? (osx/ppc, freebsd8/i386)
.
1045c
# }.chop # fuguai taisaku (osx/ppc, freebsd8/i386)
.
1036,1038c
# "#{(a[2] = (rou ||= ROU).getarg__(a[2])) << # .chomp << # fuguai taisaku ? ( freebsd8/i386 )
# (sa[(0 <=> a[2].size - TABU1) >> 1])}#{a[3].to_xeh}"
"#{a[2] << sa[(0 <=> a[2].size - TABU1) >> 1]}#{a[3].to_xeh}"
.
1032a

2 == a[0] && a[2] = (rou ||= ROU).getarg__(a[2]) # .chomp # fuguai taisaku ? ( freebsd8/i386 )

.
1025,1027c
s = ''
## puts(
.
1023c
# s = ''
.
1011d
788,789c
# m = sl.plwt(m, 0) { |n| Fiber.yield([flg][n])}
m = sl.plwt(m, 0) { |n| Fiber.yield([ji_ngq][n])}
.
785,786d
780c
# r || (next(Fiber.yield(false); ini.call)) # fuguai taisaku ?
r || (next(Fiber.yield(false); ini.(idx))) # fuguai taisaku ? # c
.
777c
# r = pl_es(pc, ((mx <= idx && kt.call ? 0 : idx) .. idx
r = pl_es(pc, (idx - if mx <= idx && kt.call then idx end.to_i .. idx
.
775d
770d
767,768c
# (next Fiber.yield(! ini.call))) # false # fuguai taisaku ?
(next Fiber.yield(! ini.(idx)))) # false # fuguai taisaku ? # c
.
758,761c
## a = (ti = [st_id([ti]), ti])[0] #(ti), ti])[0]
ti = st_id([a = ti]) #(a = ti)
# a[1].nil? && a[1] = ti[1]
ti[1].nil? && ti[1] = a
# a
ti
.
750,751c
# idx, ji_ngq = (ini = -> {[idx = 0, ji_ngq = false]}).call # l # fuguai taisaku ? # idx = 0 ##
idx, ji_ngq = (ini = ->(i = 0) {[idx = i, ji_ngq = false]}).call # l # fuguai taisaku ? # idx = 0 ##
.
742d
726,728c
# a = [a[1], case a = a[0] when Numeric then else getarg__(a) end].reverse # .rotate
.
715,716d
710,713c
knid(a, :Array) && # Thread.new { # TRON,BeOS,PalmOS6,Aperios,HongmengOS,1489922543/30-42#97-98 <-> Smalltalk(AlanKay,NAKAJIMA,YOKOTE,TOKORO,OTIAI,NAGAMATSU,TERAOKA,MITUZAWA,FUJINAMI(,itojun)),DeepConnect,PIMOS ?
# case a when Array then # Thread.new { # TRON,BeOS,PalmOS6,Aperios,HongmengOS,1489922543/30-42#97-98 <-> Smalltalk(AlanKay,NAKAJIMA,YOKOTE,TOKORO,OTIAI,NAGAMATSU,TERAOKA,MITUZAWA,FUJINAMI(,itojun)),DeepConnect,PIMOS ? # higokan monami-ya.mrb:60510200 mruby:70410200
.
706d
699d
681d
677,679c
## md >>= bfsz; 0 == lf ? return(false) : (md &= bf if 0 == lf >> bfsz) # ? mruby 70410200 # r
.
668a
# bfsz = (a = [case th when Array then true end.!.!, tb == th]).size
.
654,657c
[(c = pl_g(0).afl('ctr', self)).shift, pl_es(0, ['ctr', c])][0] # ctr = (cta = pl_g(0).afl('ctr', self)).shift # pl_es(0, ['ctr', cta]) # ctr
.
534c
@@m.unlock
.
532c
@@m.lock
.
482a
@@m = Mutex.new

.
450,455c
def ta(l, cop) [l[0] || :_a, l[1] || cop][0 .. l[2] || 1] end
.
438c
# [:EQ, [:r1_eq_sr01 ], [[]]]
[:EQ, [:r1EQsr01 ], [[]]]
.
431c
[:LOADT, [:r0 ], [[true , '', 0 ], []]],
# [:LOADF, [:r0 ], [[false , '', 0 ], []]], # ?
.
358,359c
send(:s__send, a[1][2 .. -1], *a[2 .. -1]) # higokan mruby 70410200
## send(:s__send, a[1].to_s[2 .. -1], *a[2 .. -1])
.
340,346c
# def s__sr0( *a) a[0][ a[1]] end
# def s__r0( *a) a[1] end
# def s__sr01( *a) a[0][ a[1] + 1] end
## def s__i__r0( *a) a[0].send(a[3])[a[1]] end
# def s__send( *a) a[0].send(a[3])[a[1]] end
# def s__r1_eq_sr01(*a) a[2] &&
# a[0][a[1] + 1] == a[0][ a[2]] end
def s__sr0( *a) a[0][ a[1]] end
def s__r0( *a) a[1] end
def s__sr01( *a) a[0][ a[1] + 1] end
# def s__i__r0( *a) a[0].send(a[3])[ a[1]] end
def s__send( *a) a[0].send(a[3])[ a[1]] end
def s__r1EQsr01(*a) a[2] &&
a[0][a[1] + 1] == a[0][ a[2]] end
.
259,261c
# def plwt(m = 1)
def plwt(m = 1, sl = nil)
sl && slp(sl)
.
235a
# (( NSL_ + (NSL_ >> 5)) >> 8) + 2 >> 2 # 16+ bit MPU
.
230,231d
157c
# (i = a[n]) && yield(i, fr) && (next a.delete_at(n)); n += 1
# a[-1 + n += 1] && yield(a[n - 1], fr) && a.delete_at(n -= 1)
(i = a[-1 + n += 1]) && yield(i, fr) && a.delete_at(n -= 1)
.
136,138c
## ?i != m ? self[m.__method__(k, ?i)] : (s0 = self[0]).index(s0.assoc(k)) # self.index(idx) # q 2 #? mruby 410200
# ?i != m ? self[m.afl(k, ?i)] : (s0 = self[0]).index(s0.assoc(k)) # self.index(idx) # q 2
## ?i != m ? self[m.afl(k, ?i)] : loop { (s0 = self[0]).index(s0.assoc(k)) && break} # self.index(idx) # fuguai taisaku # q 2
?i != m ? self[m.afl(k, ?i)] : # .__method__(k, ?i)] : #? mruby 410200 # q 2
(s0 = self[0]).index(s0.assoc(k)) # self.index(idx)
# loop {(s0 = self[0]).index(s0.assoc(k)) && break} # self.index(idx) # fuguai taisaku
.
60a

module M__Symbol
def [](n) self.to_s[n] end
def <<(s) (self.to_s << s.to_s) # .to_sym
end
end

class Object # class Symbol # .:mrblib:irep.rb ?
include M__Symbol
end

.
5c
((((((((( [ # Thread.new { [
.



--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seiseiATx68k.net phs://81.70.5152.1104/
まーへゃぁ字ぃがよー見えーせんくなってまったでかんわ ( 老い先 )
0 new messages