issa-basic - язык программирования
0.0.0
Какими свойствами должен обладать язык программирования?
История создания языков программирования показала, что язык должен обладать конечным синтаксисом недопускающим расширений. Такие языки как PL/1, расширявшиеся за счёт своего синтаксиса - канули в лету. Преимущество получили только языки вроде C, имевшие необходимый синтаксический минимум и расширявшиеся за счёт библиотек.
Язык должен иметь низкий порог вхождения, чтобы обеспечить максимальный охват программистов его знающих и использующих. Это даст возможность саморекламирования языка.
В качестве основной парадигмы языка использовано ООП с трейтами вместо множественного наследования или интерфейсов, так как трейты позволяют вводить готовые методы и контролируют их перекрытие.
Для основы языка использовать BASIC - он имеет низкий порог вхождения, многие его изучали в детстве и у них остались ностальгия по мощности и простоте этого языка, повторить которую ни один из существующих языков так и не смог.
Жёсткая типизация предпочтительнее, так как является частью контрактного программирования и сама по себе тестирует программу на наличие ошибок связанных с типами.
Нужен парсер языка в AST и сериализатор из AST, как в язык, так и в другие языки, главными из которых будет C и JavaScript.
$ gem install issa-basic- data-printer
Kosmina O. Yaroslav darviarush@mail.ru
MIT License
Copyright (c) 2020 Kosmina O. Yaroslav