Size: a a a

2021 August 18

f

for(int c; (c = getc... in ru.nim.talks
interp_methods       took 0.7221. Mips: 13.848
interp_handlers      took 0.2649. Mips: 37.755
interp_ftable        took 0.2190. Mips: 45.671
interp_cgoto_assign  took 0.1463. Mips: 68.372
interp_switch        took 0.1320. Mips: 75.752
interp_cgoto         took 0.1232. Mips: 81.159
name ............................... min time      avg time    std dv   runs
switch ........................... 130.098 ms    132.072 ms    ±1.150    x38
cgoto ............................ 121.785 ms    124.610 ms    ±0.689    x41
cgoto assign ..................... 143.118 ms    147.065 ms    ±1.887    x34
ftable ........................... 217.914 ms    220.629 ms    ±3.092    x23
handlers ......................... 262.171 ms    270.593 ms    ±5.942    x19
methods .......................... 720.390 ms    723.720 ms    ±2.584     x7
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
перевёл nimes на интерфейсы через объекты и норм
источник

f

for(int c; (c = getc... in ru.nim.talks
Сейчас проверю с арком
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
^ вот issue
источник

f

for(int c; (c = getc... in ru.nim.talks
name ............................... min time      avg time    std dv   runs
switch ........................... 127.631 ms    129.133 ms    ±0.914    x39
cgoto ............................ 125.074 ms    126.355 ms    ±1.132    x40
cgoto assign ..................... 140.268 ms    142.777 ms    ±1.637    x35
ftable ........................... 223.802 ms    228.270 ms    ±2.346    x22
handlers ......................... 872.035 ms    876.119 ms    ±4.315     x6
methods ......................... 4642.888 ms   4644.209 ms    ±1.868     x2
источник

f

for(int c; (c = getc... in ru.nim.talks
божественно
источник

VB

Vladimir Berezenko in ru.nim.talks
от yglukhov?
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
хотел, но решил без доп зависимостей
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
а так iface удобный, да
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
с iface этот PR получился бы короче
источник

VB

Vladimir Berezenko in ru.nim.talks
Ага, ты сэмулировал C-шный вариант объектов с методами. Вариант, да.
источник

VB

Vladimir Berezenko in ru.nim.talks
будет конечно сильно быстрее чем со strstr :)
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
ну streams вообще-то так же реализованы
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
хранить указатели функций в объекте
источник

VB

Vladimir Berezenko in ru.nim.talks
ну в ниме на текущий момент без вариантов.
источник

VB

Vladimir Berezenko in ru.nim.talks
Такие кунштюки можно попробовать макросами генерить, чтобы не писать руками.
источник

M(

MIT/Yardanico (alt) in ru.nim.talks
ну так iface
источник

VB

Vladimir Berezenko in ru.nim.talks
там вроде похитровывернутей, чем просто генерация и Юрий говорил что оно не работает в каких-то случаях.
источник

VB

Vladimir Berezenko in ru.nim.talks
@yardanico к слову о iface и nimx... Там весь nimx утыкан методами.. :)
источник