LINUX.ORG.RU

Джон Кармак предлагает использовать Scheme в качестве скриптового языка Gear VR/Oculus Rift

 , , ,


1

3

Собственно, сабж: https://groups.google.com/forum/#!msg/racket-users/RFlh0o6l3Ls/8InN7uz-Mv4J .

Немножко интересных цитат от гуру геймдева:

Doing VR GUI development in the native apps is unpleasant – you can gut it out in C++ with our current interfaces, but the iteration times and code structure don’t make it a lot of fun.

This will be controversial, and I will have a longer discussion about it, but I chose Scheme (a Lisp) for the scripting language. If this all works out, we can eventually make C# and Javascript versions, but I have a bunch of reasons for going this way first. I am using Racket http://racket-lang.org/ for the PC development environment, and Chibi Scheme for the embedded interpreter on Android.

I am favoring ease of development over performance, and it definitely won’t be suitable for a lot of tasks, but everything we have done with first party apps so far should be at least a candidate for development in this style once it is mature.

I am a big believer in functional programming (and static types) for large projects, but there is an undeniable bit of awkwardness compared to just imperatively poking things for small projects. That is one of the wins for Scheme — I can make it super-easy to get easy things working, but it isn't just a «scripting language» unsuitable for large scale development. I am going to have to sort out my Racket / Chibi module strategy sometime soon, though.

The bottom line is that I have been enjoying myself working with Racket / Scheme this year, and I have evidence that it has been objectively productive for me, so I'm going out on a bit of a limb and placing a bet on it.

Вообще его понять можно, среди скриптовых языков схема наиболее приятна, но лично мне не верится, что затея взлетит - даже в списке рассылки Racket Users первые ответы были про JavaScript/JSON как более подходящие варианты. Да и сам Джон сознается, что многие «might be a little hostile to working in a Lisp».

С другой стороны, возможно мы наблюдаем начало лиспоренесанса, ВР станет рельсами для схемы, а местные борщехлебы завоюют геймдев?

Windows, Scheme, Javascript, C#... желаю проекту и его ведущим разработчикам сгореть в аду.

С другой стороны, возможно мы наблюдаем начало лиспоренесанса

Не наблюдаем.

tailgunner ★★★★★ ()

Где теги «LИSP» и «борщ FTW»?

ovk48 ★★★ ()

Гуру он был, когда производил успешные продукты. И эти продукты были не на Лиспе.

[/thread]

anonymous ()

кто-то в его возрасте играет в домино, он играет в схему. нормально все.

anonymous ()

Все правильно. Лиспы созданы для скриптоты.

anonymous ()
Ответ на: комментарий от tailgunner

Windows, Scheme, Javascript, C#... желаю проекту и его ведущим разработчикам сгореть в аду.

главное, чтобы не будон.

waker ★★★★★ ()

Кармак чем-то напоминает студента ИТ-специальности, открывающего для себя новые ЯП и восхищающегося их фичами (это ни в коем случае не оскорбительное сравнение).

Ждём теперь, когда он попробует моднейший язык Belorust, интересно, будет плеваться или нет.

CARS ★★★★ ()

а местные борщехлебы завоюют геймдев?

Очень вряд ли. Кто умеет и хочет и так проталкивает лисп, пусть и локально.

DarkEld3r ★★★★★ ()
Ответ на: комментарий от CARS

Ждём теперь, когда он попробует моднейший язык Belorust

Ну он же не скриптовый.

DarkEld3r ★★★★★ ()

Годно, тем более, что есть несколько хороших интерпретаторов для встраивания.

Javascript

Спасибо, проблевался. Лучше уж Lua какой-нибудь.

buddhist ★★★★★ ()
Ответ на: комментарий от tailgunner

Что такое будон и почему он плох?

ответ тот же, что и в прошлый раз.

waker ★★★★★ ()
Ответ на: комментарий от CARS

Кармак чем-то напоминает студента ИТ-специальности, открывающего для себя новые ЯП и восхищающегося их фичами (это ни в коем случае не оскорбительное сравнение).

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

anonymous ()
Ответ на: комментарий от waker

ответ тот же, что и в прошлый раз.

То есть его снова не стоит запоминать, окей.

tailgunner ★★★★★ ()
Ответ на: комментарий от Oxdeadbeef

динамикопетушение вообще и лисп в частности для серьезных проектов не подходит
вопрос о производительности даже не обсуждается
удел лиспа - скрипты
дефолтный лисп теперь - ракета

Был бы я общелиспером, мне бы тоже припекло.

nonimous ()
Ответ на: комментарий от nonimous

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

anonymous ()

Лисп используется в игровой индустии теми же НотиДог.

Чему бы не взлететь, guile же взлетел.

Freyr69 ★★★ ()
Последнее исправление: Freyr69 (всего исправлений: 1)
Ответ на: комментарий от nonimous

Был бы я общелиспером, мне бы тоже припекло.

Ты о чем сейчас? ;)

Как раз таки наоборот, как видно по комментаторам этого треда.

Oxdeadbeef ★★★ ()
Ответ на: комментарий от anonymous

Скоро деды помрут, и лисп всё.

Ога. ;-) то-то я смотрю везде одни недолиспы: жабаскрипты, питоны с рубями.

Oxdeadbeef ★★★ ()
Ответ на: комментарий от Freyr69

Лисп используется в игровой индустии теми же НотиДог.

уже лет 10 как не используется, с тех пор как их сони купили.

waker ★★★★★ ()
Ответ на: комментарий от waker

уже лет 10 как не используется, с тех пор как их сони купили.

Wrong. man «Last Of Us»

Oxdeadbeef ★★★ ()

Не надо приносить такие какашки на уютненький ЛОР.

anonymous ()
Ответ на: комментарий от Oxdeadbeef

недолиспы: жабаскрипты, питоны с рубями

Почему борщехлебы так любят к чужому успеху примазываться? Никакого отношения успешные промышленные языки к вашей убогой скобкоте не имеют и никогда не имели.

anonymous ()
Ответ на: комментарий от Oxdeadbeef

значит снова начали использовать. правда, непонятно в какой степени. спрошу при случае у кого-нибудь оттуда.

waker ★★★★★ ()
Ответ на: комментарий от waker

Там сборщик асетов на лиспе, в движке нет ничего с покупки сонями.

zz ★★★★ ()

Oculus Rift

Это те самые, что шindoшs-only и не нужны?

vazgen05 ★★ ()
Ответ на: комментарий от zz

Там сборщик асетов на лиспе

Прям инфа из первых рук? Я читал, что там и скриптинг тоже на нем.

Oxdeadbeef ★★★ ()
Ответ на: комментарий от waker

спрошу при случае у кого-нибудь оттуда.

Если будет инфа от самих разработчиков, незабудь запостить сюда. :)

Oxdeadbeef ★★★ ()
Ответ на: комментарий от risenshnobel

Ну целый ворох опенсорц проектов использует конфиги и скрипты на guile схем, даже thunar, вроде, а еще гимп, гикс и прочее гну.

Freyr69 ★★★ ()
Ответ на: комментарий от Oxdeadbeef

Если будет инфа от самих разработчиков, незабудь запостить сюда. :)

ок.

waker ★★★★★ ()

Почему нет, не самый плохой язык для встраивания, но где его wolfenstein на хаскеле, не осилил всё-таки?

Leron ★★ ()

Пусть хоть бейсик впиливают, рифт теперь не нужен.

ya-betmen ★★★★★ ()
Ответ на: комментарий от waker

главное, чтобы не будон.

Вот и я говорю, раби в каждый дом

melkor217 ★★★★★ ()
Ответ на: комментарий от Oxdeadbeef

один из разработчиков:

We also use C# for tools.

C# wasn't around when we selected Racket (PLT Scheme, or MzScheme at the time) for it's particular niche. Racket is particularly strong at developing languages... DSLs. We utilized this to custom build hundreds of languages, large and small, to fit the various needs of the game. Also Racket is more cross platform. Our Racket based tools run equally on Linux and Windows. Ultimately, though, Racket is more fun.

What kind of tools?

Mainly one tool... a kind of compiler generator. We would use it to create compilers for a wide range of data, including effects, animation, dialogue, sound, and gameplay scripting.

http://www.reddit.com/r/programming/comments/1gmvrb/realm_of_racket_is_finall...

anonymous ()

Кармак без Ромеры - игры на ветер

buratino ★★★★★ ()

и вообще, Джоник, ЛОР до добра не доводит...

... хотя... у него же игры про зло. ну, будут ещё злее.

buratino ★★★★★ ()
Ответ на: комментарий от buddhist

Лучше уж Lua какой-нибудь

Чем Lua «лучше» джаваскрипта?

anonymous ()
Ответ на: комментарий от waker

значит снова начали использовать. правда, непонятно в какой степени. спрошу при случае у кого-нибудь оттуда.

Oxdeadbeef

Если будет инфа от самих разработчиков, незабудь запостить сюда. :)

Кинцо Last of Us

DSL же. Движок да обвязка рендеров на C++, как всегда.

http://www.youtube.com/watch?v=Z8Xamkb-J2k
http://www.youtube.com/watch?v=oSmqbnhHp1c

---------

Но это всё шняга. Лично мне нравится Abuse - http://en.wikipedia.org/wiki/Abuse_(video_game)

Крутая и хардкорная игрушка (весьма криповатая кстати). Сделанная выходцем из id Software, чуваком который работал вместе с Кармаком.

Внутри интерпретатор лиспа: https://github.com/osgcc/abuse/blob/master/src/lisp/lisp.cpp

https://github.com/osgcc/abuse/blob/master/data/lisp/weapons.lsp

Эх, ностальгия. Помню, что она довольно-таки шустро бегала под DOS'ом. И ещё запомнилась мне многооконным (хоть и простеньким) игровым интерфейсом, похожим на Window Maker из NeXTSTEP. Тогда возможность перемещать окошки внутри игры была в диковинку.

Если что, игрушка есть в репозиториях вместе с дата-файлами. Dave Taylor, так же как Kaрмак, GPL'нул сорцы.

EXL ★★★★★ ()
Последнее исправление: EXL (всего исправлений: 1)

норм итт у всех бомбит.

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

x4DA ★★★★★ ()
Ответ на: комментарий от holuiitipun
  • говно вместо макросов
  • лишний синтаксис
  • тормозит
  • завязка на JVM

мне продолжать?

x4DA ★★★★★ ()

ждём GopherVR на ракетке, гы.

anonymous ()
Ответ на: комментарий от EXL

там в абузе вроде бы недолисп был. нет бы общелисп на 10500 страниц накатать.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.