Перейти к основному содержимому

Философия и цели Wave

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

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

Wave не рассматривает универсальность как просто способность «быть использованным во многих местах». Мы стремимся удовлетворить требования производительности, управляемости и стабильности каждого из областей, для этого сохраняем разумную конструкцию и ясные правила на уровне языка.

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

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

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

Производительность и эффективность

Wave — это язык, разработанный на основе предпосылки высокой производительности. Компилятор и модель исполнения нацелены на генерацию оптимизированного кода, поддерживая стабильное производительность на различных платформах.

Единым языком мы хотим обеспечить согласованные характеристики производительности как для высокоуровневых областей, таких как веб-приложения, так и для критичных к производительности областей, таких как операционные системы или системное программное обеспечение.

Безопасность и обработка ошибок

Wave рассматривает безопасное программирование как важный критерий проектирования. Вещи построены таким образом, чтобы выявлять максимальное количество ошибок на этапе компиляции, минимизируя проблемы, которые могут возникнуть во время выполнения.

Наша цель обеспечить основные безопасные принципы, такие как безопасность работы с памятью и безопасность типов, при этом не жертвуя производительностью. Wave считает, что безопасность и производительность не являются противоречивыми понятиями, но могут быть достигнуты благодаря дизайну языка.

Повышение производительности разработчиков

Wave был разработан так, чтобы помочь разработчикам быстро освоить и эффективно использовать язык благодаря интуитивно понятной и согласованной грамматике.

Кроме того, благодаря богатым стандартным библиотекам и инструментам (Vex, WSON и другим), разработчики могут легче справляться со сложными задачами. Это позволяет разработчикам концентрироваться на решении проблем, а не на настройке окружения или боилерплейт-коде.

Независимость от платформы

Wave стремится быть независимым от конкретной операционной системы или окружения. Он спроектирован так, чтобы один и тот же код работал одинаково на различных операционных системах, а разработчики могли использовать свой код повторно в разных окружениях.

Такая платформа независимость является одним из важных компонентов для функционирования Wave в качестве универсального языка.

Сообщество и расширяемость

Wave — это язык, который развивается благодаря сотрудничеству с сообществом с открытым исходным кодом. Пользователи и разработчики могут свободно участвовать в расширении и улучшении функций Wave, что также является частью процесса формирования направления и завершенности языка.

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

Цели, ориентированные на будущее

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

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