Size: a a a

Compiler Development

2020 January 26

M

MaxGraey in Compiler Development
Михаил Бахтерев
Ну вот сажусь я решать задачу X. Как мне выбрать язык, на котором я сделаю наиболее эффективно? Сейчас даже аргумент с-runtime/без-runtime не особо работает, потому что народ научился в 5 килобайтов кода впихивать мощные сборщики мусора.
В 2-3 кб=)
источник

А⚙

Антон ⚙️ in Compiler Development
Михаил Бахтерев
Ну вот сажусь я решать задачу X. Как мне выбрать язык, на котором я сделаю наиболее эффективно? Сейчас даже аргумент с-runtime/без-runtime не особо работает, потому что народ научился в 5 килобайтов кода впихивать мощные сборщики мусора.
Для начала нужно знать альтернативы
источник

AT

Alexander Tchitchigin in Compiler Development
Разных начертаний - шрифт, блин, один и тот же!!! 😂
источник

AV

Alexander Vershilov in Compiler Development
Выделить какую-то подзадачу если ты решишь её, то оценить проект. Кажется что попытка написать планировщик была именно таким проектом, с понятным выводом, что лично тебе удобнее написать на си. С дополнительным выводом. Что возможно и другим по каким-то причинам
источник

МБ

Михаил Бахтерев in Compiler Development
Антон ⚙️
В смысле "перепутать ссылки"?
Ну в каких-нибудь вращающих деревья алгоритмах легко не туда вставить поддерево, вне зависимости от языка (если в нём нет зав. типов).
источник

МБ

Михаил Бахтерев in Compiler Development
Alexander Vershilov
Выделить какую-то подзадачу если ты решишь её, то оценить проект. Кажется что попытка написать планировщик была именно таким проектом, с понятным выводом, что лично тебе удобнее написать на си. С дополнительным выводом. Что возможно и другим по каким-то причинам
Вот! Очень даже может быть, что причины не технические, а чисто эмоциональные. И это не ice :(
источник

DP

Dmitry Ponyatov in Compiler Development
MaxGraey
У nim даже меньше пауза если верить бенчмаркам. У последних GC в Java ZGC и Shenandoah вроде как тоже не более 100 мс =) Но это все равно дофига!

внимание реклама

AssemblyScript гарантирует не более 2мс задержку для GC (в одном потоке), который кстати используется только для циклических ссылок, то есть довольно редко.
Как такое возможно, можно прочитать в этом пейпере:
https://github.com/dcodeIO/purerc/blob/master/papers/Bacon03Pure.pdf
у Nim в одном из восьми вариантов GC есть штука c GC timeout
источник

AV

Alexander Vershilov in Compiler Development
Кажется, что это решается уже общением с теми, кто верит в язык, советами ревью и доработкой кода до уровня как написал бы тот, кто заведомо имеет достаточный опыт
источник

AV

Alexander Vershilov in Compiler Development
Но тут моё мнение может быть совсем неверным
источник

AT

Alexander Tchitchigin in Compiler Development
Михаил Бахтерев
Ну вот сажусь я решать задачу X. Как мне выбрать язык, на котором я сделаю наиболее эффективно? Сейчас даже аргумент с-runtime/без-runtime не особо работает, потому что народ научился в 5 килобайтов кода впихивать мощные сборщики мусора.
Подозреваю, это тот момент, где программирование - искусство, и совершенно не наука. 😃
Но прежде всего ответ, очевидно, зависит от функции оценки эффективности.
Кроме того, исследования и разговоры "в пользу бедных" пытаются претендовать на поиск объективной истины, в то время как программирование - деятельность сугубо субъективная, поэтому личные качества и знания программиста имеют равное или даже доминирующее значение. Я серьёзно.
источник

AV

Alexander Vershilov in Compiler Development
Ещё как вариант, но дорогой, заказ proof of concept у профессиональных консультантов и попытка доработать, оценить эту работу. Кажется, что тут эмоциональная составляющая должна уменьшиться. Полностью изолировать ее не получится, пока мы не станем роботами
источник

AT

