Size: a a a

Compiler Development

2021 January 19

KR

K R in Compiler Development
Defragmented Panda
ну и конкретно про libc - почему оно не умеет включать только нужные функции? это ведь можно сделать
Вы изобретаете статическую линковку?
источник

DP

Defragmented Panda in Compiler Development
ммм. что-то такое помню. не помню что оно умеет включать только нужные функции в бинарник. если умеет - хорошо
источник

BD

Berkus Decker in Compiler Development
Defragmented Panda
ммм. что-то такое помню. не помню что оно умеет включать только нужные функции в бинарник. если умеет - хорошо
ну  динамическая libc не включает в бинарник практически НИЧЕГО, статическая - только то,  что используется
источник

DP

Defragmented Panda in Compiler Development
интересно. значит я не правильно помнил. ну ок
источник

DP

Dmitry Ponyatov in Compiler Development
Arelav
Для чего? Кажется в большинстве случаев пользователь хочет решить конкретную задачу, а не писать язык/библиотеку/етс для ее решения
тема для любителей писать саморасширяемые языки, а не для пользователей

пожалуй стоило бы начать с прототипа под одну из популярных ВМ (JVM, BEAM, Squeak/PharoVM,..) или самопального интерпретатора байт-кода — проверить саму концепцию, не занимаясь битбангом (особенно в средах убивающих процессы, пытающиеся писать в .text)
источник

DP

Dmitry Ponyatov in Compiler Development
потуги с изобретением self-hosted микрокомпилятора вызывают баальшие сомнения при наличии классической кросс-разработки.
единственный узкий кейс возможно IoT когда одно устройство способно скомпилировать программу-запрос для другого устройства и послать её как сообщение — такая форма RPC точнее агентное программирование
источник

DP

Dmitry Ponyatov in Compiler Development
Defragmented Panda
что думаете про некий протоязык компилятора, который просто дает полный доступ ко всему, не ограничивая возможности. и там уже пользователь может выбрать что-то типа разных парадигм, чего-то типа языков, ну или написать свое

т.е. изначально компилятор обладает самыми минимальными возможностями, типа знает опкоды, умеет выделять память, взаимодействовать с ОС, но сам код типа обьектов и типов - не определен еще
а оценить когда уж совсем микро микро — есть такая штука как debug.exe, запустив её под wine/dosbox как "операционную систему", вполне можно оценить удобство играясь с ней с х86 кодом на 64К: редактор памяти, примитивный ассемблер, возможность запустить код, и сохранить состояние на диске в виде бинарника.
отбутстраптесь под debug до чего-то типа хотя бы Форта — должно полегчать (по собственному опыту)
источник

DP

Defragmented Panda in Compiler Development
я там уже играл, да
источник

DP

Defragmented Panda in Compiler Development
не отпустило. хотя да, форт я там не строил
источник

DP

Dmitry Ponyatov in Compiler Development
с реальным железом тоже прекрасно работает — arm-none-gdb и железка с JTAG/SWD, и ручками-ручками :)
источник

DP

Defragmented Panda in Compiler Development
Dmitry Ponyatov
с реальным железом тоже прекрасно работает — arm-none-gdb и железка с JTAG/SWD, и ручками-ручками :)
вот, да. примерно на это вся надежда. что после этого отпустит )
источник

DP

Dmitry Ponyatov in Compiler Development
кстати если свежие версии gdb собрать с нужным ключиком из исходников — можно будет даже в таком режиме интерактивный компилятор/монитор писать на встроенном Python
источник

JT

James Tevision in Compiler Development
Имеет ли смысл при посторении дерева в bison файле
Пытаться строить его прямо в GENERIC или лучше сделать промежуточное представление?
источник

A

Alex in Compiler Development
James Tevision
Имеет ли смысл при посторении дерева в bison файле
Пытаться строить его прямо в GENERIC или лучше сделать промежуточное представление?
Если предполагается что парсер будет прикручен ещё куда-то (например в llvm) то имеет. Если нет, то можно и не париться, но зависит от разбираемого языка - возможно в нём будут элементы турдновыразимые в терминах GENERIC. Тогда будет проблемно сообщения об ошибках делать или какие-либо манипуляции
источник

BD

Berkus Decker in Compiler Development
James Tevision
Имеет ли смысл при посторении дерева в bison файле
Пытаться строить его прямо в GENERIC или лучше сделать промежуточное представление?
“When in doubt —  add IR”
источник
2021 January 20

P

Parra in Compiler Development
Hi everyone!
источник

D

Dika in Compiler Development
Parra
Hi everyone!
Hello!
источник

а

а это кто in Compiler Development
Parra
Hi everyone!
Hello!
источник

P

Parra in Compiler Development
I found this group and I think it's really cool, I'm interested in compilers as well, I don't know Russian but I'll be following the group anyway. Currently I'm working on a Polyglot Runtime called MetaCall: https://github.com/metacall/core

Contributors are welcome!
источник

BD

Berkus Decker in Compiler Development
Parra
I found this group and I think it's really cool, I'm interested in compilers as well, I don't know Russian but I'll be following the group anyway. Currently I'm working on a Polyglot Runtime called MetaCall: https://github.com/metacall/core

Contributors are welcome!
Fun fun!
источник