Size: a a a

Compiler Development

2020 April 05

AZ

Alexander Zaitsev in Compiler Development
Undefined Behaviour Per Second
источник

TS

Timur Safin in Compiler Development
это только C, C++ и Rust компиляторы. :)
источник

M

MaxGraey in Compiler Development
Ну еше некоторые мерят текстовыми строчками в секунду
источник

p

polunin.ai in Compiler Development
Timur Safin
это только C, C++ и Rust компиляторы. :)
эм уб может быть в любом компиляторе
источник

p

polunin.ai in Compiler Development
в с# например в unsafe {  } блоке тоже может быть УБ
источник

TS

Timur Safin in Compiler Development
polunin.ai
эм уб может быть в любом компиляторе
согласен, но некоторые как огня боятся это так сформулировать и называют как угодно, лишь бы не Undefined behavior (например, в Go документах не найдете такого)
источник

TS

Timur Safin in Compiler Development
сразу, почему-то, вспомнилась мера качества кода http://reviewthecode.blogspot.com/2016/01/wtf-per-minute-actual-measurement-for.html
(извинити)
источник

а

а это кто in Compiler Development
Timur Safin
согласен, но некоторые как огня боятся это так сформулировать и называют как угодно, лишь бы не Undefined behavior (например, в Go документах не найдете такого)
так ведь неважно как называют)
источник

M

MaxGraey in Compiler Development
А еще некоторые путают UB с IB. Если у языка есть спецификация и там четко написано что это недетерминировано и может зависить от платхормы / процессора и т д то - это UB, недетерминизм между debug и release поведением например это уже IB или особая интерпретация стандарта какой то конкретной реализацией компилятора
источник

АЕ

Артур Ефимов in Compiler Development
Сергей Лапынин
а потом с этими однопроходными компиляциями начинаются жалобы на какую-то полноту по Тьюрингу. Мол не понятно, что значит а * б и вообще все сложна. Компилятор тормозит, требует постоянно какую-то дополнительную инфу и вообще результаты работы своей кешировать не умеет.

ЦПУ, когда перешли с обработки опкодов на микрокод, стали работать почему-то быстрее.
ЦПУ, когда перешли с банальной обработки команд на конвейеризацию и предсказание ветвлений, стали работать быстрее.

Изучайте суперскалярные вычисления, их логику и вообще философию векторной обработки.
Вон - человек написал самый быстрый парсер json с использованием векторных обработок (жаль в джаве их не удастся использовать). И ведь у него почти нет ветвлений - все на арфиметике, да логике.

Если такое можно сделать на уровне символов - json, да и токенов - ANTLR, то почему подобное нельзя сделать на уровне семантики? Зачем усложнять, если можно разделить все на тривиальные задачи, которые проц будет выполнять быстрее, чем ваше однопроходное творение искусства?
«А потом с этими однопроходными компиляциями начинаются жалобы на какую-то полноту по Тьюрингу. Мол не понятно, что значит а * б и вообще все сложна. Компилятор тормозит, требует постоянно какую-то дополнительную инфу...»

Это всё никак не относится к однопроходному компилятору Оберона. Оберон полон по Тьюрингу, все выражения на нём однозначны. «Что такое а * б» понятно.

Соответственно, вы говорите о чём-то совсем другом, называя это однопроходным компилятором.

P.S. «Мгновенная» компиляция в данном контексте означает «достаточно быстрая».
источник

M

MaxGraey in Compiler Development
Артур Ефимов
«А потом с этими однопроходными компиляциями начинаются жалобы на какую-то полноту по Тьюрингу. Мол не понятно, что значит а * б и вообще все сложна. Компилятор тормозит, требует постоянно какую-то дополнительную инфу...»

Это всё никак не относится к однопроходному компилятору Оберона. Оберон полон по Тьюрингу, все выражения на нём однозначны. «Что такое а * б» понятно.

Соответственно, вы говорите о чём-то совсем другом, называя это однопроходным компилятором.

P.S. «Мгновенная» компиляция в данном контексте означает «достаточно быстрая».
«Мгновенная» компиляция в данном контексте означает «достаточно быстрая».
Это не нучно.

Я где то встречал что Оберон сам себя компилит за менее чем 1 секунда, но не скажу что за версия и чья реализвация
источник

АЕ

Артур Ефимов in Compiler Development
Там вся ОС, компилятор, текстовый редактор, графическая подсистема и драйвера компилируются на процессоре с частотой 25 МГц за 9 секунд.
источник

АЕ

Артур Ефимов in Compiler Development
Это Project Oberon
источник

а

акварель на мету in Compiler Development
Артур Ефимов
Там вся ОС, компилятор, текстовый редактор, графическая подсистема и драйвера компилируются на процессоре с частотой 25 МГц за 9 секунд.
лол
источник

а

акварель на мету in Compiler Development
ему ж сто лет
источник

а

акварель на мету in Compiler Development
что в нем достойного внимания ?
источник

а

акварель на мету in Compiler Development
на вид какой-то бейсик
источник

S

S.Atan in Compiler Development
акварель на мету
на вид какой-то бейсик
Мдяяяя.... Грустно...
источник

AT

Alexander Tchitchigin in Compiler Development
акварель на мету
ему ж сто лет
Справедливости ради, язык C и ОС Unix намного старше. 😉
источник

AT

Alexander Tchitchigin in Compiler Development
Не говоря уже про Lisp и Lisp Machines. 😂
источник