caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Peter Zotov <whitequark@whitequark.org>
To: <caml-list@inria.fr>
Cc: <jon@ffconsultancy.com>
Subject: RE: [Caml-list] LLVM OCaml bindings
Date: Fri, 08 Nov 2013 15:44:35 +0400	[thread overview]
Message-ID: <bd6e314ac10ab86f6eeee2f190c3e6ba@whitequark.org> (raw)
In-Reply-To: <012101cedc76$1665b920$43312b60$@ffconsultancy.com>

Jon Harrop писал 08.11.2013 15:31:
>> I'm not going to change APIs in any way which needs nontrivial, 
>> significant fixes to clients, there's simply no need.
> 
> Ok, great.
> 
> Jeff Meister was talking about writing more type safe bindings. I
> think that would be fine as long as it wraps the existing less-safe
> bindings so people can continue to use them. I tried using LLVM from
> Haskell and had a lot of problems because they'd used every trick in
> the book to write the most type safe possible bindings and it makes it
> much harder to learn and use. I'd personally much rather see more
> complete bindings...

I completely agree. I don't currently know if I will write type-safe
bindings (if I do, they'll be based on OCaml's OO... it's a nearly
perfect match for the kind of API LLVM has), but they'll be
based on the low-level bindings, not replace them.

By the way, I'm currently in process of upstreaming all extensions for
the C API the Haskell (llvm-general) bindings internally have.

> 
> BTW, what are your thoughts on MSJIT? I just started reading about it
> and it seems very underwhelming. Sounds like they're struggling to
> refactor their C++ code so they're reinventing things but not doing it
> significantly better. So I don't think I'll be rushing to switch to
> MSJIT unless they actually deprecate the old JIT.

MCJIT is a great idea in general, since it reuses much more of the
LLVM infrastructure, in particular the MC layer, so you don't have two
different code generators to maintain. Right now it's very incomplete
and I won't use it yet. There seems to be a moderate interest in
a better MCJIT so I hope it becomes much more usable in the next
few months.

As I understand it, the old JIT is already deprecated, it's just not
removed yet (and will not be for a while).

> 
> Cheers,
> Jon.
> 
> -----Original Message-----
> From: Peter Zotov [mailto:whitequark@whitequark.org]
> Sent: 08 November 2013 10:19
> To: jon@ffconsultancy.com
> Cc: caml-list@inria.fr
> Subject: RE: [Caml-list] LLVM OCaml bindings
> 
> Jon Harrop писал 08.11.2013 13:36:
>> I just wanted to check: you're not breaking the existing bindings,
>> right?
> 
> Sorry, realized the previous letter was phrased ambiguously.
> I'm asking because I do want to break existing bindings. The changes
> would mainly touch two areas:
> 1) Memory management. I want to get rid of most or all of dispose
> functions and allow to use OCaml's GC.
> 2) Llvm_target interface is very outdated and it could be updated to
> integrate much better with the TargetMachine interface.
> 
> There are also two or three Llvm functions which need minor changes.
> 
> I'm not going to change APIs in any way which needs nontrivial,
> significant fixes to clients, there's simply no need.
> 
> --
>    WBR, Peter Zotov.

-- 
   WBR, Peter Zotov.

  reply	other threads:[~2013-11-08 11:44 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-05  4:23 Peter Zotov
2013-11-05  8:12 ` Gabriel Kerneis
2013-11-05  8:18   ` Peter Zotov
2013-11-05 11:09 ` Jacques-Pascal Deplaix
2013-11-05 11:32   ` Peter Zotov
2013-11-05 21:00     ` Jeff Meister
2013-11-06  7:19       ` Peter Zotov
2013-11-06  7:54         ` Jeff Meister
2013-11-05 21:30     ` Jacques-Pascal Deplaix
2013-11-06  7:06       ` Peter Zotov
2013-11-08  9:36 ` Jon Harrop
2013-11-08 10:18   ` Peter Zotov
2013-11-08 11:31     ` Jon Harrop
2013-11-08 11:44       ` Peter Zotov [this message]
2013-11-12  3:44       ` Jeff Meister
2013-11-12 14:13         ` Peter Zotov
2013-11-13 19:00           ` Jon Harrop
2013-11-14 16:06             ` Hongbo Zhang
2013-11-14 19:29               ` Jeff Meister

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=bd6e314ac10ab86f6eeee2f190c3e6ba@whitequark.org \
    --to=whitequark@whitequark.org \
    --cc=caml-list@inria.fr \
    --cc=jon@ffconsultancy.com \
    /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).