Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: was: Re: endianness of wordcode



Bart Schaefer wrote:

> On Mar 30, 12:56pm, Sven Wischnowsky wrote:
> } Subject: Re: PATCH: was: Re: endianness of wordcode
> }
> } 
> } Bart Schaefer wrote:
> } 
> } > On Mar 29, 11:14am, Sven Wischnowsky wrote:
> } > } Subject: Re: PATCH: was: Re: endianness of wordcode
> } > }
> } > } So, this adds the -a option to zcompile which is needed to make
> } > } functions that are currently only marked for autoloading to be written 
> } > 
> } > This is still a bit odd, because it means you have to check yourself
> } > whether a function is defined or undefined before you know what result
> } > "zcompile -a -c ..." is going to produce.  I'd rather that you simply
> } > CAN'T compile both defined and undefined functions in the same pass.
> } 
> } Hm. Consider someone who has all his functions autoloaded (i.e. none
> } defined in .zshrc or other init files) and doesn't use kshautoload.
> } With the current state he can do `zcompile -ca all-funcs' to write them
> } all into one file. If we disallow compiling both already-loaded and
> } not-yet-loaded functions `in the same pass', it is impossible to do
> } that if at least one of the functions happens to be loaded already.
> 
> But that user will still get the wrong result if e.g. _cvs is one of the
> functions that happens to be loaded already.  Isn't it better to have to
> expend slightly more effort to get consistent and correct results than to
> easily be able produce an inconsistent and sometimes incorrect results?
> 
> Even something as simple as searching $fpath and printing a warning when
> a file with the same name as an already-loaded function is found, would
> be preferable to silently doing the wrong thing.  (That warning would be
> printed only when -a is given, of course.)

I'm starting to give in...

So, make `-a' the opposite of not-`-a', i.e. barf when there are
names of function not still makred for autoloading. Yes?

Or maybe make `-a' the opposite of `-c'? I.e. `-c' says that currently 
defined (not marked for autoloading) functions are to be written and
`-a' says functions marked for autoloading are to be written. We could 
then say `...to be written without signalling an error', so that `-ca' 
allows to mix both (I think I really want a way to do that, but it's
ok for me to make it as far from the default as possible). And then we 
can add a description of the _cvs problem in the manual, so that
people know why using this might be a problem.

Would that be acceptable for everyone?

Bye
 Sven


--
Sven Wischnowsky                         wischnow@xxxxxxxxxxxxxxxxxxxxxxx



Messages sorted by: Reverse Date, Date, Thread, Author