Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
09.10.2023, 09:24
|
|||
---|---|---|---|
|
|||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||
#18+
ссылка для скачивания https://cloud.mail.ru/public/1KND/xbMLrR7a4 Creating Gear: An interpreter written in Free Pascal using an external tree visitor pattern Jeroen de Haan гитхаб автора. там же эта книга в папке Doc https://github.com/jdehaan2014/GearLanguage/tree/master/interpreter 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. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
09.10.2023, 09:31
#40138116
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
Буду считать это своим "Coding kata". Да и просто развлечение. Даже сделал проект на гитхабе, но это скорее для бэкапа. Кое-что меняю, но по мелочи. ... |
|||||||||||||||
:
Изменено: 09.10.2023, 19:49 - Неуловимый Джо
Нравится:
Не нравится:
|
|||||||||||||||
|
09.10.2023, 11:14
|
|||
---|---|---|---|
|
|||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||
#18+
Тема перенесена отсюда https://nosql.itwrks.org/forum/topic.php?fid=16&tid=11905 тут буду писать продолжение. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
09.10.2023, 11:17
|
|||
---|---|---|---|
|
|||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||
#18+
Забыл сказать, делаю на Delphi 11.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
09.10.2023, 11:24
#40138120
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
09.10.2023, 11:35
#40138121
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
Для строк ограниченных апострофами добавлено экранирование апострофа (кавычки в таких строках считаются обычным символом). Для строк ограниченных кавычками, добавлено экранирование кавычки (апостроф в такой строке считается обычным символом). Это отсебятина, у автора строки ограничиваются только апострофами. ... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
09.10.2023, 11:44
#40138122
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
09.10.2023, 19:01
|
|||
---|---|---|---|
|
|||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||
#18+
Пользователь назначен модератором темы: Неуловимый Джо. ... |
|||
Горбатый ёж:
Пользователь назначен модератором темы: Неуловимый Джо.
Нравится:
Не нравится:
|
|||
|
09.10.2023, 19:21
|
---|
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
#18+
А что там за входной язык ? Где почитать про синтаксис ? уже нашёл https://github.com/jdehaan2014/GearLanguage/blob/master/interpreter/doc/The Gear language description.pdf ... |
:
|
|
09.10.2023, 19:28
|
|||
---|---|---|---|
|
|||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||
#18+
А что там за входной язык ? Где почитать про синтаксис ? уже нашёл https://github.com/jdehaan2014/GearLanguage/blob/master/interpreter/doc/The Gear language description.pdf Я так понимаю это самиздат, книга не опубликована. ... |
|||
:
Изменено: 09.10.2023, 19:28 - Неуловимый Джо
Нравится:
Не нравится:
|
|||
|
10.10.2023, 23:25
|
|||
---|---|---|---|
|
|||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||
#18+
Следующее наверно буду делать интерполяцию строк (я делаю не по порядку, а что хочется в текущий момент). То есть что-то вроде 'строка${5+5}продолжение строки' ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.10.2023, 21:35
#40138135
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Изменено: 11.10.2023, 22:10 - Неуловимый Джо
Нравится:
Не нравится:
|
|||||||||||||||
|
13.10.2023, 09:46
#40138143
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
14.10.2023, 00:43
#40138145
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
14.10.2023, 00:52
#40138146
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Изменено: 14.10.2023, 00:54 - Неуловимый Джо
Нравится:
Не нравится:
|
|||||||||||||||
|
14.10.2023, 14:34
#40138147
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
14.10.2023, 22:50
#40138150
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
19.10.2023, 23:30
#40138158
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
29.10.2023, 18:16
#40138191
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
Интерпретация Dictionary уже работает. С хэшами плюнул, в этом интерепретаторе всё хранится в Variant, не переделывать же сейчас всё на TObject. А с Variant 1 и '1' это одно и то же. Решил пойти по простому пути, ключом в словаре может быть только строка, все остальное будет приводиться к строке. Собственно, цель словаря в этом интерпретаторе будет только для упрощения получения данных с датасетов. Чтоб можно было обращаться примерно так Код: Delphi 1. 2.
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
05.11.2023, 16:47
#40138216
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
02.12.2023, 19:19
#40138253
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||
Интерпретатор на паскале. Делаю по книге "Creating Gear: An interpreter written in Free Pascal" с небольшими правками. |
|||||||||||||||
#18+
... |
|||||||||||||||
:
Нравится:
Не нравится:
|
|||||||||||||||
|
|
start [/forum/topic.php?fid=58&tablet=1&tid=2186854]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
171ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
381ms |
get tp. blocked users: |
2ms |
others: | 17ms |
total: | 621ms |
0 / 0 |