Vx: язык, который превращает ошибки памяти в ошибки компиляции
Vx – One Language, Every Chip

Vx — это язык системного программирования для гетерогенных вычислений, где память CPU, GPU, NPU и ускорителей является частью системы типов. Разыменование указателя на устройство с хоста становится ошибкой компиляции, а не segfault. Язык проверяет адресные пространства, вместимость, контракты передачи данных, линейные типы и достижимость топологии. Компилятор читает декларативный файл машины с описанием иерархии памяти и interconnect. Поддерживаются CPU, NVIDIA GPU, Apple AMX/ANE и распределённые вычисления.
Гетерогенность belongs in the type system, not in the runtime.
- pdpi
> Vx — это правильный язык для того, что должно быть корректным и быстрым на десяти видах кремния. Это не правильный язык для того, что вы всё ещё осмысливаете.
Немного не в тему, но я очень *очень* ценю, что они провели это различие, и хотел бы, чтобы больше людей так делали. Слишком многие инструменты пытаются рекламировать себя как всё для всех, угождая всем сценариям использования, и это никому не помогает.
- dreamoffire
«Я хочу лучший язык программирования! Посмотрите, что людям нравится в Rust, Mojo и Zig, и придумайте для него спецификации!
О, и не забудьте, что нужно думать о будущем… Убедитесь, что мы можем работать на GPU.
Постарайтесь не звучать слишком по-LLM-овски.
Не облажайтесь.»
Удачи, что ли.
- jack_h
Мне вспоминается ряд критических замечаний, появлявшихся на протяжении многих лет, таких как «C — не низкоуровневый язык: ваш компьютер — не быстрый PDP-11» и другие, которые я сейчас не могу припомнить. По сути, наши «низкоуровневые» языки предназначены для работы на абстрактной машине, которая мало изменилась с 70-х, в то время как реальное оборудование, которое они должны абстрагировать, стало невероятно сложным. Простой пример: подумайте, сколько языков программирования имеют простую поддержку SIMD без спуска к интринсикам компилятора или опоры на оптимизатор.
Я на самом деле создавал некоторые экспериментальные DSL-встраивания вокруг этой идеи, так как нахожу эту область увлекательной. Пробегая по документации Vx, кажется, что он переносит часть абстрактной машины в систему типов для большей гибкости.
- yewenjie
Почему у меня от этого вайб Vlang?
- png732
Есть ли предыстория того, почему это назвали Vx? Кажется, немного слишком близко для комфорта к ОС VxWorks, хотя, похоже, связи нет.