Здравствуйте!
Я занимаюсь написанием более или менее божеского компилятора асма т.к. ни один из существующих меня не устраивает на 100%. Самый лучший асм на сегодня (я так думаю) — Fasm, да и тот не идеал.
О чем я собственно хочу сказать. Если кто из Вас занимался разработкой компилера и не жалеет исходников, либо у кого есть документация по анализу синтаксиса, граматике и т.д. Скиньте на мыло AquariusNet@yandex.ru Заранее большое спасибо!!!
Re: Новый компилятор АСМ
От:
Аноним
Дата:
09.05.03 13:22
Оценка:
А чем может неустраивать компилятор АСМ?
Что тебе не хватает в том, что есть?
А вообще, с точки зрения синтаксиса, язык ассемблера очень прост
и ничего специального не требует.
Здравствуйте, Аноним, Вы писали:
А>А чем может неустраивать компилятор АСМ? А>Что тебе не хватает в том, что есть?
А>А вообще, с точки зрения синтаксиса, язык ассемблера очень прост А>и ничего специального не требует.
Хорошо рассказыаю что меня лично не устраивает в существующих ассемблерах
Masm32 — большое количество высокоуровневых конструкций, кривая поддержка ООП
полный хаос в файлах дистрибудива.
Tasm32 — поддерживается Borland , неудобно язать под Win, не поддерживает
даже mmx (по крайней мере тот что у меня), отсутствует редактор кода.
FasmW — поддержка независимым программистом, тупая реализация работы с ресурсами,
общепринятые языковые конструкции типа Proc реализованы в виде макросов(излишняя незкоуровневость)
Современный ассемблер должен быть таким:
1. Поддержка всех инструкций процессора (как Fasm)
2. Иметь нормальную среду разработки под Win, встроенный мощный редактор ресурсов,
встроенный отладчик, и редактор кода.
3. реализовывать нормальное ООП на уровне языка, с наследованием, перегрузкой и т.д.
Короче говоря нужен реальный ассемблер под Win. В котором можно будет максимально просто создавать
окна, обработку событий, создавать сложные структуры классов (может даже с Пространствами имен для
совместимости с некоторыми высокоуровневыми языками). В данном случае под Ассеблером я понимаю не набор
мнемоник а целую систему разрабоки ПО.
Чувствую в мой адрес будет не мало критики типа, сумасшедший программирующий под Win на Асм.
В связи с чем я бы хотел высказать пару слов о всех технология типа .Net которыми сегодня все бредят.
Сам я начинал с VB6(чтобы там не говорили о быстродействии, сегодня это самый реальный язык для Win, Delphi
рядом с ним полная лажа)зятем был C++ (дальше чем создание Dll я его не изучал), затем (когда вышла тухнология Net
и я понял как мелкомягкие кинули всех программистов)я начал изучать АСМ. Так чот к чему я это, да к тому что АСМ
это единственный язык сегодня изучая который знания пригодятся навечно. И никто не заявит завтра что мы создаем
технологию Net++Super-Puper и все ваши знания, деньги которые вы потратили на изучение, книги засуньте себе в одно место.
Именно так получилось с Net. Когда я узнал что Basic тепер поддерживает полноценно ООП был очень доволен но когда познакомился с языком и технологией поближе я понял что настали трудные времена. Некогда творчесская работа программиста требовшая знаний, особого склада ума, творческого подхода с выходом Net переходит в разряд тупых профессий суть которой сводится к зубрению наизусть Названий более чем 6000 классов их свойств и методов. Причем никто не гарантирует что завтра Майкрософт эту технологию ошибкой я заявит о новой.
Теперь о певдо-достоинствах этой технологии. Главное чем кичатся мелкомягкие с выходом этой технологии это ВОЗМОЖНОСТЬ ПИСАТЬ ПРОГРАММУ НА РАЗНЫХ ЯЗЫКАХ. Скажите пожалуйста мно-го Вы видели программистов которые будут писать программу на разных языках с учетом того что они имеют одинаковые возможности. Если даже ПО создает группа программистов то ведь прорамма реализуется в виде dll и смысл в языковой интеграции тут же пропадает. С таким же успехом можно было сохдать dll на C и использовать ее в VB. Далее. Вы не замечали как долго загружаются даже простые программы и сколько ресурсов они жрут. Для сравнения самая простая программа на VB (состоящая из чистого окна ) занимает 14кб диска и 2MB памяти. такая же программа на Net берет 5кб диска и 7!!!Mb памяти.
И не надо мне говорить о том что оперативки сейчас имеют такой объем что это для них мелочь, иначе в вашем профессионализме можно будет усомниться. Может по этому они тянут с Windows Net, наверное тесты показали что под нее еще не придумали столько памяти (шутка). А программисты С++ вообще лажанулись, С++ .Net реализован так дерьмово что сразу отпадает охота программировать, и если так пойдет дальше то С++ могут вообще прикрыть и оставить только C# (зачем нужны 2-а одинаковых языка).
Короче нужен язык программирования (лично мне) который будет независим от фирм, корпораций и монополий. Язык который я сам смогу развивать по своему усмотрению и этот зык ASSEMBLER FOREVER!!!.
Здравствуйте, Aquarius, Вы писали:
A>Короче говоря нужен реальный ассемблер под Win. В котором можно будет максимально просто создавать A>окна, обработку событий, создавать сложные структуры классов (может даже с Пространствами имен для A>совместимости с некоторыми высокоуровневыми языками). В данном случае под Ассеблером я понимаю не набор A>мнемоник а целую систему разрабоки ПО.
Правильно и этот ассемблер называется Visual Studio.
A>Чувствую в мой адрес будет не мало критики типа, сумасшедший программирующий под Win на Асм. A>В связи с чем я бы хотел высказать пару слов о всех технология типа .Net которыми сегодня все бредят.
Интересные стрелки однако, а где связь ассемблера и .Net .
[skip] Отвлечённые рассуждения о "плохих технологиях"
Всё так плохо, всё так жутко плохо, однако кушать то хочется и поэтому "приходится"(читай: заставляют своей монополией) писать на неудобоваримой платформе, на языках с жутким синтаксисом ... Вот интересно поверхностные суждения — это признак чего
A>Короче нужен язык программирования (лично мне) который будет независим от фирм, корпораций и монополий. Язык который я сам смогу развивать по своему усмотрению и этот зык ASSEMBLER FOREVER!!!.
Тут только один вопрос: А для чего тебе такой язык ? Случайно не для того, чтобы писать программы для ОС фирмы-монополиста ?
Здравствуйте, Andir,
A>[skip] Отвлечённые рассуждения о "плохих технологиях" ... Вот интересно поверхностные суждения — это признак чего
Че ты на меня напал, я всего-лишь высказал свое мнение. Хочу заметить свое, я не пересказываю слова разных дядек,
и не смотрю на мир в розовых очках как большинство программистов(ламерков). Да в Net есть много хорошего, но и плохого там завались.
Спасибо за критику!!!
С еще большим уважением Aquarius.
Здравствуйте, <Аноним>, Вы писали:
А>Че ты на меня напал, я всего-лишь высказал свое мнение. Хочу заметить свое, я не пересказываю слова разных дядек, А>и не смотрю на мир в розовых очках как большинство программистов(ламерков).
Извиняюсь, если вдруг чем задел, просто не заметил в тех рассуждениях никакого конструктивизма.
A> Да в Net есть много хорошего, но и плохого там завались.
Боюсь, что и такое обоснование никуда не годится. Его можно применить к любому объекту этого мира.
Здравствуйте, Aquarius, Вы писали:
A>И не надо мне говорить о том что оперативки сейчас имеют такой объем что это для них мелочь, иначе в вашем профессионализме можно будет усомниться.
Именно так. Жертвуя оперативкой выигрываешь в скорости разработки, и.т.д (получаешь все то, что дает .NET). ИМХО, в большинстве случаев, лучше уж дешевая и прожорливая(в меру) программа через месяц, чем быстрая и экономная программа с той же функциональностью, но через 10 лет и в 10 раз дороже...
A>Может по этому они тянут с Windows Net, наверное тесты показали что под нее еще не придумали столько памяти (шутка).
А шо за Windows NET такой? Так раньше назывался Windows 2003.
7. О чем невозможно говорить, о том следует молчать.
Здравствуйте, WFrag, Вы писали:
WF>Здравствуйте, Aquarius, Вы писали:
A>И не надо мне говорить о том что оперативки сейчас имеют такой объем что это для них мелочь, иначе в вашем профессионализме можно будет усомниться.
WF>Именно так. Жертвуя оперативкой выигрываешь в скорости разработки, и.т.д (получаешь все то, что дает .NET). ИМХО, в большинстве случаев, лучше уж дешевая и прожорливая(в меру) программа через месяц, чем быстрая и экономная программа с той же функциональностью, но через 10 лет и в 10 раз дороже...
A>Может по этому они тянут с Windows Net, наверное тесты показали что под нее еще не придумали столько памяти (шутка).
WF>А шо за Windows NET такой? Так раньше назывался Windows 2003.
Windows .Net — новая 64 разрядная ОС основанная на платформе .Net, которую Micro$oft обещала (еще в 2001)
выпустить в свет к 2003-2004 годам и которая должна была работать на новых 64 разрядных процессорах от Intel.
Но 2003 уже наступил а операционки все нет. Неофициально это связано с заявлением Intel, о приостановке разработок процессора
т.к. это во первых нарушит совместимость со старыми процессорами во вторых они не видят в этом смысла и
будут создавать 32 разрядные пни вплоть до 2010 года. Не знаю это слухи или действительность но это то что я читал.
Здравствуйте, Aquarius, Вы писали:
A>Windows .Net — новая 64 разрядная ОС основанная на платформе .Net, которую Micro$oft обещала (еще в 2001) A>выпустить в свет к 2003-2004 годам и которая должна была работать на новых 64 разрядных процессорах от Intel.
не только... есть еще i32 Edition... тока вчера ставил... посмотрел и снес (мне необходимо иметь ISA, а его у меня для 2003 нет)... A>Но 2003 уже наступил а операционки все нет. Неофициально это связано с заявлением Intel, о приостановке разработок процессора
есть... с 28 апреля (или марта????) продается официалльно... A>т.к. это во первых нарушит совместимость со старыми процессорами во вторых они не видят в этом смысла и A>будут создавать 32 разрядные пни вплоть до 2010 года. Не знаю это слухи или действительность но это то что я читал.
слухи...
... << RSDN@Home 1.0 beta 7 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Здравствуйте, Hacker_Delphi, Вы писали:
H_D>Здравствуйте, Aquarius, Вы писали:
A>Windows .Net — новая 64 разрядная ОС основанная на платформе .Net, которую Micro$oft обещала (еще в 2001) A>выпустить в свет к 2003-2004 годам и которая должна была работать на новых 64 разрядных процессорах от Intel. H_D>не только... есть еще i32 Edition... тока вчера ставил... посмотрел и снес (мне необходимо иметь ISA, а его у меня для 2003 нет)...
В смысле ? Что за ISA ? Industrial Standart Architecture? Я Windows .NET еще не ставил, так что если есть прооблема с функционированием ISA на ней — расскажи подробнее, плз. Жизненнно важный вопрос. A>Но 2003 уже наступил а операционки все нет. Неофициально это связано с заявлением Intel, о приостановке разработок процессора
МВС
Люди слышат только те вопросы, на которые они в состоянии найти ответ. (с)
В жизни кaждoгo челoвекa бывaют приятные мoменты, кoгдa oн чувствует себя пoлным идиoтoм. Приятнoсть этих мoментoв в пoстижении истины.
Re[8]: Новый компилятор АСМ
От:
Аноним
Дата:
12.05.03 03:28
Оценка:
Здравствуйте, TK, Вы писали:
TK>Hello, "muh"
> В смысле ? Что за ISA ? Industrial Standart Architecture?
TK>Internet Security and Acceleration (ISA) Server
Полегчало Я просто за работоспособность своих драйверов под железо беспокоюсь
Здравствуйте, Aquarius, Вы писали:
A>Здравствуйте, Аноним, Вы писали:
A>Masm32 — большое количество высокоуровневых конструкций, кривая поддержка ООП A>полный хаос в файлах дистрибудива.
На мой взгляд, ООП в ассемблере — это уже изврат.
A>Tasm32 — поддерживается Borland , неудобно язать под Win, не поддерживает A>даже mmx (по крайней мере тот что у меня), отсутствует редактор кода.
Какой редактор кода нужен для асм? Ей-богу, не пойму. Сам всю жизнь юзал под ДОС-ом
— ДОС-навигатор (встроенный редактор), под виндами — FAR (встроенный редактор),
под *nix — Midnight Commander (тоже встроенный редактор). На мой взгляд,
редактор должен быть максимально простым (главное, чтоб никаких лишних символов не
вставлял).
A>FasmW — поддержка независимым программистом, тупая реализация работы с ресурсами, A>общепринятые языковые конструкции типа Proc реализованы в виде макросов(излишняя незкоуровневость)
Не скажу ничего — не работал.
A>Современный ассемблер должен быть таким: A>1. Поддержка всех инструкций процессора (как Fasm) A>2. Иметь нормальную среду разработки под Win, встроенный мощный редактор ресурсов, A>встроенный отладчик, и редактор кода. A>3. реализовывать нормальное ООП на уровне языка, с наследованием, перегрузкой и т.д.
Еще раз говорю — ассемблер, по-моему, ВООБЩЕ не должен реализовывать ООП!
A>А программисты С++ вообще лажанулись, С++ .Net реализован так дерьмово что сразу отпадает охота A>программировать, и если так пойдет дальше то С++ могут вообще прикрыть и оставить только C# (зачем нужны 2-а A>одинаковых языка).
А конкретнее можно? Что именно тебе так не понравилось в C++ .NET?
[skipped]
A>Короче нужен язык программирования (лично мне) который будет независим от фирм, корпораций и монополий. Язык который я сам смогу развивать по своему усмотрению и этот зык ASSEMBLER FOREVER!!!.
Странно, а я всегда думал, что язык ассемблера всегда зависит ТОЛЬКО от аппаратной платформы.
А теперь, в общем обо всем этом заявлении.
Это, конечно, похвально, что ты потрудился посчитать объемы программ на VB и каком-то там Net (что это за язык такой — убей, не пойму). Вот только от всего этого обилия слов отдает как-бы это так сказать... непрофессионализмом, что ли? Пойми меня правильно — я на асме программирую вот уже 7 лет и действительно считаю его лучшим языком программирования. НО! Я твердо уверен в том, что ООП нужно реализовывать на высокоуровневом языке и уж никак не на ассемблере. Ассемблер я ценю за то, что он не скрывает от меня детали, как ЯВУ. ООП же — как раз и есть сокрытие деталей. Нужен мне объект — создам структуру. Нужна виртуальная функция — добавлю в структуру указатель на нее. НО ВСЕ ЭТО ДОЛЖЕН ДЕЛАТЬ Я САМ! НЕ КОМПИЛЯТОР!
Короче говоря, ты, по-моему, выбрал не тот язык.
ЗЫ. Откровенно говоря, очень порадовало заявление о том, что C++ и C# — это одинаковые языки.