Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] Caml productivity.
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Jonathan Coupe <jonathan@m...>
Subject: Re: Games (Re: [Caml-list] Caml productivity.)

> If you're talking about professional quality games using caml as the main
> language (as opposed to as a scripting language), it's not really an
> on this generation of consoles.  Memory in a commercial console game is
> tightly managed, and caml doesn't give much control over memory management
> at all.

Even on a PC, I would have thought that the GC might need some re-writing? I
haven't seen any suggestion in the docs that it's compatible with realtime
requirements, ie preventing long periods of garbage collection. That said,
people ship games with bigger bugs.

The main thing I've taken from OCaml is using a mixed object/functional
style with C++ in games. This works well enough so that we'll probably spend
some money later this year using OpenC++ (an advanced preprocessor developed
at Xerox) to add closures on top of the C++ compilers we use.

Finally, although it is a fine language I don't think that OCaml supports
the right feature mix for game programming. The combination of a more
sophisticated ObjectiveC language (reflection for modules on top of a C
style base language, but with Smalltalk debugger and workspace, and C's
syntactical faults removed), an object library like Unrealscript's and
reasonable support for FP would seem optimum. I'd insist that it be easier
to parse than C++, even at the cost of removing a lot of syntactical sugar -
that way I might actually get a compiler that matches the language spec,
which still hasn't happened with C++.

- Jonathan Coupe

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: