powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
17 сообщений из 42, страница 2 из 2
Новые книги
    #504085
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
я еще ту, по асинрону не дочитал, отвлекся на художественную )
...
Рейтинг: 0 / 0
Новые книги
    #504087
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Блин, времени нет позаниматься по книжкам.
Интерпретатор реально интересно, просто для развлечения.
Но работаю пока на двух работах, и выходные заняты.
Остается просто вечерами читать, без практики.
...
Рейтинг: 0 / 0
Новые книги
    #504163
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Сайт с новыми книгами (правда без ссылок для скачивания).
https://delphi-books.com/en/livres-par-date.html

я пока охочусь за этой (трехтомник)
Картинка
...
Рейтинг: 0 / 0
Новые книги
    #509317
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
...
Рейтинг: 0 / 0
Новые книги
    #511669
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Неуловимый Джо  11.08.2023, 00:40
[игнорируется]
Не совсем новая (2019), но любопытно.

ссылка для скачивания
https://cloud.mail.ru/public/1KND/xbMLrR7a4

Creating Gear: An interpreter written in Free Pascal using an external tree visitor pattern
Jeroen de Haan

This is a no-nonsense book about creating an interpreted programming language, named “Gear”, using an external visitor pattern. Why Gear? No particular reason, I just like the sound of it…
In this book I won’t describe a lot of theory, as there are plenty of good books out there. As a matter of fact, I do recommend reading a few of them, such as:

- Writing Compilers and Interpreters, A software emgineering approach (Ronald Mak)

- Language Implementation Patterns (Terence Parr)

Then, there are hands-on websites/blogs that describe and create an interpreter on-the-go:

- Let’s build a simple interpreter (https://ruslanspivak.com/lsbasi-part1/) (Ruslan Spivak)

- Crafting Interpreters (http://craftinginterpreters.com) (Bob Nystrom)

These books/blogs use Java or Python as programming language.

The code in this book is based on the programming language Object Pascal, a modern pascal version, and the free downloadable IDE ‘Lazarus’. Lazarus/Free Pascal is available for Windows, Linux, OSX, and many other Operatig Systems. It’s slogan is: ‘Write once, compile anywhere’! The website and download links are available at: http://www.lazarus-ide.org/index.php. For this book I use version 2.0.4 (or later) of Lazarus and version 3.04 (or later) of Free Pascal.
Понял я что не так с этой книгой.
Она предплагает, что вы уже умеете делать интерпретаторы, просто захотели сделать еще один на паскале.

Я сейчас начал делать интерпретатор по этой книге, там с азов, и вообще по максимуму упрощенно.
Единственно недостаток что на GO.
Я переделываю на c# (хотя шарп тоже не особо знаю).

https://cloud.mail.ru/public/8S4m/Xty73Rd3s
Снимок.PNG
...
Изменено: 20.08.2023, 15:14 - Неуловимый Джо
Рейтинг: 0 / 0
Новые книги
    #511681
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
разбираю выражение
let five = 5;

до чисел еще не добрался )
вывод пар ТипТокена + литерал.
Снимок.PNG
...
Рейтинг: 0 / 0
Новые книги
    #511839
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Неуловимый Джо  20.08.2023, 15:18
[игнорируется]
до чисел еще не добрался
Добрался :)
Снимок.PNG
Снимок2.PNG
...
Рейтинг: 0 / 0
Новые книги
    #511877
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
чьорт, тело функции пропустил в исходном коде.
...
Рейтинг: 0 / 0
Новые книги
    #511925
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
так лучше
Снимок.PNG
...
Рейтинг: 0 / 0
Новые книги
    #512249
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Заглядываю сейчас время от времени в книжку интерпретатор на паскале, сравнить как там то или иное реализовано.
Паскаль все-таки красивый язык.

Вон как просто, и проверять вхождение обычным in.
На Go отдельные методы для подобных проверок.
Снимок.PNG
PS
пора наверно отдельную тему для интерпретаторов.
...
Изменено: 21.08.2023, 09:32 - Неуловимый Джо
Рейтинг: 0 / 0
Новые книги
    #521879
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Crafting Interpreters by Robert Nystrom
Картинка
ссылка на амазон https://www.amazon.com/Crafting-Interpreters-Robert-Nystrom/dp/0990582930

Вот эту книгу прям очень хвалят.
На Java делает сначала интерпретатор, а потом виртуальную машину на C.

Хорошо объясняет теорию создания интерпретаторов.
Я начал читать, хоть и продолжу на паскале пока.

