Однажды мне было нечего делать, все игры уже достали... И вместо того, чтобы заняться чем-нибудь важным я решил сделать свой язык программирования.
Цитата: "Если устал играть, начни делать свой ЯП"
Не самый умный человек
Не, ну а что... Их ведь мало ещё, нужен ещё более упоротый синтаксис, большее время выполнение, более кривой исходный код. А так как я это всё умею, то я и решил потратить на это немного (нет) времени.
Первый вопрос: Нахрена, а главное - ЗАЧЕМ?
Ответа я пока не придумал. Создаются всё новые и новые языки, но они отличаются между собой, точнее, между собой отличаются лишь более менее популярные языки. Зачем нужен клон Python? То есть нужна какая-то особенность, фишечка. НО! Фантазия у меня, как у носков, поэтому я решил, что создам основу, а потом уже буду что-то менять/добавлять/ломать.
(!) Внимание я не собираюсь делать язык на русском, это отвратительно
P.S Быстрый язык уже точно не получится, объяснение снизу
Переходим к +- содержательной (нет) части поста, в которой я отвечу на некоторые вопросы:
1. Компилятор vs Интерпретатор
Я до сих пор не особо понял, как работает компилятор, а сторонними библиотеками пользоваться не хочется, поэтому это будет интерпретатор (Именно поэтому и из-за кривых рук язык будет медленнее питона)
2. На чём?
На c++. C++ вроде достаточно быстрый, + я его хоть как-то знаю, поэтому именно на нём писать и буду.
3. Как устроен?
Всё просто (вроде)
ПЛАН:
1. Лексический анализ (получаем токены)
2. строим АСТ
3. Выполняем (проходим по АСТ, выполняем команды в нём)
5. Синтаксис?
Пока делаю с обычным синтаксисом, ничем (практически) не отличающимся от плюсов.
В мой мозг уже достаточно сильно засели плюсы, поэтому ничего нового я просто не могу придумать.
4. Как называется?
Пока никак...
Итог
Этот блог не будет иметь большой смысловой нагрузки, я не буду рассказывать какие-то сверх вещи, а просто буду публиковать новости разработки.
Если у вас есть какие-то мысли насчёт того, как должен выглядеть язык (особенно синтаксис), то я с радостью прочту их и добавлю их
1 минута
11 сентября 2022