QuakeScheme?

Discuss anything not covered by any of the other categories.
Post Reply
scar3crow
InsideQC Staff
Posts: 1054
Joined: Tue Jan 18, 2005 8:54 pm
Location: Alabama

QuakeScheme?

Post by scar3crow »

Didn't get to watch much of it, nor do I know off the top of my head where to find it, but during Carmack's keynote speech he spoke of how he had been wondering how it would've been had instead of making QuakeC, he made QuakeScheme. It was an interesting little side note, and then he went off on a tangent about mucking around in Haskell. Something to discuss, how do you think Quake would've gone had its interpreted language been based on Scheme rather than C?
...and all around me was the chaos of battle and the reek of running blood.... and for the first time in my life I knew true happiness.
r00k
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: QuakeScheme?

Post by r00k »

i found this http://icculus.org/~phaethon/qscheme.html
but not sure what 'scheme' looks like.
LordHavoc
Posts: 322
Joined: Fri Nov 05, 2004 3:12 am
Location: western Oregon, USA
Contact:

Re: QuakeScheme?

Post by LordHavoc »

Scheme is one of the more famous LISP dialects, functional programming is a different approach than macro-assemblers like C, relying entirely on nesting of parentheses for code structure, everything is an expression, and data and code are the same thing, both modifiable in the program, basically LISP dialects are implementations of the Lambda Calculus, a mathematical theory of computing, much simpler and more consistent than C but I find it unwieldy.

One of the better syntax examples of Scheme is probably this on the wikipedia page:
http://en.wikipedia.org/wiki/Scheme_%28 ... _variables
frag.machine
Posts: 2126
Joined: Sat Nov 25, 2006 1:49 pm

Re: QuakeScheme?

Post by frag.machine »

Also, LISP is known as "Lots of Infernal Stupid Parenthesis". :P

Functional languages are an interesting concept, but I still think QuakeC was the Right Thing (tm) to do because the C-style syntax is very popular and well known. That alone is a very strong argument if you want the community to embrace your game.
I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
LordHavoc
Posts: 322
Joined: Fri Nov 05, 2004 3:12 am
Location: western Oregon, USA
Contact:

Re: QuakeScheme?

Post by LordHavoc »

Usual nickname I see for LISP is "Lost In Superfluous Parentheses".

I really admire LISP for consistency, but clarity is lost.
scar3crow
InsideQC Staff
Posts: 1054
Joined: Tue Jan 18, 2005 8:54 pm
Location: Alabama

Re: QuakeScheme?

Post by scar3crow »

Your description of LISP sounds like something might reserve for a harmless troll...

I don't know jack about LISP versus C et al, so I don't know how QuakeScheme would've impacted modding.
...and all around me was the chaos of battle and the reek of running blood.... and for the first time in my life I knew true happiness.
r00k
Posts: 1111
Joined: Sat Nov 13, 2004 10:39 pm

Re: QuakeScheme?

Post by r00k »

i think since the engine was coded in C it was only logical to make quake modding in a c style lang as im sure they had the forethought to release the engine source; it's just an easier progression.
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Re: QuakeScheme?

Post by goldenboy »

boy am I glad they didn't do that.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: QuakeScheme?

Post by revelator »

Lisp is probably one of the if not oldest interpreted languages in existance :) still usable though but its not for novices.
Its pretty fast though so it could actually have been used as something like quakec, but yeah braces of doom :P
Productivity is a state of mind.
Dr. Shadowborg
InsideQC Staff
Posts: 1120
Joined: Sat Oct 16, 2004 3:34 pm

Re: QuakeScheme?

Post by Dr. Shadowborg »

scar3crow wrote:Something to discuss, how do you think Quake would've gone had its interpreted language been based on Scheme rather than C?
Scheme looks nasty.

Most likely quake modding would have languished (with the exception of mapping perhaps), until engine source code release...At which point somebody probably would have recoded the engine to use something like a gamex86.dll. (which is also kinda nasty)

Either that or written a program that converted C code into QuakeScheme. :wink:
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: QuakeScheme?

Post by Spike »

considering things like reacc, I don't think it would have been a huge problem if quake had been written in scheme - we'd have just focused on third-party tools more instead. :s
(unlike today, quake came at a time when people actually cared enough to write new tools from scratch!)
frag.machine
Posts: 2126
Joined: Sat Nov 25, 2006 1:49 pm

Re: QuakeScheme?

Post by frag.machine »

I think it would turn the learning curve to the average modder far more steeper. In the end, it would be a significative community push towards Unreal and UnrealScript IMO.
Yeah, mapping community probably wouldn't be that affected, but it wouldn't be enough to make Quake the huge success it was. CTF and TF probably would born as Unreal mutators. :)
I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: QuakeScheme?

Post by qbism »

Scheme actually makes sense for AI and geometry scripting. But never saw it in the 'real world' beyond coding intro course and AutoCAD LISP.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: QuakeScheme?

Post by revelator »

Indeed lisp was actually intended as an AI language it was also used as such by nasa :)
Could maybe be cool for openkatana.
Productivity is a state of mind.
Post Reply