format change for precompiled files

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

format change for precompiled files

Luiz Henrique de Figueiredo
As a consequence of some changes to be introduced in 3.1, we had to
change the internal structure of bytecodes and this directly affects
the format of precompiled files, in a way that is incompatible with
binaries generated by Lua 3.0.

How serious is this change for you?
Do you had precompiled files for which you do not have the lua source files?

We never promised that we would not change the format of binary files because
we assume that your programs can always be recompiled.
However, we *might* write a conversion tool if there is a major need for it.

I take this opportunity to conduct a quick survey:

1. Do you use precompiled lua chunks? Why or why not?
2. Do you use precompiled lua chunks *across* platforms?
   (Did you know that precompiled chunks are supposed to be portable?)
3. Do you have precompiled files for which you do *not* have the sources?

Please send your replies directly to me.
Thanks a lot.
--
Luiz Henrique de Figueiredo                    email: [hidden email]
TeCGraf-Grupo de Tecnologia em Computacao Grafica, Dep. Informatica, PUC-Rio
Rua Marques de Sao Vicente 225                        voice: +55 21 529-9424
22453-900 Rio de Janeiro, RJ, Brasil                    fax: +55 21 294-8195
--

Reply | Threaded
Open this post in threaded view
|

Re: format change for precompiled files

Andre Luiz Clinio
 
1. Do you use precompiled lua chunks? Why or why not?

	I don't use them just because I had not an opportunity to do so. :)

2. Do you use precompiled lua chunks *across* platforms?
   (Did you know that precompiled chunks are supposed to be portable?)

	I know they are supposed to be portable.

3. Do you have precompiled files for which you do *not* have the sources?

	No, I don't.

Reply | Threaded
Open this post in threaded view
|

RE: format change for precompiled files

Bret Mogilefsky
In reply to this post by Luiz Henrique de Figueiredo
1) Yes.  We don't want our customers to have the source code for the
game, even if they can see all of the strings in the code.

2) If we port the game (highly likely) then yes, we will be packaging
the same chunks.

3) No, in fact one of the bewt things about Lua is that we don't have to
precompile chunks until right before we ship.

What are you planning for 3.1?  Did you ever do benchmarking of 3.0 vs.
2.5?


Bret

> -----Original Message-----
> From:	[hidden email] [SMTP:[hidden email]]
> Sent:	Thursday, August 14, 1997 6:18 AM
> To:	Bret Mogilefsky
> Subject:	format change for precompiled files
> 
> As a consequence of some changes to be introduced in 3.1, we had to
> change the internal structure of bytecodes and this directly affects
> the format of precompiled files, in a way that is incompatible with
> binaries generated by Lua 3.0.
> 
> How serious is this change for you?
> Do you had precompiled files for which you do not have the lua source
> files?
> 
> We never promised that we would not change the format of binary files
> because
> we assume that your programs can always be recompiled.
> However, we *might* write a conversion tool if there is a major need
> for it.
> 
> I take this opportunity to conduct a quick survey:
> 
> 1. Do you use precompiled lua chunks? Why or why not?
> 2. Do you use precompiled lua chunks *across* platforms?
>    (Did you know that precompiled chunks are supposed to be portable?)
> 3. Do you have precompiled files for which you do *not* have the
> sources?
> 
> Please send your replies directly to me.
> Thanks a lot.
> --
> Luiz Henrique de Figueiredo                    email:
> [hidden email]
> TeCGraf-Grupo de Tecnologia em Computacao Grafica, Dep. Informatica,
> PUC-Rio
> Rua Marques de Sao Vicente 225                        voice: +55 21
> 529-9424
> 22453-900 Rio de Janeiro, RJ, Brasil                    fax: +55 21
> 294-8195
> --

Reply | Threaded
Open this post in threaded view
|

RE: format change for precompiled files

Luiz Henrique de Figueiredo-2
In reply to this post by Luiz Henrique de Figueiredo
>What are you planning for 3.1?

we haven't really started planning any *changes* to the language, but we
are doing a major reorganization/clean-up of the code and this brought up
the need to change the format of precompiled chunks.

>Did you ever do benchmarking of 3.0 vs. 2.5?

the released version (3.0) is about 10% slower than 2.5 because of tag methods.
however, im some machines, 3.0 is actually faster than 2.5.
we don't think there was any loss.
do you have a different experience?
--lhf

Reply | Threaded
Open this post in threaded view
|

RE: format change for precompiled files

Bret Mogilefsky
In reply to this post by Luiz Henrique de Figueiredo
Nope, just wondering... I was remembering the message complaining of
poor performance in the beta and just wanted to check if that was
addressed before the release.  This is good information to have.  Do you
have a projected date for v3.1?  I wanted to update my modifications for
v3.0, but if you're going to be changing the code significantly, I'll
wait.

