[erlang-questions] Stand Alone Erlang or Equivalent

Benjamin Tolputt bjt@REDACTED
Wed Sep 5 09:37:27 CEST 2007


Bob Ippolito wrote:
> Out of curiosity, what's the problem with a CEAN style solution? It's
> a standalone environment that you can move anywhere on the filesystem
> and it should still work. Other than the naming of the directories,
> it's not much different than how Mac OS X applications are packaged,
> and nobody really complains about that.
>
> -bob
>   
The problem is that the CEAN distribution requires the user to extract 
files to a directory tree THEN run a separate executable. For servers 
and so on (which generally require some form of "setup" to install 
anyway) this is not an issue, but for game development (the area of 
development the guys are working in) this is not so good (impatient, 
technically inexperienced user base).

Something along the lines of a Py2EXE would be ideal. Py2EXE zips and 
concatenates the required Python ".pyd" (i.e. Python's equivalent to 
"beam" files) to the end of an executable stub. This executable stub 
knows that it needs to retrieve the required code files (or in our case 
Erlang "beam" files) from the compressed archive at the end of the file 
rather than from the local file-system.

The way I would do it (if I were coding the solution) would be to have 
an Erlang BEAM VM executable which is hard-coded to look for the 
essential files from the end of itself (i.e the appended "BEAM" file 
archive). These BEAM files would then setup the internal Erlang 
environment to be able to load modules/beam files & DLL's from game 
specific locations and/or file formats (i.e. the BEAM's could be 
encrypted or compressed).

As I am a Windows-based developer - this is a little hard for me to 
contemplate doing as having to setup Cygwin on my dual-boot 
Windows/Linux development machine seems a little redundant (but 
necessary to compile the Erlang runtimes). If/when Erlang is fully 
compilable using MSVC or GCC alone - then I will be happy to work on it.

Regards,
B.J.Tolputt



More information about the erlang-questions mailing list