Size: a a a

2018 June 15

A

Alexander in TypeScript
🦉 ⁣
динамическая диспетчеризация влияет же
почти нет. Ты вынужден создать по лишней хеш-таблице на каждый тип (не экземпляр!), и всё. Проседания по быстродействию -- +1 JUMP, по памяти тоже несерьёзно
источник

А

Алексей in TypeScript
🦉 ⁣
динамическая диспетчеризация влияет же
Насколько я понимаю, она не становится медленней с увеличением глубины наследования.
источник

A

Alexander in TypeScript
не становится.
источник

A

Alexander in TypeScript
(ну, не ты вынужден, а компилятор, разумеется)
источник

🦉⁣

🦉 ⁣ in TypeScript
Alexander
почти нет. Ты вынужден создать по лишней хеш-таблице на каждый тип (не экземпляр!), и всё. Проседания по быстродействию -- +1 JUMP, по памяти тоже несерьёзно
я могу ошибаться, и поищу пруфы, но видел прожект, где это становилось проблемой (тож игровой движок)
когда наследование очень глубокое
источник

А

Алексей in TypeScript
Alexander
почти нет. Ты вынужден создать по лишней хеш-таблице на каждый тип (не экземпляр!), и всё. Проседания по быстродействию -- +1 JUMP, по памяти тоже несерьёзно
там будет даже не jump, а что-то похожее на
call [eax + 4]
источник

A

Alexander in TypeScript
🦉 ⁣
я могу ошибаться, и поищу пруфы, но видел прожект, где это становилось проблемой (тож игровой движок)
когда наследование очень глубокое
А на каком языке проект-то был?
источник

А

Алексей in TypeScript
или что-то такое
источник

JG

John Galt in TypeScript
ребята, может есть у кого на примете англоговорящее кромьюнити по ts в телеграме?
источник

А

Алексей in TypeScript
то есть условно говоря, примерно также как и вызов функции по указателю
источник

A

Alexander in TypeScript
Просто все это "почти нет" и так далее -- это про компилируемые языки (c++, c#, java, rust, ...). Всё становится НАМНОГО хуже, если мы о javascript
источник

OK

Oleg Klimakov in TypeScript
John Galt
ребята, может есть у кого на примете англоговорящее кромьюнити по ts в телеграме?
русскоговорящее не вывозит?)
источник

A

Alexander in TypeScript
Oleg Klimakov
русскоговорящее не вывозит?)
Так мы ж тут за go и плюсы =)))
источник

OK

Oleg Klimakov in TypeScript
надо переименовать чатик
источник

JG

John Galt in TypeScript
блин, а вы хороши, быстро меня раскусили
источник

OK

Oleg Klimakov in TypeScript
ide, go, c++,
источник

JG

John Galt in TypeScript
я думал сказать "спасибо", и тут же выйти красиво из чатика
источник

🦉⁣

🦉 ⁣ in TypeScript
Alexander
А на каком языке проект-то был?
плюсы
источник

А

Алексей in TypeScript
Alexander
Просто все это "почти нет" и так далее -- это про компилируемые языки (c++, c#, java, rust, ...). Всё становится НАМНОГО хуже, если мы о javascript
у JS какие-то свои оптимизации хитрые, точнее у его движков, плюс всякое наследование - это наверняка не самое медленное
источник

🦉⁣

🦉 ⁣ in TypeScript
Alexander
Просто все это "почти нет" и так далее -- это про компилируемые языки (c++, c#, java, rust, ...). Всё становится НАМНОГО хуже, если мы о javascript
в расте вообще нет проблем с наследованием
источник