Bret

PS: It looks like the default Reply-To: field for the list is being set
to the list, rather than the author of the original message... 

> -----Original Message-----
> From:	[hidden email] [SMTP:[hidden email]]
> Sent:	Friday, August 15, 1997 4:02 AM
> To:	Bret Mogilefsky
> Subject:	RE: format change for precompiled files
> 
> >What are you planning for 3.1?
> 
> we haven't really started planning any *changes* to the language, but
> we
> are doing a major reorganization/clean-up of the code and this brought
> up
> the need to change the format of precompiled chunks.
> 
> >Did you ever do benchmarking of 3.0 vs. 2.5?
> 
> the released version (3.0) is about 10% slower than 2.5 because of tag
> methods.
> however, im some machines, 3.0 is actually faster than 2.5.
> we don't think there was any loss.
> do you have a different experience?
> --lhf

rdg
Reply | Threaded
Open this post in threaded view
|

Re: format change for precompiled files

rdg
In reply to this post by Luiz Henrique de Figueiredo
Luiz Henrique de Figueiredo wrote:

> As a consequence of some changes to be introduced in 3.1, we had to
> change the internal structure of bytecodes and this directly affects
> the format of precompiled files, in a way that is incompatible with
> binaries generated by Lua 3.0.
>
> How serious is this change for you?

It does not affect me.

> Do you had precompiled files for which you do not have the lua source
> files?

No.

>
>
> We never promised that we would not change the format of binary files
> because
> we assume that your programs can always be recompiled.
> However, we *might* write a conversion tool if there is a major need
> for it.
>
> I take this opportunity to conduct a quick survey:
>
> 1. Do you use precompiled lua chunks? Why or why not?

No

> 2. Do you use precompiled lua chunks *across* platforms?

No

>    (Did you know that precompiled chunks are supposed to be portable?)

No.

> 3. Do you have precompiled files for which you do *not* have the
> sources?
>

No.

Reply | Threaded
Open this post in threaded view
|

Re: format change for precompiled files

David Jeske-2
In reply to this post by Luiz Henrique de Figueiredo
First off, 

I don't mind the change of the binary format. I can't say I really make
use of it during the development cycle, and part of the reason I use Lua
is to make projects capable of "always" being in the development cycle. 

However, can you take this opportunity to make a small but (IMO)
significant improvement? The script format allows you to have #!<lua path>
as the first line, so you can just run lua binaries directly. How about
putting into the beginning of the binary format "#!lua\n" so that it can
be run directly as a program on most UNIX systems (given that lua is in
the path, I think that works). I know on some systems one can probably
setup a majic identifier for Lua, and then tell the system to run that
majic through a program, however, this is quick and easy and would work
for most things.

On Thu, Aug 14, 1997 at 10:18:46AM -0300, Luiz Henrique de Figueiredo wrote:
> As a consequence of some changes to be introduced in 3.1, we had to
> change the internal structure of bytecodes and this directly affects
> the format of precompiled files, in a way that is incompatible with
> binaries generated by Lua 3.0.

-- 
David Jeske (N9LCA) + [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: format change for precompiled files

Norman Ramsey-3
 > However, can you take this opportunity to make a small but (IMO)
 > significant improvement?  script format allows you to have #!<lua path>
 > as the first line, so you can just run lua binaries directly. How about
 > putting into the beginning of the binary format "#!lua\n" so that it can
 > be run directly as a program on most UNIX systems (given that lua is in
 > the path, I think that works). 

Here's an alternative suggestion --- support binary files something
like the way Icon does:

  #!/bin/sh
  
  case $# in
     0) exec "${ICONX-/usr/local/icon-9.3/bin/iconx}" "$0";;
     *) exec "${ICONX-/usr/local/icon-9.3/bin/iconx}" "$0" "$@";;
  esac
  
  echo "Could not execute ${ICONX-/usr/local/icon-9.3/bin/iconx}" 1>&2
  exit 1
  
  [executable Icon binary follows]
      
  ^L

and the binary follows <form feed><newline>.
The path names are chosen at installation time.
It would be easy to write a main() that would scan forward, undump,
and run.

Norman

Reply | Threaded
Open this post in threaded view
|

Re: format change for precompiled files

Michael Spalinski
In reply to this post by David Jeske-2
>>>>> "David" == David Jeske <[hidden email]> writes:

    David> However, can you take this opportunity to make a small but (IMO)
    David> significant improvement? The script format allows you to have
    David> #!<lua path> as the first line, so you can just run lua binaries
    David> directly. How about putting into the beginning of the binary
    David> format "#!lua\n" so that it can be run directly as a program on
    David> most UNIX systems (given that lua is in the path, I think that
    David> works). I know on some systems one can probably setup a majic

Or use '#!/usr/bin/env lua'. 

M.