caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Mike Hamburg <hamburg@fas.harvard.edu>
To: Oliver Bandel <oliver@first.in-berlin.de>
Cc: ml-labo@epimac.org, Paul Snively <psnively@mac.com>,
	Julien Roussel <julien.roussel@gmail.com>,
	caml-list@yquem.inria.fr, tipoix@free.fr
Subject: Re: [Caml-list] OCaml && COCOA-Environment (Mac-OS-X/GUI)
Date: Wed, 9 Feb 2005 14:41:41 -0500	[thread overview]
Message-ID: <242511bf0bc385223e9dbea5bca82195@fas.harvard.edu> (raw)
In-Reply-To: <20050207022449.GB1631@first.in-berlin.de>

On Feb 6, 2005, at 9:24 PM, Oliver Bandel wrote:

> Hi,
>
> I had looked shortly at the code... but it seems I have to learn a lot
> more of OCaml-C-Binding-stuff as well as Objective-C.
> So I started to learn again Objective-C in more detail.
>
> As far as I can see, the Classes of the Cocoa-Lib are very
> powerful!!!

They are certainly quite powerful, but their garbage collection is 
reference-counted, which makes it rather painful.  The language is also 
extremely verbose, and has little support for higher-order functions.  
That's why I prefer to write in O'Caml, and largely why I wrote the 
O'Caml to Cocoa bridge in the first place.

> I will start to write some small Applications in Objective-C under OS-X
> as soon as possible. But bigger stuff I would prefer to write in OCaml.
>
> If I maybe will have enough experience with ObjC and COCOA,
> I will try to marriage it with the Ocaml-C-binding (but this
> is new to me too).
>
> If I may have some time to visit the code,  or to test it with
> expermimental programs, I can look into it.
> But now it seems to me, that I have to learn the basics of these
> different worlds in more detail.
>
> I came from ANSI-C and have done the most work on Linux. Then I have 
> done
> a lot of Perl-programming on Linux too.
>
> But the Mac-OS-World is different (but very impressing, what they are 
> doing
> there... they seem to have a lot of that NeXt-Step-Stuff integrated 
> into OS-X!)

Yes, OS X is essentially an improved NeXTSTEP, running on a Mach kernel 
with BSD bindings.  I've been quite impressed at what they managed to 
build on a UNIX, though... it blows KDE out of the water in most 
respects (in my opinion).

> I hope that there are some more people out there who are
> interested to - maybe - start a project to integrate
> COCOA and OCaml. It seems to me, that a powerful library for
> OS-X-GUI (COCOA) for OCaml could be a nice thing for many people.

Agreed.  What the project would need would be people familiar with FFI 
tools such as Forklift, as the existing bindings are not type-checked 
and are slow.

> Are there more OS-X developers or are there more OCaml-developers?
> And how many OCaml-developers are working at OS-X?
> And if there woule be such a binding... ?!
>
> Best regards....
>        ... I hope to have enough time for doing more ObjC...
>
>
> Ciao,
>    Oliver

Mike Hamburg
>
> On Sun, Feb 06, 2005 at 01:04:20PM -0800, Paul Snively wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>>
>> On Feb 5, 2005, at 11:51 AM, Mike Hamburg wrote:
>>
>>> Additionally, I developed a very rudimentary binding.  It allowed the
>>> user to call Cocoa methods from O'Caml, but it had an enormous
>>> overhead: each method invocation from O'Caml had the overhead of 
>>> about
>>> 5 method calls from the C glue.  There was a (somewhat more 
>>> efficient)
>>> Cocoa-to-O'Caml call method, but I don't remember if I ever finished
>>> it.
>>>
>>> Paul Snively, Nick Burlett and I were working on a more efficient
>>> bridge, by means of parsing Cocoa headers to automatically generate
>>> typed bindings which would look like objects to O'Caml, but the
>>> project fizzled without any real results.  Perhaps someone with more
>>> FrontC knowledge could resurrect it.  The existing code is not
>>> strongly typed: you can attempt to pass the wrong number or type of
>>> arguments to a method, and it will raise an O'Caml exception instead
>>> of rejecting it at compile time.
>>>
>>> The O'Caml-to-Cocoa bridge is not online, but I can send you what 
>>> code
>>> we have if you want.
>>>
>> Mea culpa. I'm still very interested. I can't help but think that
>> extending Jeff Henrikson's Forklift FFI to handle Objective-C and
>> marrying that to an (improved? revised?) version of your bindings
>> wouldn't be a big win, but I confess to having no real roadmap for how
>> to get there, and my Copious Free Time(tm) is rather torn between
>> wanting to get O'Caml going natively on OS X and wanting to plow
>> through TAPL and now ATITAPL and master MetaPRL and concentrate on
>> learning how to design modern programming languages.
>>
>> But at the very least, I'd love to see the current state of your code.
>> :-)
>>
>>> Mike Hamburg
>>>
>> Many thanks and best regards,
>> Paul
>>
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.4.0 (Darwin)
>>
>> iEYEARECAAYFAkIGhmIACgkQO3fYpochAqJ17QCdFUWvJ3ul5nvsqb7wp/GZ8khp
>> fVcAniTDjb+ksXRgsxAT/ty9qwCyNdR2
>> =bSuT
>> -----END PGP SIGNATURE-----
>>
>
> -- 
> "Here at michigan state university, my computational linguistics 
> professor
>  had us learn ocaml for the class and we used it exclusively. I like 
> it so
>  much better than c++! Hope this helps." (Jeff Shaw on caml-list)
>
> _______________________________________________
> Caml-list mailing list. Subscription management:
> http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
> Archives: http://caml.inria.fr
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>


  reply	other threads:[~2005-02-09 19:41 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-05  0:02 Oliver Bandel
2005-02-05 16:37 ` [Caml-list] " Julien Roussel
2005-02-05 19:51   ` Mike Hamburg
2005-02-06 21:04     ` Paul Snively
2005-02-07  2:24       ` Oliver Bandel
2005-02-09 19:41         ` Mike Hamburg [this message]
2005-02-17  7:12       ` Jeff Henrikson
2005-02-18 23:41         ` [Caml-list] " art yerkes
2005-02-25  2:03         ` Paul Snively
2005-02-25  9:13           ` Oliver Bandel
2005-02-26  1:19             ` [Caml-list] " Sachin Shah
2005-03-01  6:39           ` Jeff Henrikson
2005-03-07  5:20             ` Paul Snively
2005-02-22  2:45     ` [Caml-list] " William D.Neumann
2005-02-23  0:12       ` Jacques Garrigue
2005-02-24 20:40         ` Paul Snively
2005-02-24 23:21           ` Oliver Bandel
2005-02-25 17:20             ` Mostly OT: Apple and Language Adoption was " Paul Snively
2005-02-22 10:54     ` Oliver Bandel

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=242511bf0bc385223e9dbea5bca82195@fas.harvard.edu \
    --to=hamburg@fas.harvard.edu \
    --cc=caml-list@yquem.inria.fr \
    --cc=julien.roussel@gmail.com \
    --cc=ml-labo@epimac.org \
    --cc=oliver@first.in-berlin.de \
    --cc=psnively@mac.com \
    --cc=tipoix@free.fr \
    /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).