Alexander Tchitchigin in Compiler Development
Михаил Бахтерев
Вот! Очень даже может быть, что причины не технические, а чисто эмоциональные. И это не ice :(
Это норма. Нужно принять и использовать во благо.
источник

AT

Alexander Tchitchigin in Compiler Development
Alexander Vershilov
Ещё как вариант, но дорогой, заказ proof of concept у профессиональных консультантов и попытка доработать, оценить эту работу. Кажется, что тут эмоциональная составляющая должна уменьшиться. Полностью изолировать ее не получится, пока мы не станем роботами
* пока не отдадим программирование на откуп ИИ. 😃
источник

DS

Doge Shibu in Compiler Development
Alexander Tchitchigin
* пока не отдадим программирование на откуп ИИ. 😃
Так потом будет искусство в том, чтобы задать ИИ корректную спецификацию желаемой программы.

И это нисколько не проще
источник

AT

Alexander Tchitchigin in Compiler Development
Doge Shibu
Так потом будет искусство в том, чтобы задать ИИ корректную спецификацию желаемой программы.

И это нисколько не проще
Увидим. 😄
источник

DS

Doge Shibu in Compiler Development
Alexander Tchitchigin
Увидим. 😄
Ну можно сейчас поиграться с языками с refinement типами + smt солверами.

Я понимаю, что это пример чуть в сторону, но всё равно не сказать, чтобы прям кардинально процесс упрощался, когда дело доходит до сложных утверждений.
источник

AT

Alexander Tchitchigin in Compiler Development
Doge Shibu
Ну можно сейчас поиграться с языками с refinement типами + smt солверами.

Я понимаю, что это пример чуть в сторону, но всё равно не сказать, чтобы прям кардинально процесс упрощался, когда дело доходит до сложных утверждений.
AI programming будет работать вообще не так. 😃

На серьёзной ноте: с его помощью будут решаться сильно более высокоуровневые и типовые задачи. Разработка всяких костомных бизнес-приложений-интеграций типа того что сейчас делается на платформах а-ля Salesforce, SharePoint Bitrix, и т.п. Никакой разработки ОС и компиляторов, ничего такого. Ну, со временем разработка Веб-приложуль ещё подтянется, тоже без rocket science.

На более весёлой ноте, уже несколько лет как видел какой-то прототип от MIT (помнится, не могу нагуглить), который по незатейливому описанию на естественном языке генерировал каркас (текстовой) игры на Python. С более-менее вменяемой разбивкой по классам и фалам. все дела.
Похожего смог найти только вот такую феерию: https://gc.ece.vt.edu/ 😂
источник

DS

Doge Shibu in Compiler Development
Alexander Tchitchigin
AI programming будет работать вообще не так. 😃

На серьёзной ноте: с его помощью будут решаться сильно более высокоуровневые и типовые задачи. Разработка всяких костомных бизнес-приложений-интеграций типа того что сейчас делается на платформах а-ля Salesforce, SharePoint Bitrix, и т.п. Никакой разработки ОС и компиляторов, ничего такого. Ну, со временем разработка Веб-приложуль ещё подтянется, тоже без rocket science.

На более весёлой ноте, уже несколько лет как видел какой-то прототип от MIT (помнится, не могу нагуглить), который по незатейливому описанию на естественном языке генерировал каркас (текстовой) игры на Python. С более-менее вменяемой разбивкой по классам и фалам. все дела.
Похожего смог найти только вот такую феерию: https://gc.ece.vt.edu/ 😂
Ну вот в реальности получается, что пользователи все равно сами очень редко что-то настраивают в подобных системах, и вместо этого нанимают специально обученных людей
источник

AT

Alexander Tchitchigin in Compiler Development
Doge Shibu
Ну вот в реальности получается, что пользователи все равно сами очень редко что-то настраивают в подобных системах, и вместо этого нанимают специально обученных людей
Так вот вместо специально обученных людей будут "нанимать" ИИ - я об том и говорю. 😊
источник

DS

Doge Shibu in Compiler Development
Если бы пользователи могли бы сформулировать более-менее формально что они хотят, то разработчики и так не были бы нужны.
источник