Size: a a a

2021 April 17

f

for(int c; (c = getc... in ru.nim.talks
Если судить по тому что написано в https://github.com/nim-lang/Nim/blob/devel/compiler/ic/design.rst 60+% времени проходит именно в компиляторе нима. Но сами .с файлы генерируется по одному на модуль, так что там не будет перекомпиляции
источник

g

gavr in ru.nim.talks
у Qt управление памяти между классами по потомкам
источник

f

for(int c; (c = getc... in ru.nim.talks
Если я правильно понимаю что там происходит в С компиляторе после того как все сгенерировалось
источник

f

for(int c; (c = getc... in ru.nim.talks
Это вообще не проблема, с указателями работать в ниме можно и просто
источник

g

gavr in ru.nim.talks
и забиндить их так чтобы ARC ими также управлял?
источник

g

gavr in ru.nim.talks
освобождая если родитель сдох
источник

f

for(int c; (c = getc... in ru.nim.talks
Ну еще есть placement new которое позволит создать полностью функциональный ref на С++ класс
источник

g

gavr in ru.nim.talks
о, это хорошо
источник

g

gavr in ru.nim.talks
видимо тормаза просто изза сложности всех этих ast манипуляций и исполнении в vm
источник

f

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

g

gavr in ru.nim.talks
а? зачем
источник

f

for(int c; (c = getc... in ru.nim.talks
незачем.
источник

f

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

g

gavr in ru.nim.talks
черт
источник

f

for(int c; (c = getc... in ru.nim.talks
Ну точнее как я понимаю из-за макросов и прочего прочей магии реализовать это было не самой тривиальной задачей и поэтому просто пересобирали все
источник

f

for(int c; (c = getc... in ru.nim.talks
Хотя если не пытаться сделать все "чисто и красиво" то можно просто сделать кодогенерацию из ним макросов. Ну и вообще по сравнению с С++ шаблонами это вообще мелочи
источник

g

gavr in ru.nim.talks
хмм, пошел померить, прям печаль, это 100 строк брейнфак интерпретатора
источник

g

gavr in ru.nim.talks
холодный 2.5, сразу же перекомпиляция того что только что было 700мс, в .cache/nim появилась nim_d
источник

g

gavr in ru.nim.talks
надо бы отдельно замерить скоко времени C в nim генерируется
источник

f

for(int c; (c = getc... in ru.nim.talks
nim check для того чтобы примерно понять сколько времени именно тратится нимом
источник