Революционный язык программирования: на 90% меньше кода

Запомните это имя: Simit. Этот новый язык программирования скоро будет повсюду: он требует на 90% меньше кода, чем современные языки, и способен создавать высокоточные симуляции физических процессов. 

Программисты из Массачусетского технологического, компании Adobe, Калифорнийского университета, университета Торонто, Техасского университета A&M и Техасского университета разработали новый язык программирования для симуляции физических процессов.

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

Читайте также:  Опубликованы простейшие программы для квантового компьютера IBM

При тестировании симуляции, написанные на нем, оказывались в 200 раз эффективнее, чем написанные на существовавших раньше языках симуляции. При этом код на Simit в 10 (!) раз короче, чем на других языках.

Язык может работать, как на обычных компьютерных процессорах (CPU), так и на графических (GPU), при этом код не будет нуждаться в адаптации под новую архитектуру. На GPU, к слову, код работает до 20 раз быстрее, нежели чем на CPU.

Кроме симуляций физических явлений Simit может найти себе применение в машинном обучении, анализе данных, оптимизации и робототехнике, считают разработчики. Они уже переписали на нем PageRank, при помощи которого выстраивает рейтинг важности страниц.

По материалам: www.popmech.ruhi-news.ru

Похожие статьи:

Оставить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *