From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id pB8IJ8RJ005519 for ; Thu, 8 Dec 2011 19:19:08 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AjABAFr+4E7RVdY2kGdsb2JhbABDhQalWwgiAQEBAQkJDQcUBCGBcgEBAQQSAg8dARscAgMMBgULBwYCAgUWCwICCQMCAQIBEREBBQEODhMGAgIQDqJ0CoscSIJrhEg9iHECBQyBKIZvggKBFgSUa4Z/hnE9g3s X-IronPort-AV: E=Sophos;i="4.71,320,1320620400"; d="scan'208";a="122638929" Received: from mail-bw0-f54.google.com ([209.85.214.54]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 08 Dec 2011 19:19:03 +0100 Received: by bkbzv15 with SMTP id zv15so3160773bkb.27 for ; Thu, 08 Dec 2011 10:19:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; bh=F8YMQmsdZ/LOK99NdQMBFR2MGXuQMjGiSD2Jy/Z5Zc0=; b=dRNJCkVkLv0EacC5O69lEm8pRqC/I/CJR6GzVvmj0velQ+saPo+gD475DQptRr6gGe XIWf635AsKNIDPORjZ9fNno0d05yTP+NgN2n5YEldTtOInkPXfiVrBASrNH3JCUhoE+c kqwiytQKqrQjiIvvIws+Rm3xQ93lrKbdvx9u8= Received: by 10.204.136.200 with SMTP id s8mr1922507bkt.49.1323368342809; Thu, 08 Dec 2011 10:19:02 -0800 (PST) Received: from ?IPv6:2a02:2f02:1022:7000:1e6f:65ff:fe23:db0d? ([2a02:2f02:1022:7000:1e6f:65ff:fe23:db0d]) by mx.google.com with ESMTPS id w3sm4582935bkq.3.2011.12.08.10.19.00 (version=SSLv3 cipher=OTHER); Thu, 08 Dec 2011 10:19:00 -0800 (PST) Message-ID: <4EE0FF92.3020408@gmail.com> Date: Thu, 08 Dec 2011 20:18:58 +0200 From: =?UTF-8?B?VMO2csO2ayBFZHdpbg==?= User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111114 Icedove/3.1.16 MIME-Version: 1.0 To: caml-list@inria.fr References: <55531934-37A5-4CC5-AB67-20CE4CCE8269@googlemail.com> <4EE08955.30207@frisch.fr> In-Reply-To: X-Enigmail-Version: 1.1.2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Caml-list] OCaml maintenance status / community fork (again) On 12/08/2011 01:11 PM, Pierre-Alexandre Voye wrote: > 2011/12/8 Benedikt Meurer > >> >> >> >> The problem is IMHO that there is no one at INRIA caring about ARM. In an >> open model we would have maintainers for the ARM port(s). >> > Note that if Ocaml compiler would have a C backend, all these problems or > architecture port would disappear... > Ocaml would have more than 30 target[1] > In my Opinion, trying to generate assembler is a bad idea because modern > CPU require a lot of work to generate good assembler. > Only the GCC and LLVM team are big enough to be able to make a good job. > > In the Lisaac project, we were able to compete with C[2]. Lisaac is a > compiler for a Smalltalk like language : the if/then/else is unknown to the > compiler, it is defined in the true/false object. So it is a proof that a > very high level language can reach C performance. Ocaml can do this, > because the compiler is able to know a lot of type informations. > The Lisaac compiler use strong flow analysis and, more importantly generate > C code. To reach performance, Lisaac tailor C code to help GCC to generate > very optimized code. Wouldn't it be more reliable to write a GCC OCaml frontend, or an LLVM OCaml frontend? (or generate GCC Gimple, or LLVM IR). I think GCC already has a frontend which is written in the language itself (Ada). There are things that cannot be easily expressed in C, such as tail calls, type hierarchies, etc. Also there is a lot of undefined behaviour in C that you can quite easily hit, especially if you automatically generate code. Best regards, --Edwin