Groups | Search | Server Info | Login | Register
Groups > relcom.comp.sources.misc > #2
| From | YAMAGUTIseisei <seisei@hello.to> |
|---|---|
| Newsgroups | relcom.comp.sources.misc, tw.bbs.comp.sources, japan.test |
| Subject | jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_4_0_4__4040220200.rb |
| Followup-To | relcom.comp.sources.d, relcom.comp.gis, relcom.comp.ai |
| Date | 2022-04-04 15:20 +0000 |
| Organization | NaritaSyuzanJyuku |
| Message-ID | <t2f2ok$e4k$1@dont-email.me> (permalink) |
| References | (30 earlier) <5DB58DA3.2040901@hello.to> <5E9C8375.8090205@hello.to> <6084B68A.2090600@hello.to> <60ED83E5.9030309@hello.to> <t0220t$931$1@dont-email.me> |
Cross-posted to 3 groups.
Followups directed to: relcom.comp.sources.d, relcom.comp.gis, relcom.comp.ai
1745d
1737,1738c
## (pctj<< 1 + pco[0] = pc) if ifj.(sym) # p # c
(pctj<< 1 + pco[0] = pc) if sym # p
.
1731,1734c
# [(ifj.(sym) || ifs.(sym)) || # c 2
[(ifj.(sym) || [ifs.(sym), sym = false][0]) || # c 2 # sym hakai # bagu no moto
.
1729c
# loc.vrb [1, pc, sym, rg[:cop]] if 0 <= rg.p
@@Vrb.s<< [1, pc, sym, rg[:cop]] if 0 <= rg.p # p
.
1719a
@@Vrb.vrb
.
1704c
# true
.
1702a
! pcf
.
1701a
pfl && ise[i_i_d]<< pfl # p
.
1699,1700c
# else
# ise[i_i_d]<< pfl # p
.
1696,1697c
# next ! (ise[i_i_d]<< pfl) # r # p
pcf = false
else
pfl = nil
.
1691c
# if pfl = ise[i_i_d].pop
! if pfl = ise[i_i_d].pop
.
1603c
# (0 > c || (sym = stack.getarg_a; [sym, ! sym][c])) &&
(0 > c || [true, false].index(stack.getarg_a) == c) &&
.
1597,1601d
1541,1543c
# m = Fiber.yield ri && rf
# (fl.resume(m.abs) && rf = true) if 0 <= m # || 0 <= pc
(fl.resume(m) && rf = true) if 0 <= m = Fiber.yield(ri && rf) # || 0 <= pc
.
1539d
1536,1537c
# ri, rf = false
# Fiber.new { |m = 1|
Fiber.new { |m = 1, ri = false, rf = false|
.
1368a
# @@Vrb.s<< [2, pc, getarg__(verb[0]), verb[1]] # p
.
1342c
# str__getarg = STR__GETARG
.
1329a
# include M__RiteOpcodeUtil__Getarg__
.
1312c
) # .move # ? # conf.gem :github => 'miura1729/mruby-mmm'
.
1309,1310c
# c_l = Fls__l.new(loc, s, i, imem, @Rou, @pl)
c_l = Fls__l.new(loc, s, i, imem, @Rou, @pl, pc, @@Vrb)
.
1292c
# @loc.vrb [3, pc, @sym, *@rs.reverse]
@@Vrb.s<< [3, pc, @sym, *@rs.reverse]
.
1280a
# @f ||= [(@ji_ngq = ji_ngq).all? || return][0] # r
.
1270,1272c
ve.call
.
1256a
ve = ->{
# case v when Array then ! v.empty? end && vrb( # [2, pc, *v])
# [2, pc, *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
## "#{(pc).to_xeh} #{getarg__(v[0])} #{v[1].to_xeh}")}
}
.
1220c
@i_lb = imem.fmli.index('st') + 1
.
1212d
1210d
1208d
1206d
1200d
1198d
1195c
@plr.clear # .slice! .pop(n) .shift(n) higokan monami-ya.mrb:60510200 mruby:70410200
.
1193d
1191d
1189a
## mkt = ->(v) {v.nil?} # v[0].nil?} # l
.
1188d
1177c
# @s = s; @imem = imem; @lpl = lpl
@s = s; @imem = imem; @rou = rou, @lpl = lpl
.
1172,1173c
# def initialize(loc, s, irep, imem, rou, lpl)
def initialize(loc, s, irep, imem, rou, lpl, pc, vrb)
@@Vrb = vrb
.
1151d
1147,1148c
# self.replace(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
.
1123a
@@Vrb = Vrb.new
.
1089,1091c
# @pl = ENVary.new(true) # 410200plini
plini(@@rmth, @pl = ENVary.new(true)) # 310200plini ?
.
1085d
1060d
1053d
1049a
module M__Vrb
@@s = nil
attr_accessor :s
def initialize(a = @@s)
@s = a ||= @@s ||= AryM.new
end
def vrb(a = nil)
@s.empty? && return # r
s = ''
@s.each{ |a|
case a
when Array
## s = [[' ', ' '], [' ', ' ']][a[0] <=> 2]
# s = [' ', ' ', ' '][a[0] & 1, 2]
# s = a[1].to_xeh << " " * a[0] <<
# sa ||= [[' ', ' '], [' ', ' ']][a[0] <=> 2]
sa ||= [' ', ' ', ' '][a[0] & 1, 2]
s << a[1].to_xeh << " " * a[0] <<
## "#{a[2]} #{a[3].to_xeh}"
# "#{a[2].to_s << (s[(0 <=> a[2].size - TABU1) >> 1])}#{a[3].to_xeh}"
# "#{a[2].to_s << (sa[(0 <=> a[2].size - TABU1) >> 1])}#{a[3].to_xeh}"
## 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 )
(sa[(0 <=> a[2].size - TABU1) >> 1])}#{a[3].to_xeh}"
a[4] && s << " #{a[4].to_xeh}"
else
# s = a
s << a
end
# puts s
s << "\n"
}
1 < s.size && puts(s.chop) # fuguai taisaku (osx/ppc, freebsd8/i386)
@s.clear
# @@Slp.slp 0
end
end
class Vrb
# include M__RiteOpcodeUtil__Getarg__
include M__Vrb
end
.
836d
829d
821a
v = []
.
820a
# m = sl.plwt(m, 0) { |n| Fiber.yield([flg || mx < thi][n])}
.
819d
815c
idx -= (idx <=> mx) >> 1 # += (mx <=> idx) + 1 >> 1
.
811,813c
# r || (next ini.call) # fuguai taisaku ?
r || (next(Fiber.yield(false); ini.call)) # fuguai taisaku ?
.
796,803c
## v[0] && ve.call
# v[0] && # (
# ve.call; v = [] # )
# r = pl_es(pc, kt.call ?
# (0 ... thi = idx + 1).flat_map { |n|
# [thl[ n ], [th[ n ]] + [[v], v = []][0]]} # .slice! higokan monami-ya.mrb:60510200 mruby:70410200
# : [thl[idx], [th[idx], [v]]])
r = pl_es(pc, ((kt.call ? (thi = idx + 1; 0) : idx) .. idx
).flat_map { |n| [thl[n], [th[n]] + [[v], v = []][0]]}) # .slice! higokan monami-ya.mrb:60510200 mruby:70410200
.
787,793c
# if 0 < idx && ckth(th[idx], 2) && kt.call # ji_ngq ||= plw__kt(pc)
# idx -= 1
# flg = true
## flg ||= true
# else
# th[idx], v = s_id(th[idx]) # if mx >= idx # && ckth(th[idx], 3)
# end
(0 < idx && ckth(th[idx], 2) && kt.call) ? # ji_ngq ||= plw__kt(pc)
(flg = ! ! idx -= 1) : # flg ||= true
(th[idx], v = s_id.(th[idx])) # if mx >= idx # && ckth(th[idx], 3) # c
.
785c
# (next ini.call)) # fuguai taisaku ?
(next(Fiber.yield(false); ini.call))) # fuguai taisaku ?
.
782a
s_id = ->(thidx) { # l
## thidx[0] = case a = thidx[0] when Numeric then a else getarg__(a) end
thidx = [st_id([thidx]), thidx] #(thidx), thidx]
thidx[0][1].nil? && thidx[0][1] = thidx[1]
thidx[0]
}
# Fiber.new { |m = 1| 0 < m && Fiber.yield(false)
Fiber.new { |m = 1| fb0.(m) # c
.
780,781c
# th = (idx .. mx = thl.hgt).map {tb}
.
778c
# Fiber.new { |m = 1| 0 < m && Fiber.yield(false)
.
773a
fb0 = ->(m) {0 < m && Fiber.yield(false)
th = (idx .. mx = thl.hgt).map {tb}}
.
770d
766c
# "#{(pc - 1).to_xeh} #{v[0].getarg} #{v[1].to_xeh}")}
# ][LV__VRB]
.
762,764c
# ve = [-> {},
# -> {loc.vrb([2, pc - 1, *v])}
.
760d
737,742c
# a = [a[1], case a = a[0] when Numeric then # nil
# else ?_ == a.to_s[0] ? 'getarg' << a : a end].reverse # .rotate # q # higokan monami-ya.mrb:60510200 mruby:70410200 : STR__GETARG , $str__getarg
# a = [a[1], case a = a[0] when Numeric then else getarg__(a) end].reverse # .rotate
.
732,733c
return [a[0], nil] if 0 >= a.hgt # r
## return a.ijr { |v| v.inject(@@imem.mcall) || v[0]} # r
.
726,730c
## knid(a, :Array) ? s_id(a) : # __method__(a) : #? mruby 410200 # heiretu : BeOS,PalmOS6,Aperios,HongmengOS,1489922543/30-42#97-98 <-> Smalltalk ( AlanKay , itojun ) ?
# case a when Array then s_id(a) else # __method__(a) else #? mruby 410200 # heiretu : BeOS,PalmOS6,Aperios,HongmengOS,1489922543/30-42#97-98 <-> Smalltalk ( AlanKay , itojun ) ? # higokan monami-ya.mrb:60510200 mruby:70410200
# a end
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
# s_id(a) # } # __method__(a) # } #? mruby 410200
st_id(a)[0] # } # __method__(a) # } #? mruby 410200
: a
# else a end
.
723c
# ((tb = TB.dup) == a || knid(a, :Array).!) && (return a)
((TB) == a || knid(a, :Array).!) && (return a)
.
720c
# def s_id(a)
def st_id(a)
.
717a
getarg__(a[0]), a[1]) end
.
715c
# *a) end
.
709a
include M__RiteOpcodeUtil__Getarg__
.
682,686d
677,679c
# def ctr_s(ctr)
def ctr_s(c)
# pl_es(0, [:ctr, ctr])
# ctr
pl_es(0, [:ctr, c])
c
.
658d
585,586d
579,580d
567,568d
537d
535c
) # .move # ? # conf.gem :github => 'miura1729/mruby-mmm'
.
529,531c
def idx(*a) a[0].to_xeh end
def lbl(a) @@idb + idx(*a) end
.
525,527c
# def idx(*a)
# a[0].to_xeh
# end
# def lbl(a)
# @@idb + idx(*a)
# end
.
479c
# include M__RiteOpcodeUtil__Getarg__
.
460d
456,458c
# def getarg__(s)
# ?_ == s.to_s[0] ? 'getarg' << s : s # q # higokan monami-ya.mrb:60510200 mruby:70410200 : STR__GETARG , $str__getarg
# end
.
427d
371,423c
# when :NOP # 何もしない
# when :MOVE # MOVE Ra, RbでレジスタRaにレジスタRbの内容をセットする
# @stack[@sp + getarg_a(cop)] = @stack[@sp + getarg_b(cop)]
# @stack[r1] = @stack[r0]
# when :LOADL # LOADL Ra, pb でレジスタRaに定数テーブル(pool)のpb番目の値をセットする
# @stack[@sp + getarg_a(cop)] = @irep.pool[getarg_bx(cop)]
# @stack[r1] = @irep[0].pool[r0]
# ops = [[['getarg_bx', cop], [sp, ['getarg_a', cop]]]]
# when :LOADI # LOADI Ra, n でレジスタRaにFixnumの値 nをセットする
# @stack[@sp + getarg_a(cop)] = getarg_sbx(cop)
# @stack[r1] = r0
# when :LOADSYM
# @stack[@sp + getarg_a(cop)] = irep.syms[getarg_bx(cop)]
# @stack[r1] = @irep[0].syms[r0]
# when :LOADSELF # LOADSELF Ra でレジスタRaに現在のselfをセットする
# @stack[@sp + getarg_a(cop)] = @stack[@sp]
# @stack[r1] = @stack[r0]
# ops = [[[sp], [sp, ['getarg_a', cop]]]]
# when :LOADT
# @stack[@sp + getarg_a(cop)] = true
# @stack[r1] = r0
# when :ADD # ADD Ra, Rb でレジスタRaにRa+Rbをセットする
# @stack[@sp + getarg_a(cop)] += @stack[@sp + getarg_a(cop) + 1]
# @stack[r1] += @stack[r0 + 1]
# ops = [[[sp, ['getarg_a', cop]]]]
# when :ADDI
# @stack[@sp + getarg_a(cop)] += getarg_c(cop)
# @stack[r1] += r0
# when :SUB
# @stack[@sp + getarg_a(cop)] -= @stack[@sp + getarg_a(cop) + 1]
# @stack[r1] -= @stack[r0 + 1]
# when :SUBI # SUB Ra, n でレジスタRaにRa-nをセットする
# @stack[@sp + getarg_a(cop)] -= getarg_c(cop)
# @stack[r1] -= r0
# when :MUL
# @stack[@sp + getarg_a(cop)] *= @stack[@sp + getarg_a(cop) + 1]
# @stack[r1] *= @stack[r0 + 1]
# when :DIV
# @stack[@sp + getarg_a(cop)] /= @stack[@sp + getarg_a(cop) + 1]
# @stack[r1] /= @stack[r0 + 1]
# when :EQ # EQ Ra でRaとR(a+1)を比べて同じならtrue, 違うならfalseをRaにセットする
# val = (@stack[@sp + getarg_a(cop)] == @stack[@sp + getarg_a(cop) + 1])
# val = @stack[r1] == @stack[r0 + 1]
# @stack[@sp + getarg_a(cop)] = val
# @stack[r1] = val
.
364a
include M__RiteOpcodeUtil__Getarg__
.
358c
## self.send(:s__send, a[1][2 .. -1], *a[2 .. -1]) # higokan mruby 70410200
# self.send(:s__send, a[1].to_s[2 .. -1], *a[2 .. -1])
# 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])
.
353,355c
# when Array then return (a3 = a.pop).map{ |v| v.nil? ? v : send(*a, v)} # r
when Array then return a.pop.map{ |v| v.nil? ? v : send(*a, v)} # r
else send(*a)
.
345,346c
# def s__r1_eq_sr01(*a) a[0][ a[1] + 1] ==
# a[0][ a[2]] end
def s__r1_eq_sr01(*a) a[2] &&
a[0][a[1] + 1] == a[0][ a[2]] end
.
330c
# LOC = Plok.new(FL << ?/ << 'lok'.sub(/lok/, 'loc') # RISC OS ? # q
# Plok.new(FL << '/' 'lok'[''] = 'loc') # RISC OS ? # higokan monami-ya.mrb:60510200 mruby:70410200
module M__RiteOpcodeUtil__Getarg__
def getarg__(s)
?_ == (s = s.to_s)[0] ? 'getarg' << s : s # q # higokan monami-ya.mrb:60510200 mruby:70410200 : STR__GETARG , $str__getarg
end
end
.
303,322d
292d
248a
# def plwt(m = 1, sl = nil)
# sl && slp(sl)
.
230c
# def initialize; @@slp = @@nsl_.force[0] end #? mruby 410200
.
212c
# @@slp = nil
.
165a
# module M__Fiber
# def yield(a)
# [super, (sl = Slp.new).slp 0][0]
# end
# end
#
# class Fiber
# include M__Fiber
# end
.
153,155c
# (v = a[n]) && yield(v, c) && (next a.delete_at(n)); n += 1
(i = a[n]) && yield(i, c) && (next a.delete_at(n)); n += 1
.
151c
# (i > fr = a.size - fr) && i = fr
((i > fr = a.size - fr) || 0 == i) && i = fr
.
38a
TABU1 = 8 - 1
.
36c
THLB = :th
#MH_THL = (0 .. 1).map { |n| 'th' << n.to_xeh}
MH_THL = (0 .. 1).map { |n| THLB.to_s << n.to_xeh}
.
30c
# TS = 3 # = (@@rmth >> 1) + 1 # = $$ + 1 # = 68060
.
18,19d
11a
:-, :/, :*, :+,
:sr0, :r0, :sr01, :r1_eq_sr01,
:s__send, :__pool, :__syms,
.
8d
6d
--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:seisei@.68..net
英断 プーチン大統領 チェルノブイリ原●離脱令
Back to relcom.comp.sources.misc | Previous | Next — Previous in thread | Find similar
jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_3_0_6__6030220200.rb YAMAGUTIseisei <seisei@hello.to> - 2022-03-06 10:14 +0000 jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_4_0_4__4040220200.rb YAMAGUTIseisei <seisei@hello.to> - 2022-04-04 15:20 +0000
csiph-web