[From nobody Mon Mar 25 16:14:58 2013
Received: from condor-ext.wise.edt.ericsson.se (condor.tn.sw.ericsson.se
 [193.180.251.37]) by esealnt611.al.sw.ericsson.se with SMTP (Microsoft
 Exchange Internet Mail Service Version 5.5.2657.72)
 id XW9C8LLS; Fri, 12 Dec 2003 04:51:07 +0100
Received: from hades.cslab.ericsson.net (hades.cslab.ericsson.net
 [193.180.168.23])
 by condor-ext.wise.edt.ericsson.se (8.12.10/8.12.10/WIREfire-1.8) with ESMTP
 id hBC3oESf019070; Fri, 12 Dec 2003 04:50:14 +0100 (MET)
Received: (from majordom@localhost)
 by hades.cslab.ericsson.net (8.10.0/8.10.0/hades-1.2) id hBC3klk18895
 for erlang-questions-outgoing; Fri, 12 Dec 2003 04:46:47 +0100 (CET)
Received: from catseye.mine.nu (d142-179-7-219.bchsia.telus.net
 [142.179.7.219])
 by hades.cslab.ericsson.net (8.10.0/8.10.0/hades-1.2) with SMTP id
 hBC3kgM18890
 for &lt;erlang-questions@erlang.org&gt;; Fri, 12 Dec 2003 04:46:43 +0100 (CET)
Received: (qmail 39332 invoked by uid 1001); 12 Dec 2003 03:47:56 -0000
Date: Thu, 11 Dec 2003 19:47:56 -0800
From: Chris Pressey &lt;cpressey@catseye.mine.nu&gt;
To: erlang-questions@erlang.org
Subject: ANN: erlxec (was: Re: small poll)
Message-Id: &lt;20031211194756.41b4883c.cpressey@catseye.mine.nu&gt;
Organization: Cat's Eye Technologies
X-Mailer: Sylpheed version 0.9.7 (GTK+ 1.2.10; i386-portbld-freebsd4.9)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Sender: owner-erlang-questions@erlang.org
Precedence: bulk

On Thu, 11 Dec 2003 10:20:39 +0100
&quot;WILLIAMS Dominic&quot; &lt;D.WILLIAMS@csee-transport.fr&gt; wrote:

&gt; Please don't make compile times any longer!

If it's the slowness of &quot;erlc&quot; that's got you down, you might want to
check out &quot;erlxec&quot;:

  http://catseye.webhop.net/projects/erlxec-2003.1211/
  http://catseye.webhop.net/projects/erlxec-2003.1211.tgz

(Those who are Tragically Firewalled may have better luck trying
  http://www3.telus.net/~cpressey/distfiles/erlxec-2003.1211.tgz
instead.)

erlxec is basically a rewrite, in C, of a Perl script I was working on a
couple of months ago called 'tellerl'.  erlxec is like erl_call, except
optimized for running Erlang functions as if they were utility programs,
from the operating system shell.  The logic goes kind of like this:

- The startup and shutdown times of the BEAM emulator are dismal.
- But that's forgivable, because it's primarily for long-running tasks,
not short-lived utilities.
- But &quot;erlc&quot; is a short-lived utility and it starts a BEAM emulator.
- But you can get around that by using c(module) in EShell.
- But you can't do that inside a Makefile without, uhm, starting a BEAM
emulator.
- But you can start a BEAM emulator in the background first, then use
erl_call.
- But erl_call doesn't understand when you change the current working
directory and/or environment variables, and other little things.
- So write a little program like erl_call except different.

It's still at the proof-of-concept stage, but the proof is in the
pudding (or test run, as the case may have it) (drum roll, please):

- A rebuild of the entire Jungerl, with &quot;ERLC := /usr/local/bin/erlc&quot;,
took 10 minutes 24 seconds on my machine.
- With &quot;ERLC := erlxec erlc&quot; it took only 5 minutes 4 seconds.

The source code (erlxec.c) more than likely has some FreeBSDisms in it;
I'd greatly appreciate some help making it more portable, even if it's
only a report of how it fails to compile on Linux and other systems.

-Chris

This communication is confidential and intended solely for the addressee(s). Any unauthorized review, use, disclosure or distribution is prohibited. If you believe this message has been sent to you in error, please notify the sender by replying to this transmission and delete the message without disclosing it. Thank you.

E-mail including attachments is susceptible to data corruption, interruption, unauthorized amendment, tampering and viruses, and we only send and receive e-mails on the basis that we are not liable for any such corruption, interception, amendment, tampering or viruses or any consequences thereof.

]