Version française
Home     About     Download     Resources     Contact us    
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: eijiro_sumii@a...
Subject: Re: Games (Re: [Caml-list] Caml productivity.)
> > Another is that some 3D graphics people in Hollywood are actually
> > using LISP because (the major part of) 3D graphics is in fact symbolic
> > computation, at which "functional" languages are good.
> 
>     Could you (or someone else) please elaborate more on that ? So far on my
> research on computer graphics I could not see it as being mostly symbolic
> computation. Some specific algorithms and applications yes, but not most of
> it (nor even close).

I'm not a CG expert and don't have at hand specific pointers to
industrial uses (I wrote the previous sentence from my memory), so
this is just personal impressions that I've had in writing several CG
programs (e.g. in ICFP programming contest 2000, where our OCaml
program won over all C/C++ entries - see www.ocaml.org) and chatting
with friends of mine (some of them are CG experts), but anyway:

The numeric part is of course important and consumes most time, but as
_programming_ (rather than mathematics), the symbolic part seems much
tricker, in particular for compound applications like games and
movies.  By "symbolic part", I mean all parts involving more complex
data structures than float arrays, like managing objects of various
shapes, manipulating trees for grouping those objects, or even
interpreting domain specific languages for describing placement and
movement of such objects.  OCaml is very good at such a kind of
programming, you know!

> And I've seen some reports on LISP being used for CG,
> mostly in procedural techniques. Could you please point out where have you
> seen other uses of functional languages on computer graphics ? Thanks.

This is why I quoted the word "functional".:-) I never claimed that
functional programming in the sense of "no side effects" is good for
ray tracing.  There may well be other factors such as inductive data
types, pattern matching, higher-order functions, garbage collection,
module systems, etc.  I just think that _so-called_ functional
languages like LISP and ML are good at symbolic computation thanks to
_all_ of the features above.

--
Eijiro Sumii (http://www.yl.is.s.u-tokyo.ac.jp/~sumii/)
Research Associate, Department of Computer Science, University of Tokyo
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners