Browse thread
[Caml-list] Alternative Bytecodes for OCaml
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Brandon J. Van Every <vanevery@i...> |
| Subject: | [Caml-list] bytecode and native code at once |
John Goerzen wrote:
>
> An *efficient* implementation is another matter, but one I'm
> not highly
> concerned about. Those that are going to be doing sophisticated
> numerical analysis can stick with ocamlopt.
I do wish bytecode and native code could be combined in the same
application. This is a typical game development scenario. One might
wish to edit a Massively Multiplayer Online Game server 'live', for
example. Some parts must be fast. Other parts aren't so performance
critical and would be better seen as 'scripting jobs'. Game development
encompasses both the need for heavy duty number crunching and the need
to script.
Cheers, www.indiegamedesign.com
Brand*n Van Every S*attle, WA
Praise Be to the caml-list Bayesian filter! It blesseth
my postings, it is evil crap! evil crap! Bigarray!
Unboxed overhead group! Wondering! chant chant chant...
Is my technical content showing?
// return an array of 100 packed tuples
temps
int $[tvar0][2*100]; // what the c function needs
value $[tvar1]; // one int
value $[tvar2]; // one tuple
int $[tvar3] // loop control var
oncePre
eachPre
$[cvar0]=&($[tvar0][0]);
eachPost
$[lvar0] = alloc(2*100, 0 /*NB: zero-tagged block*/ );
for(int $[tvar3]=0;$[tvar3]<100;$[tvar3]++) {
$[tvar2] = alloc_tuple(2);
$[tvar1] = Val_int($[cvar0][0+2*$[tvar3]]);
Store_field($[tvar2],0,$[tvar1]);
$[tvar1] = Val_int($[cvar0][1]);
Store_field($[tvar2],1,$[tvar1+2*$[tvar3]]);
Array_store($[lvar0],$[tvar3],$[tvar0]);
}
oncePost
-------------------
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