From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by sympa.inria.fr (Postfix) with ESMTPS id ED8E67ED7A for ; Sun, 30 Sep 2012 19:03:20 +0200 (CEST) Received-SPF: None (mail4-smtp-sop.national.inria.fr: no sender authenticity information available from domain of bobzhang1988@gmail.com) identity=pra; client-ip=209.85.216.182; receiver=mail4-smtp-sop.national.inria.fr; envelope-from="bobzhang1988@gmail.com"; x-sender="bobzhang1988@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail4-smtp-sop.national.inria.fr: domain of bobzhang1988@gmail.com designates 209.85.216.182 as permitted sender) identity=mailfrom; client-ip=209.85.216.182; receiver=mail4-smtp-sop.national.inria.fr; envelope-from="bobzhang1988@gmail.com"; x-sender="bobzhang1988@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail4-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-qc0-f182.google.com) identity=helo; client-ip=209.85.216.182; receiver=mail4-smtp-sop.national.inria.fr; envelope-from="bobzhang1988@gmail.com"; x-sender="postmaster@mail-qc0-f182.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AiMCAMd6aFDRVdi2k2dsb2JhbABFvi4IIwEBAQEJCQsJFAQjgiABAQECAhICCRsIARscAgMMBgULDQkWDwkDAgECARERAQUBHAYNCAEBEA6HUAEDDwubNAkDjCWCdYQRChknDVmIdQEFDJFeA44Ch2eOTD+EIw X-IronPort-AV: E=Sophos;i="4.80,513,1344204000"; d="scan'208";a="157369147" Received: from mail-qc0-f182.google.com ([209.85.216.182]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 30 Sep 2012 19:02:53 +0200 Received: by qcsl39 with SMTP id l39so5143473qcs.27 for ; Sun, 30 Sep 2012 10:02:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=xprwQMSuz2uGfd7P5HDxEZZLBjY5oHSLtPmUxXMjc/A=; b=QzjKq6hNK7conHo0o7KlW7skyVG5mlJlSnsYSfREelX6ptEAg9cb/TQRobaCRGjZ1Z t9D9hBn7DSvzfLJlVsJptgSV+rpNsp+HgnBd3B76/hlWxg2umbJYJ8p7kzsJZmVra8Cg gTmA5oS3RfWkYgTabG7Wk/MJT/cL5XnBwpaTjN/QoRMKUul8HJpnxLjTqLejzFAw/RmN Pc7UDKEsn5fA3eTHRLSZZUMRNmal/dVqX81fH+s7KG59jbFND7FCNAIAnBWuXNCUqelO spW8xmNbcV3mL5ga7D5w7Pk5+r/+FfyXnx9SLOTV0OlrpkneCSS6zKjD4zbT+Z9d3Nu7 Dj1A== Received: by 10.224.76.204 with SMTP id d12mr19706139qak.85.1349024573066; Sun, 30 Sep 2012 10:02:53 -0700 (PDT) Received: from seas1092.wireless-pennnet.upenn.edu (seas1092.wireless-pennnet.upenn.edu. [158.130.108.70]) by mx.google.com with ESMTPS id fy1sm21062724qab.10.2012.09.30.10.02.51 (version=SSLv3 cipher=OTHER); Sun, 30 Sep 2012 10:02:51 -0700 (PDT) Message-ID: <50687B3B.4090200@gmail.com> Date: Sun, 30 Sep 2012 13:02:51 -0400 From: bobzhang User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:15.0) Gecko/20120907 Thunderbird/15.0.1 MIME-Version: 1.0 To: Caml List References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Caml-list] Re: Call for collaboration on the future of camlp4 Dear all, For those who are concerned: The latest version of building camlp4 is under 8s. real 0m7.653s user 0m5.595s sys 0m1.736s On 9/18/12 3:11 PM, bob zhang wrote: > Dear OCaml programmers, > Last week, I give a talk about the future of Camlp4 in the ML > workshop, the slides are here > http://www.lexifi.com/ml2012/slides_panel_hongbo.pdf (some are already > done, some are work in progress). > For a long time, in the caml community, thanks to the talented work > of Daniel and Michel, we know there is a very very powerful tool called > *camlp4*, if there are some bolierpolate code you write here and there, > someone will tell you "hey, you can do it in camlp4" though he may not > know how to do it in camlp4. > But it's a bit embarassing that camlp4 did not evolve very > well(partly due to the fragmentation of camlp[4,5]), another fact is > that camlp4 is not *designed*, it's like a prototype that works but not > carefully designed, and it does not provide anything out of the box and > itself was written in a verbose way. > It's time to bring the powerful tool back, my advisor Steve and I > started a new project Fan, which is mainly to evolve the camlp4 macro > system to be more expressive and more powerful, push the Camlp4 to the > next level. For me, I am a long-term Lisp programmer, I appreciated the > value of macros, I would really be happy to see we could make a such > powerful macro systems. > Here is my repo https://bitbucket.org/HongboZhang/camlp4 > I already finished some cool staff, to mention just a few: > 1. A very robust bootstrapping system, previously it takes me 20 > minutes to ver/ify my patches to camlp4 can reach a fixpoint or not, but > now you can compile your modification within seconds, and reach a > fixpoint under 2 minutes, this accelerate the development cycles > immediately./ > / 2. Now you can customize your lexer now, previously it's impossible( > and a number of bug fixes) you can do deep anti-quotation like / > / <:expr< <:expr< $($(deepantiquot)) >> >> / > 3. Linking the compiler and a number of cool features (see the slides) > 4. A macro which write macros to scrap all the bolierpolate code for > generic programming, now you can customize your deriving stuff in ten > lines (previously thousands of lines of code to write camlp4 plugin) > 5. A number of mini-DSLs and more to be expected > I love macros, I would commit to the project for a long > time(probably my Ph.D term), I promise that I would write the > documentation to make users happy( I am also writing a book about > macros, it's un-readable though). And I am really happy to co-laborate > with anyone who love camlp4. > Syntax matters, if you see that coffescript is now already a > success, camlp4 or Fan is actually more expressive than that, Dear ocaml > programmers, let us find a way to make ocaml more beautiful. I am also > open minded to any discussion about the future of camlp4 > Many thanks (sorry for my bad English) > -- > Regards > -- Bob