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] Playing Soccer with OCaml
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2001-10-29 (18:26)
From: Alan Schmitt <alan.schmitt@i...>
Subject: Re: [Caml-list] Playing Soccer with OCaml
* Kai Kaminski ( wrote:
> Now there are several questions for me:
> - I'm new to OCaml and functional programming. I have some experience
>   with C/C++, Pascal and Asm. But I don't think that this will help
>   me. Do you think it is possible for a newbie to implement such
>   algorithms within five or six month in reasonably quality?

Yes, definitely. And I think that any experience in programming will
help you.

> - We use CORBA for communication (omniORB). How difficult is it to
>   communicate with C++ modules via CORBA. As I understand it, CamlIDL
>   could help me here, but I'm not sure.

I'm not sure about using camlidl for that, I'll let Xavier answer it.
There was a project for writing bindings for Orbit in caml (the page is
at ), but we haven't done much on it
for quite a while ... (I was supposed to work on it, but other projects
beckoned ... you know how it goes ;-) If there is some goal to push us
forward with this project, it would be a good thing.

> - Is OCaml fast enough? We need to do all the work for 4-6 robots on
>   one linux machine (Intel at ~400MHz).

Yes definitely, as caml can be compiled to native code on many

> - Is OCaml a good choice to implement these algorithms? A better
>   choice than C++ at least? (Ok, I know: OCaml is *always* the better
>   choice ;-)

You answered this one yourself ;-) More seriously, OCaml is great for
fast development (type inference helps a lot) and for complex data

> - What about SunOS? This port is not a requirement, but it would be
>   nice.

From the Readme:
The other compiler generates high-performance native code for a number
of processors. Compilation takes longer and generates bigger code, but
the generated programs deliver excellent performance, while retaining
the moderate memory requirements of the bytecode compiler. The
native-code compiler currently runs on the following platforms:

    Intel Pentium processors: PCs under Linux, FreeBSD, NetBSD, OpenBSD,
      Windows, NextStep, Solaris 2, BeOS.
    Alpha processors: Digital/Compaq Alpha machines under
      Digital Unix/Compaq Tru64, Linux, NetBSD and OpenBSD.
    Sparc processors: Sun Sparc under SunOS 4.1, Solaris 2, NetBSD, Linux
    Mips processors: SGI workstations and mainframes under IRIX 6
    HP PA-RISC processors: HP 9000/700 under HPUX 10
    PowerPC processors: IBM RS6000 and PowerPC workstations under AIX 4.3,
                        PowerMacintosh under MkLinux, LinuxPPC, MacOS X
    Strong ARM processors: Corel Netwinder under Linux
    Intel IA64 processors: prototypes under Linux


The hacker: someone who figured things out and made something cool happen.
Bug reports:  FAQ:
To unsubscribe, mail  Archives: