caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: David Sheets <sheets@ashimaarts.com>
To: rixed@happyleptic.org
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] Pros and cons of different GL bindings ?
Date: Wed, 27 Apr 2011 10:46:21 -0700	[thread overview]
Message-ID: <BANLkTikqnLsADbYULr6K1XPYcOP=0icsKw@mail.gmail.com> (raw)
In-Reply-To: <20110427171618.GA4078@yeeloong.happyleptic.org>

You could also compile your OCaml to Javascript and use WebGL. We've
not yet written the ocamljs bindings to mimic lablgles but the
javascript shim is fairly small, "native" (not autogen'ed bindings)
and simple. The business logic stays in OCaml. We will soon be
tightening the ocamljs/closure-compiler toolchain to get even smaller
and faster js files.

You can see some early results from this design at http://ashimagames.com/

We are actively investigating compiling a strict OCaml subset
(directly semantically translatable to recursion-less GLSL) to
GLSL/Javascript for numeric library portability and algebraic
simplification of shaders.

If you are interested in this architecture, let me know and I can
clean up and send you the closure-compiler externs files we use to
escape the minification of the WebGL interface. If you require ocamljs
assistance, I would also be happy to help with that.

Best,

David Sheets
Ashima Arts

On Wed, Apr 27, 2011 at 10:16 AM,  <rixed@happyleptic.org> wrote:
> There is also my own pet binding (glop project on gitorious) if you
> need an abstraction layer above both OpenGL or GLES, but I don't
> recommend it since you would be the only user :-)
>
>> Oh, if anyone knows of someone making OpenGL 4 / OpenGL ES 2 bindings...
>> please speak up! :)
>
> The problem with shaders is that it seams a very unpleasant(*) language
> is imposed on us. If good old OpenGL was a brilliant abstraction
> between a program and an hypothetical hardware, recent OpenGL versions are
> more like an API to access proprietary hardware, thus it is much less
> exciting to bind ocaml with this thing.
>
> (*): at least from the point of view of an ocaml programmer
>
> --
> Caml-list mailing list.  Subscription management and archives:
> https://sympa-roc.inria.fr/wws/info/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>
>


  reply	other threads:[~2011-04-27 17:46 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <fa.6Y/ymCKnZgZmswumjjdnkchP1wI@ifi.uio.no>
2011-04-27 13:17 ` Ethan Burns
2011-04-27 13:27   ` Alan Schmitt
2011-04-27 19:52     ` Andrei Formiga
2011-04-27 16:24   ` Anthony Tavener
2011-04-27 17:16     ` rixed
2011-04-27 17:46       ` David Sheets [this message]
2011-04-27 20:55         ` rixed
2011-04-27 21:08           ` David Sheets
2011-04-28  0:32     ` Jacques Garrigue
2011-05-02 16:48       ` Florent Monnier
2011-05-03  5:54         ` Anthony Tavener
2011-05-05  9:57         ` David Baelde
2011-04-27 10:29 Thomas Braibant

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='BANLkTikqnLsADbYULr6K1XPYcOP=0icsKw@mail.gmail.com' \
    --to=sheets@ashimaarts.com \
    --cc=caml-list@inria.fr \
    --cc=rixed@happyleptic.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).