Re:John Carmack working on Scheme as a VR scripting language
by viach on Wednesday July 01, 2015 @04:45AM
(#9810660)
> I am a big believer in functional programming
> I have basically no experience with javascript
> The bottom line is that I have been enjoying myself working with Racket
So there is no logical reason behind, he just loves Racket, ok
Re:John Carmack working on Scheme as a VR scripting language
by dang on Wednesday July 01, 2015 @04:48AM
(#9810672)
Programmer love is secretly (or not so secretly) the reason for all language choice. I say why hide it.
Re:John Carmack working on Scheme as a VR scripting language
by superfunc on Wednesday July 01, 2015 @11:37AM
(#9812556)
Not really. Domain often dictates. If AAA games could get away with using a garbage collected language, I'm sure they would.
Re:John Carmack working on Scheme as a VR scripting language
by pjmlp on Wednesday July 01, 2015 @12:52PM
(#9813285)
Unreal has GC support for C++.
Unfortunately Unity broken GC is a side effect of them not wanting to improve the stone age runtime they are using.
I guess many AAA could actually be done in languages with GC support, but game devs tend to only change tools when the OS/console vendors force them.
All that is needed is having such a vendor pushing a language with the same effort as they are pushing for JavaScript JITs, lets say.
Re:John Carmack working on Scheme as a VR scripting language
by dang on Wednesday July 01, 2015 @01:47PM
(#9813748)
Programmer love would determine who'd make that change vs. who defended C++ to the death.
Domain is often dictated too—we're attracted to problems that fit our tools.
Re:John Carmack working on Scheme as a VR scripting language
by andrewchambers on Wednesday July 01, 2015 @05:27AM
(#9810804)
Not to worry, they will be forced for add javascript just to please the hordes of people who don't know any better.
Re:John Carmack working on Scheme as a VR scripting language
by ourmandave on Wednesday July 01, 2015 @07:00AM
(#9811065)
Before that it had to be "VB like" scripting.
Re:John Carmack working on Scheme as a VR scripting language
by pmelendez on Wednesday July 01, 2015 @07:10AM
(#9811098)
You forgot this part:
>and I have evidence that it has been objectively productive for me
Re:John Carmack working on Scheme as a VR scripting language
by monk_e_boy on Wednesday July 01, 2015 @05:28AM
(#9810810)
He is fairly smart and has quite good taste, so I'll trust him to choose a good language.
Re:John Carmack working on Scheme as a VR scripting language
by willvarfar on Wednesday July 01, 2015 @06:23AM
(#9810980)
It is logical for him to pick Racket because of these three points.
Re:John Carmack working on Scheme as a VR scripting language
by jameshart on Wednesday July 01, 2015 @11:59AM
(#9812796)
Only programmers would demand that you provide logical justification for an aesthetic preference :)
Re:John Carmack working on Scheme as a VR scripting language
by nikki93 on Wednesday July 01, 2015 @04:53PM
(#9815077)
Ultimately, this is what art is. You need to go with what you love. 'logical argument' often just is a euphemism for rationalizing your convictions after the fact. You can't paint if you try to analyze every brush stroke. Let the subconscious flow.
John Carmack:
> >An imperative API makes functional abstraction harder. What are the main selling points for Scheme/Racket now?
> 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.
> As far as language choice goes, I don't claim to have broadly evaluated every possibility and chosen the optimal one.
> Java or C# would have been more familiar to a broader base of game industry developers, but I really didn't want to drag in all the bulk of a JVM / .NET system, and a class focused world view seems less suited for the smaller scripting tasks.
> Javascript would have been more familiar to a broader base of web industry developers, but I have basically no experience with javascript, and little desire to explore it (which is admittedly a fault of mine).
> S-expression reading and writing is a strong factor for network communication, and I like the fact that there are available options for Scheme to interpret / compile / compile-to-C. I can see valid use cases for all of them, and I'm not sure how important each will be.
> 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.
> >Initial impression: 7 years after starting to program in Racket, it still surprises me how easy it is to do something > >useful in just a few lines of code.
> A big goal here is to make the authored code very clear and simple. I may yet get to a single #lang vr <ip address> declaration that gets rid of the boilerplate at the top and bottom of the file and flips the right switches to make Racket closer to R7RS.
> There are sets of creative-types that are learning how to put things together in Unity to accomplish fairly simple media related tasks. I think I can make it easier for them with very domain specific helper libraries and a little bit of scheme.