Автор Braid и The Witness планирует начать бета-тест собственного языка программирования до конца 2018 года

Он создаёт на нём как минимум две собственных игры.

Автор Braid и The Witness планирует начать бета-тест собственного языка программирования до конца 2018 года

По словам геймдизайнера Джонатана Блоу, один из главных факторов, сдерживающих развитие игровой индустрии — это распространённость C++, языка программирования, который зародился ещё в 1970-х.

Создатель Braid и The Witness уверен, что его экосистема необоснованно сложна, и с годами становилась всё труднее для понимания, пока его создатели пытались найти решение разных задач.

Поэтому в 2014 году разработчик начал работу над заменой «поистине ужасного» C++ под названием JAI. Его цель — упростить устройство языка, повысить эффективность и «облегчить жизнь» программистам.

Люди почему-то уверены, что язык программирования обязательно должен быть некой очень сложной системой. Но мне не хочется знакомиться с экосистемой языка в течение года — я просто хочу перенести туда 3D-графику. […]

Многие из нас, программистов, — несчастные люди, а ведь так быть не должно.

Джонатан Блоу, геймдизайнер, программист

Блоу утверждает, что на данный момент с помощью JAI ему удалось увеличить продуктивность на 15%. Со временем он хочет довести этот показатель до 50 или даже 80 процентов, избавившись от необходимости постоянно «совершать ненужную работу».

Разработчик признаёт, что C++ — очень мощный инструмент, иначе бы его не использовали повсеместно. Но за долгие годы многие слишком свыклись с недостатками языка.

Вокруг подобных вещей сформировалось очень сильное предубеждение, иллюзия «статуса кво». Мы создаём игры определённым образом. Люди придумали множество новых языков программирования, но мы ими не пользуемся.

У компаний есть огромные игровые движки, менять которые слишком дорого. Я слышал пару лет назад, что игра вроде Assassin's Creed состоит из десяти миллионов строк исходного кода. Сейчас, наверное, и того больше.

Джонатан Блоу, геймдизайнер, программист

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

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

Прежде всего, я стараюсь всё упрощать. Но даже когда я начинаю вводить более сложные вещи, необходимые для работы, я каждый раз задумываюсь: «Какая именно от этого польза?»

Мы постоянно думаем о том, насколько наши игры просты в понимании для пользователей. «Как они поймут, что происходит, когда зайдут в эту комнату? Как мы можем помочь им разобраться в этом?» […]

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

Джонатан Блоу, геймдизайнер, программист

Разработчик надеется, что JAI будет достаточно мощным, чтобы на нём могли работать над AAA-играми, но в настоящее время он работает над двумя проектами, один из которых будет «промежуточным шагом» в этом направлении.

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

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

Закрытое бета-тестирование JAI собираются начать до конца 2018 года

11 показ
12K12K открытий
230 комментариев

Джонатан Блоу шикарен. У него на ютуб-канале навалом программерской крутоты, вплоть до разработки игрового движка, если кому интересно:

Ответить

Ещё один язык программирования, ага, умный и адекватный, ага :)...

Ответить
Ответить

Вот тут как раз картинка не работает. Блоу не "универсальный" язык делает, а для узкого круга задач - для геймдева.

Ответить

Вы хоть понимаете разницу между стандартом и опцией? Никто не заставляет вас пользоваться всеми языками, достаточно выбрать один. При этом в некоторых случаях продукты написанные на разных языках можно будет использовать совместно.

Ответить

Вот тут много подробностей - https://github.com/BSVino/JaiPrimer/blob/master/JaiPrimer.md
И, да, Блоу очень умный и адекватный.

Ответить

Почитал: действительно, весьма адекватный и ориентированный на результат (ускорение написания кода и улучшение производительности кода) язык. Весьма актуально в эпоху мультиплатформ, когда код надо оптимизировать под разные устройства. А тут сразу будет производительность "из коробки", тем более, что акцент на прямом управлении памятью.

Ответить