Skip to content

darviarush/issa-basic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME

issa-basic - язык программирования

VERSION

0.0.0

SINOPSIS

DESCRIPTION

Какими свойствами должен обладать язык программирования?

История создания языков программирования показала, что язык должен обладать конечным синтаксисом недопускающим расширений. Такие языки как PL/1, расширявшиеся за счёт своего синтаксиса - канули в лету. Преимущество получили только языки вроде C, имевшие необходимый синтаксический минимум и расширявшиеся за счёт библиотек.

Язык должен иметь низкий порог вхождения, чтобы обеспечить максимальный охват программистов его знающих и использующих. Это даст возможность саморекламирования языка.

В качестве основной парадигмы языка использовано ООП с трейтами вместо множественного наследования или интерфейсов, так как трейты позволяют вводить готовые методы и контролируют их перекрытие.

Для основы языка использовать BASIC - он имеет низкий порог вхождения, многие его изучали в детстве и у них остались ностальгия по мощности и простоте этого языка, повторить которую ни один из существующих языков так и не смог.

Жёсткая типизация предпочтительнее, так как является частью контрактного программирования и сама по себе тестирует программу на наличие ошибок связанных с типами.

Нужен парсер языка в AST и сериализатор из AST, как в язык, так и в другие языки, главными из которых будет C и JavaScript.

INSTALL

$ gem install issa-basic

REQUIREMENTS

  • data-printer

AUTHOR

Kosmina O. Yaroslav darviarush@mail.ru

LICENSE

MIT License

Copyright (c) 2020 Kosmina O. Yaroslav

About

Issa basic - язык программирования. Основная идея - оставить в языке только необходимые возможности, обрезав отвлекающие от программирования парадигмы

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors