В каких языках программирования типы рассматриваются как значения?
Язык программирования Zig продвигает концепцию "типы - это значения", которая кажется мне очень мощной концепцией, и мне интересно, какие другие языки программирования поддерживают эту концепцию.
Я знаю, что, например, шаблоны C++ могут использоваться для передачи типов в функцию, но типы по-прежнему отличаются от значений в C++.
1 ответ
У большинства языков сценариев есть такие, как: Python, Perl, Ruby, JavaScript, Lua. Это реже встречается с заранее скомпилированными языками, такими как C, C++, Rust, Go.
Эта функция обычно называется "типами первого класса", как видно из этого другого вопроса: что такое тип "первого класса"?