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