ссылка для скачивания
https://cloud.mail.ru/public/mpTz/yGX3bb9ye
...
Рейтинг: 1 / 0
Нравится: Гарыныч
Новые книги
    #530034
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Букинистика :)

on Pascal Compilers

Книга 1985го года.
Как делать компиляторы на паскале, нашел ее упоминание на форуме как чуть ли не лучшую книгу по созданию компиляторов.
Картинка
ссылка на амазон https://www.amazon.com/Brinch-Hansen-Pascal-Compilers/dp/0130830984

ссылка для скачивания https://cloud.mail.ru/public/L87Q/BcobE2f4A
...
Рейтинг: 0 / 0
Новые книги
    #530040
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Комментарий об этой книге.

The best compiler book!

This is a practical book, ideal for study. If you get stuck with other compiler books, don't hesitate to buy this one.

This book is undoubtedly the best compiler book. And I think it always will be. Brinch tells you the steps of creating a Pascal-like compiler, clearly stating the correct way to get the results. You don't need a PhD to create a compiler. If you follow the book, there are numerous code examples, and there is an entire listing in the appendix. The book has no typos, the code fragments are concise and understandable, and there is no missing code.

In about 1000 lines, a non-trivial compiler can be written. You can easily adjust the code to make your compiler of choice.

Some things to be aware of:

1) The book was written in the old DOS days. This is an advantage because the author had to keep the code small while making it as powerful as possible.

2) I expected the book to teach me how to compile to a DOS native EXE program. Unfortunately, it doesn't. The book is about creating interpretive-compilers, which involve a Virtual Machine. The VM used is simple, and is stack based. If you want an executable, you can still do it. You'd just have to write code that maps the virtual machine code to a real CPU. To do that, you'd need the specs of the CPU.

3) The book doesn't use object-oriented-programming. The procedural style of the code makes for easy reading and once you understand it, you will be in a good position to create your own language (even an OO one).

4) The Virtual Machine is stack-based. This results in ease of compiler creation. Most other compiler books are more advanced and use registers instead of stacks. You only need to use registers if you want to write an optimising compiler, which this book does not teach you.

5) The book uses a top-down, recursive descent, parser. This is the best way to handcraft a compiler. Many compilers use this type of parser. They are simple enough that you can easily code them. Most books on compilers teach too much theory, especially trying to explain DFA and then telling you that it's too hard to hand-code, so you should tools like lex and yacc. I've found it much better to simply hand-code these first 2 stages. In that way, you get a perfect knowledge of its workings.

6) The best method of error-recovery is given

7) There is some formal maths but the English explanations make it understandable.

Hopefully the publishers will reprint this book. Otherwise, grab a copy asap.
...
Изменено: 07.09.2023, 10:19 - Неуловимый Джо
Рейтинг: 0 / 0
Новые книги
    #530056
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Classic work on the topic walks you through a complete implementation of a recursive descent parser.

We used this book in a compiler class many years ago along with the Dragon Book.

Personally, I found this one more useful and practical than the Dragon Book over the years.

With the Dragon Book you'll get a good survey of compilers and compiler strategies and shift reduce parsing.

With this book, it will walk you tutorial style step by step through implementation of a recursive descent parser.
...
Изменено: 07.09.2023, 10:19 - Неуловимый Джо
Рейтинг: 0 / 0
Новые книги
    #530059
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Компилятор как следующий шаг после интерпретатора )
Правда тут делается не exe файл, а создается виртуальная машина типа явы.

Вообще, интерпретатор как пет-проект классная вещь, и не сказать что слишком сложно, и в то же время затрагивает много областей языка.
Хорошо для тренировки в делфях.
...
Рейтинг: 0 / 0
Новые книги
    #530243
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Неуловимый Джо  07.09.2023, 10:09
[игнорируется]
on Pascal Compilers
с подчеркнутым могут возникнуть сложности )
Снимок.PNG
...
Рейтинг: 0 / 0
Новые книги
    #530401
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[игнорирует гостей]
Снимок.PNG
...
Рейтинг: 0 / 0
17 сообщений из 42, страница 2 из 2
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Игнорируют тему (1): erbol
Читали форум (6): Анонимы (5), Bing Bot
Пользователи онлайн (179): Кусь, Анонимы (165), s62, Умник-практикующий, Bing Bot, Yandex Bot, Разум вселенной, Biene Maja 1 мин., Буся 1 мин., XEugene 2 мин., С чистого листа 3 мин., Брюквенные годы 8 мин., Google Bot 8 мин., Antonariy 9 мин., Дед-Папыхтет 9 мин.
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]