caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Daniel Bünzli" <daniel.buenzli@erratique.ch>
To: Tiphaine Turpin <Tiphaine.Turpin@inria.fr>
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] [ANN] TypeRex release 1.0.0 candidate 1
Date: Wed, 22 Feb 2012 21:55:27 +0100	[thread overview]
Message-ID: <72EAA5944D204F96B346004A6E45A1B0@erratique.ch> (raw)
In-Reply-To: <4F452F9F.4050203@inria.fr>

Hello,  

I gave it a (superficial) try. Here are a few comments. 
> * Improved syntax coloring

I find both your color scheme and tuareg's one to be particularly unreadable (too many colors and use of bold). Don't take it personally, these things are about taste. Anyway, would it be possible to include, in the distribution a theme matching the mode of OCaml's distribution ? 



> * Auto-completion of identifiers (experimental)



Disregarding the menu showing the possible completions, is it significantly different from 'dabbrev-expand ? Is it module-aware, couldn't for example complete the symbols from List.* ? Is it type-aware ? Also on my machine it seems to slowdown typing significantly. 

Finally, one thing I don't like is the way you ask me to change my build system to use your tools. I don't want to directly mention your tools. Mainly because I want to distribute the software and don't want to impose a dependency on your tools to my users/contributors and don't want to complexify my build system. 

Here is a suggestion. I think most people using emacs invoke their build system via a shell script (if they use ocamlbuild, here is an example [1]) or a Makefile. If these scripts/Makefiles are "correctly" written you can override their tools by setting (more or less) standard environment variables like (OCAMLC, OCAMLOPT, OCAMLBUILD). Now when I C-cc, I don't mind writing something like :

ocp-env ./build 

instead of :

./build 

Basically ocp-env just acts like env(1) and set various variables in the environment before invoking the script/Makefile. E.g.

OCAMLBUILD="ocamlbuild -ocamlc ocp-ocamlc.opt -ocamlopt ocp-ocamlopt.opt"
OCAMLC=ocp-ocamlc.opt
CAMLC=ocp-ocamlc.opt
OCAMLOPT=ocp-ocamlopt.opt
CAMLOPT=ocp-ocamlopt.opt

This could be just a shell-script around env(1), by the way. Now instead of instructing your users to change their Makefile/scripts just tell them to wrap their invocation with ocp-env. 

Another suggestion is to include the wrapper ocp-ocamlbuild defined as suggested above in OCAMLBUILD. Then, instead of instructing your users to change their myocamlbuild.ml that they may not even have (if they are just using a _tags file), just tell them to invoke ocp-ocamlbuild. Even simpler. 

Other than that the whole thing seems quite nice. I may see myself eventually using this. 

Thanks for the tools. 

Best,

Daniel

[1] http://erratique.ch/repos/cmdliner/tree/build?id=v0.9.0



  parent reply	other threads:[~2012-02-22 20:55 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-22 18:10 Tiphaine Turpin
2012-02-22 17:32 ` Dmitry Grebeniuk
2012-02-22 17:45   ` Thomas Gazagnaire
2012-02-22 20:55 ` Daniel Bünzli [this message]
2012-02-23  0:46   ` Daniel Bünzli
2012-02-23  1:04 ` [Caml-list] " Hongbo Zhang
2012-02-23 11:22   ` Thomas Gazagnaire
2012-03-02 19:51 ` [Caml-list] " Vu Ngoc San
2012-03-02 20:01   ` Çagdas Bozman
2012-03-06 12:02 ` Stefano Zacchiroli
2012-03-06 14:27   ` Tiphaine Turpin

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=72EAA5944D204F96B346004A6E45A1B0@erratique.ch \
    --to=daniel.buenzli@erratique.ch \
    --cc=Tiphaine.Turpin@inria.fr \
    --cc=caml-list@inria.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).