No subject
Tue Dec 17 01:15:04 PST 2013
interfaces in declarative manner in QML and connect it with OCaml
using `mocml` code generator and `lablqml` ocamlfind package. Qt 5.2
is required for compilation
More information you can get at [1]. There is mine opam repo where
demo application is included. It is called QOCamlBrowser --
application similar to default ocamlbrowser.
All comments will be appreciated.
Kind regards,
Dmitrii Kosarev aka Kakadu
[1] <http://kakadu.github.io/lablqt>
=20=20=20=20=20=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
9) SDL2 bindings, testers and feedback welcome
Archive: <https://sympa.inria.fr/sympa/arc/caml-list/2013-12/msg00105.html>
------------------------------------------------------------------------
** Daniel B=C3=BCnzli announced:
I have written thin bindings to SDL 2 using ocaml-ctypes. The binding
is finished but should be considered unstable: it was not thoroughly
tested and may still change as it has not been *used* yet. The purpose
of this unstable release is to:
1) Iron out the install procedure and test on a variety of platforms.
2) Get feedback about the design of the binding (see below).=20
More precisely, apart from the eventual bugs, I'm interested in
getting feedback in the following areas:
* I used an 'a result =3D [ `Error | `Ok of 'a ] rather than an exception=20
for functions that return error codes/null is error. I tend to lean
on exceptionless designs but I'm still unsure whether it is a good
idea that case. One of the problems is that SDL doesn't make a clear
distinction (at the signature level *and* in the documentation)
between programming errors (invalid_arg), exceptional errors
(e.g. out of memory) and non-exceptional errors (e.g. could not
access/setup a resource).
* The signature/approach of certain binding functions may be disputable=20
or may need change to achieve reasonable performance.=20
* Testing the binding to the joystick/game controller/force feedback api,=20
I have none of these things in my hands.
I welcome discussions/ideas about these points and the general design
of the binding on github's issue tracker (<http://github.com/dbuenzli/tsdl>)
Note that the philosophy of the binding is to be "thin", that is a
mostly type-safe(r), minimal, hopefully efficient, one-to-one
binding. This means that I'm not interested in prettyfing the C API
like OCamlSDL does. I expect tsdl code to look like C SDL code
(including the inconsistent naming schemes) and the binding to be used
by programmers to build higher-level, more OCaml friendly, abstractions.
To install (only tested on osx and linux so far) you'll need at least SDL 2=
.0.1
installed on your system. Then:
opam repo add erratique-u <http://erratique.ch/software/opam/unreleased>
opam update && opam install tsdl=20
On osx 10.8.5 with OCaml 4.01.0 there's a heisenbug I couldn't track so far
(see [1] for more info). Use 4.00.1 instead for now but note that the bindi=
ng=20
takes a long time to compile (~8 min on my machine) with that.=20
If you want to hack the sources:
git clone <http://github.com/dbuenzli/tsdl>=20
cd tsdl && ./build test.native && ./test.native
The documentation of the binding is here:
<http://erratique.ch/software/tsdl/doc/Tsdl>
Best,
Daniel
[1] <http://lists.ocaml.org/pipermail/ctypes/2013-December/000027.html>
P.S. If anyone wonders, the existing OCamlSDL is a very good binding
to SDL 1.X, but SDL 2.0 is an entirely new, incompatible, API. Besides
SDL 2.0 changed to a zlib license, tsdl is under BSD3, OCamlSDL is
LGPL.
=20=20=20=20=20=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
10) Other OCaml News
------------------------------------------------------------------------
** From the ocamlcore planet blog:
Thanks to Alp Mestan, we now include in the OCaml Weekly News the links to =
the
recent posts from the ocamlcore planet blog at <http://planet.ocaml.org/>.
Writing a Planner to solve a tricky programming optimization problem:
<http://rwmj.wordpress.com/2013/12/14/writing-a-planner-to-solve-a-tricky=
-programming-optimization-problem/>
Farewell, Wojciech Meyer:
<http://gallium.inria.fr/blog/wojciech-meyer>
OASIS v0.4.0 release:
<https://forge.ocamlcore.org/forum/forum.php?forum_id=3D891>
Release of OASIS 0.4.0:
<http://le-gall.net/sylvain+violaine/blog/index.php?post/2013/12/11/Relea=
se-of-OASIS-0.4.0>
=20=20=20=20=20=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Old cwn
------------------------------------------------------------------------
If you happen to miss a CWN, you can send me a message
(alan.schmitt at polytechnique.org) and I'll mail it to you, or go take a look=
at
the archive (<http://alan.petitepomme.net/cwn/>) or the RSS feed of the
archives (<http://alan.petitepomme.net/cwn/cwn.rss>). If you also wish
to receive it every week by mail, you may subscribe online at
<http://lists.idyll.org/listinfo/caml-news-weekly/> .
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
More information about the caml-news-weekly
mailing list