caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Dustin Sallings <dustin@spy.net>
To: John J Lee <jjl@pobox.com>
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] Executable size?
Date: Wed, 12 Nov 2003 11:04:59 -0800	[thread overview]
Message-ID: <1CB6CB78-1543-11D8-A660-000393CFE6B8@spy.net> (raw)
In-Reply-To: <Pine.LNX.4.58.0311121823030.2472@alice>


On Nov 12, 2003, at 10:36, John J Lee wrote:

>> 	The stuff I build on my Mac ends up being about 300k so far.  That
>> seems reasonably small to me.
>
> Thanks.  From how many lines of source code?

	Probably around 800 of my own and whatever the unix library brings.

> How big is the "hello world" executable?

-rwx--x--x  1 dustin  staff   138452 12 Nov 10:55 a.out*
(or stripped)
-rwx------  1 dustin  staff  111532 12 Nov 10:55 a.out*

>> 	I'm not sure what a modem has to do with your distribution, but there
>
> If you're distributing executables over the internet to people who use
> modems (ie., most people ;-), download size is important.

-rwx------  1 dustin  staff  42425 12 Nov 10:55 a.out.gz*

>> are options.  You could distribute the source to your app (which will
>> be way smaller than the equivalent C or C++ application) and compile
>> elsewhere, or you can use the transfer time to bask in your
>> productivity and performance gains.  :)
>
> Unfortunately, neither is an option.  I want to distribute single
> executables (for Windows, anyway).  Actually, another issue: can O'Caml
> generate Windows DLLs?  ISTR some issue about that...

	I'm happy to say I've never written any code that was intended to run 
under Windows, so I can't answer that question.

>> 	Python is a bad reference for two reasons:
>>
>> 	1) You don't typically distribute compiled python apps (and when you
>> do, it's always bytecode).
>> 	2) Ocaml's runtime is *amazingly* fast.
>
> Well, bad reference for what purposes?  I don't care whether there's
> bytecode, machine code, or lemon jelly in my .exes, as long as they're
> small :-)  And I don't need any speed above what Python provides.

	I wasn't aware you could distribute python exes.  That was my point.  
You can for OS X because of the way applications work in OS X, but 
that's quite different from anything I've seen in Windows (which, 
AFAIK, doesn't even ship with python).

	I have to say I'm really surprised by such a strong emphasis on 
executable size.  I've been learning various programming languages 
specifically because I want to create more reliable applications with 
reasonable performance with less effort (both initially and throughout 
the lifetime of the application).

-- 
Dustin Sallings

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  reply	other threads:[~2003-11-12 19:05 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-12 16:14 John J Lee
2003-11-12 17:33 ` Richard Jones
2003-11-12 18:06   ` Dustin Sallings
2003-11-12 18:31     ` Sven Luther
2003-11-12 18:50       ` John J Lee
2003-11-13  9:10         ` Sven Luther
2003-11-13 13:46           ` John J Lee
2003-11-13 14:28             ` Sven Luther
2003-11-12 18:21   ` John J Lee
2003-11-12 22:53     ` Richard Jones
2003-11-12 23:50       ` John J Lee
2003-11-15 12:48     ` skaller
2003-11-15 15:25       ` John J Lee
2003-11-12 19:06   ` Brian Hurt
2003-11-12 18:38     ` Sven Luther
2003-11-12 19:04       ` Karl Zilles
2003-11-12 21:29         ` Brian Hurt
2003-11-12 20:03       ` Brian Hurt
2003-11-13  4:14         ` Kamil Shakirov
2003-11-13  9:06           ` Richard Jones
2003-11-13  9:18         ` Sven Luther
2003-11-12 18:46     ` John J Lee
2003-11-12 20:40       ` Brian Hurt
2003-11-12 20:10         ` Basile Starynkevitch
2003-11-12 20:35         ` John J Lee
2003-11-12 21:51           ` Brian Hurt
2003-11-12 21:35             ` David Brown
2003-11-12 22:12           ` Eric Dahlman
2003-11-12 23:32             ` Brian Hurt
2003-11-12 22:53               ` Eric Dahlman
2003-11-12 23:35               ` John J Lee
2003-11-12 23:44             ` John J Lee
2003-11-13  0:26               ` Karl Zilles
2003-11-13  1:29                 ` [Caml-list] F-sharp (was: Executable size?) Oleg Trott
2003-11-14  6:04                   ` [Caml-list] float_of_num Christophe Raffalli
2003-11-13 15:43               ` [Caml-list] Executable size? Eric Dahlman
2003-11-13 19:58                 ` John J Lee
2003-11-13 20:36                   ` Eric Dahlman
2003-11-13 22:16                     ` John J Lee
2003-11-15 13:41                   ` skaller
2003-11-15 15:13                     ` John J Lee
2003-11-15 18:07                       ` skaller
2003-11-15 13:36                 ` skaller
2003-11-15 15:01                   ` John J Lee
2003-11-15 17:53                     ` skaller
2003-11-13 13:37         ` Florian Hars
2003-11-12 18:05 ` Dustin Sallings
2003-11-12 18:36   ` John J Lee
2003-11-12 19:04     ` Dustin Sallings [this message]
2003-11-12 20:17       ` John J Lee
2003-11-12 20:01     ` Vitaly Lugovsky
2003-11-13  1:23 ` Nicolas Cannasse
2003-11-15 12:09 ` skaller

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=1CB6CB78-1543-11D8-A660-000393CFE6B8@spy.net \
    --to=dustin@spy.net \
    --cc=caml-list@inria.fr \
    --cc=jjl@pobox.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).