impwx
@impwx
Разработчик

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

По аналогии с минимальным подмножеством операций, достаточных для полноты по Тьюрингу:

Существует ли минимальный набор встроенных средств для языка высокого уровня, с помощью которых можно было бы реализовать любые другие возможности, на данный момент существующие в каком-либо высокоуровневом языке?

Например, в C# есть ключевые слова async и yield return. Что должно существовать в языке, чтобы подобный функционал можно было добавить как часть стандартной библиотеки, а не встраивать в компилятор?

Мой вариант - нужны макросы, анонимные функции с замыканиями, pattern matching, обобщенные типы...
  • Вопрос задан
  • 2435 просмотров
Пригласить эксперта
Ответы на вопрос 5
gbg
@gbg
Любые ответы на любые вопросы
C++ без STL, iostreams и cstdlib - как раз то, что вы ищите.
Ответ написан
Vapaamies
@Vapaamies
В творческом кризисе
Со временем я узнаю это на практике. :-)
Ответ написан
@mamkaololosha
> Минимальное подмножество
> С++ это, мягко говоря, не минимальное подмножество. И до версии '11 в нем даже лямбда-выражений не было
Странная логика. Спращиваете про минимальное, а говорите, что по вашему С++ это даже не минимальное. Это тоже самое, что говорить, что жигули это не минимальное подмножество, ведь у него даже новейшей осветительной системы за сотни нефти нету.
Смотрите asm. Он точно минимален. Или prolog. Это тоже самое, что вы придете в минестерство финансов и будете им доказывать, что прожиточный минимум это 100к в день. Экий вы минималистичный. Хипстер небось?
Итог: минималистичный и прикладной это С и прочие haskel-lisp'ы.
Ответ написан
Странно, что никто ещё не упомянул Rust. Его разработчики как раз и ставят перед собой задачу сделать максимально простой язык с минимальным количеством сущностей. Язык активно развивается; замыкания, pattern matching и шаблонные типы в нём есть уже теперь.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы