[MLton] Support for link options in ML Basis files

Anoq of the Sun anoq@HardcoreProcessing.com
Fri, 21 Jan 2005 19:55:00 +0100


Chris Clearwater wrote:
> The MLton CVS repository contains some incomplete GL/GLU/GLUT bindings. 
> Unfortunately, they are written in a non-idiomatic SML style. They have 
> curried wrappers around them and also have the same names as C where 
> there is no namespace management. For example, "GL.glVertex3d: real -> 
> real -> real -> unit" in CVS vs "GL.vertex3D: real * real * real -> 
> unit" in my bindings. It was easier to sit down and convert the headers 
> from scratch than it was to convert the existing bindings. Also, i am 
> not interested in GLUT as SDL does a much better job.

OK :-) For performance I would also _strongly_ suggest
a non-curried version of such commands! Actually, if you
ask me, the canonical form of a 3d point should be:
{x : real, y : real, z : real}, so I would suggest:
GL.vertex3D: {x : real, y : real, z : real} -> unit

I'm sure that the "Geometry project" and the "Matrix project"
on my website here:
http://www.hardcoreprocessing.com/pro/smlcode/index.html

would also come in handy if you are doing 3D-stuff :-)


Cheers