Vasil
Гриб
Пульсации
Это понятно во время работы. А некий скачок во время подключения может быть? На входе
Defragmented
Anonymous
Cage
Cage
Defragmented
Cage
путаем. ща посмотрим
Есть даже каноническая книжка, за время которой создаётся компилятор классического K&G C в ассемблер
Cage
Но я чёт забыл автора
Anonymous
Anonymous
Cage
Сейчас попробую вспомнить
Defragmented
Defragmented
woddy
Defragmented
даже без оптимизаций, просто компиляция кода
Vasil
woddy
если тебе поставили задачу сделать самолет, не нужно делать боинг. вполне летают конструкции из фанеры и с двигателем от запорожца. для курсовой этого достаточно
Anonymous
Anonymous
Я не собираюсь делать что то супер масштабное
Cage
Я не собираюсь делать что то супер масштабное
Ну ты написал выше "компилятор питона" - это сложно, а если это "питонообразный синтаксически язык" и цели чтобы компилировались все коды на питоне у тебя нет, то зависит от подмножества языка которое ты выберешь для реализации
Anonymous
Захар
Захар
посоветуйте ибп
а то 2 часа назад свет офнули, а пк был включен
ну дали свет, включаю пк, а венда такая на нах - бсод
пришлось помучаться, выставить озу на хмр, она тогда начала чиниться
щас все ок
Anonymous
Ладно. Попробую ещё раз пройтись по ассемблеру. Если не получится понять то сразу буду исполнять после парсинга, без трансляции
Defragmented
Anonymous
Defragmented
Ты про медленную работу?
про огромный фронт работ. тебе нужно пролопатить тысячи страниц документации чтобы скопировать язык.
ты не можешь этого сделать за месяцы.
поэтому тебе сразу стоит определить тот узкий набор команд который ты сможешь успеть воплотить
Anonymous
базовых операций достаточно, я уже определил
Anonymous
какие именно
Defragmented
напиши очень короткую программу, на 20 строк. и сделай только ту часть языка которая встречается в этом коде.
Cage
И выбери такую часть языка чтобы грамматика была как можно проще, желательно чтобы она не требовала рекурсий при разборе
Anonymous
Defragmented
Cage
Cage
К тому же да, твой проект заведомо мёртворождённый
Anonymous
Anonymous
Почему мертворождённый?
Defragmented
Почему мертворождённый?
потому что он гарантированно никуда не приведет. потому что за 10 лет что тебе нужно чтобы скопировать язык сам язык продвинется уже дальше.
Cage
Только образовательные цели
Anonymous
Defragmented
сил 1 человека просто не достаточно чтобы даже догнать скорость изменений в языке
Anonymous
Ну я и об этом.
Например я захотел расширить язык и написать что то что не умею в образовательных целях. А у меня грубо говоря костыль на простейшие операции
Defragmented
Anonymous
Ладно. Тогда хоть что нибудь сделаю.
Cage
Ладно. Тогда хоть что нибудь сделаю.
http://linux-doc.ru/programming/assembler/book/compilers.pdf второе издание книги по созданию компиляторов, обязательно к изучению если хочешь сделать грамотно
Anonymous
Спасибо. Буду читать
Cage
Вот по первому изданию этой книги когда я был в вузе за семестр делали компилятор С
Cage
Второе не читал, но вроде всё на месте
Anonymous
да книга годная
Cage
да книга годная
Ну и если почитаешь то поймёшь что упрощение "после х в х + 1 обязательно пробел" это очень плохое, совершенно ничего не значащее упрощение
Anonymous
ну конкретно для стандартизации оно имеет свои плюсы
Anonymous
плюс я хочу реализовать такую фишку:
Anonymous
Смотря как посмотреть
Anonymous
Если посмотреть на питон то там море говнокода
Anonymous
к примеру:
Anonymous
if True: # или можно if True : ?
Anonymous
В итоге текст программ некрасивый
Anonymous
или например вызов функции print () <- зачем тут пробел? если лучше print()
Vit
Чиво ты несешь?)
Anonymous
своё видение
Cage
Питон язык довольно зрелый с богатой историей, в любом языке есть то что можно посчитать "некрасивым", а идеального языка, соответственно, не существует. Если что-то кажется тебе неправильным оно вовсе не обязательно таковым является, может ты просто не понимаешь
Vit
Красоту синтакса уже столет как автоматика наводит
Anonymous
или например пробелы или табы
Vit
Пиши хоть print. (
)
Anonymous
Vit
Ну может у тебя кот на пробел упал
Anonymous
так же например можно использовать пробелы для обозначения деклараций
Anonymous
func_name ()
Anonymous
ClassName ()
Anonymous
а для вызова уже без пробелов