zsh-workers
 help / color / mirror / code / Atom feed
From: "Andrej Borsenkow" <Andrej.Borsenkow@mow.siemens.ru>
To: "Sven Wischnowsky" <wischnow@informatik.hu-berlin.de>,
	<zsh-workers@sunsite.auc.dk>
Subject: RE: PATCH: parser (was: Re: PATCH: Improved _mailboxes)
Date: Fri, 25 Feb 2000 12:55:32 +0300	[thread overview]
Message-ID: <000601bf7f76$74847710$21c9ca95@mow.siemens.ru> (raw)
In-Reply-To: <200002250841.JAA25219@beta.informatik.hu-berlin.de>

>
> Bart Schaefer wrote:
>
> > On Feb 24, 10:07am, Sven Wischnowsky wrote:
> > } Subject: RE: PATCH: parser (was: Re: PATCH: Improved _mailboxes)
> > }
> > }
> > } Andrej Borsenkow wrote:
> > }
> > } > zcodeload file
> >
> > Let's not do that, shall we?  Let's stick with autoload and have a file
> > suffix convention, like emacs' .el and .elc, or something.  Heck, there
> > could even be separate fpath and compiled_fpath or ...
>
> I was wondering what to do when the directory isn't writable... but a
> $COMPILED_FPATH containing one directory would be enough. Hm. Do you
> want to say that you actually like the idea? Making everything ready
> for the mmap would be quite simple. The only problem I can see is that
> we would need to have a wordcode-verifier (but, of course, that can be
> done). That's yet another reason for having only a scalar containing
> only one directory name (so $COMPILED_FDIR might be a better name) --
> save compiled functions only if that is set and names an existing,
> writable directory. Users would set it to a directory in their account
> so that others can't trick them into using evil code.
>

Ehh ... not sure, I really did mean it all :-) Do you suggest compiling
functions on the fly and storing byte code externally? And mmaping every
single function? Just some points.

- at least on my system (and it is pretty much standard SVR4) process memory
is the list of segments. Every mmap results in adding address segment. To
resolve virtual address, system needs to search this list. mmaping 30-40
functions will add corresponding number of segments - not only is it slow,
but due to alignment restrictions it is going to waste virtual memory.

- I actually meant, that precompiled (standard) functions are installed in
default system location. This all was intended only for those functions,
that come with zsh distribution and can be considered "read only". Doing
this for arbitrary function (or any piece of code) has obvious problem of
keeping two in sync. I am not sure, if it worth troubles.

- in other words, my intention was to have single file with byte code for
distributed functions (that can be included into distribution or generated
as part of build). This will basically predefine all functions, making them
"part" of zsh binary  - without need to autoload it. If user wants to
override them - he can always define function again. (actually, step further
is to load them in memory and dump executable. Sounds familiar, does not it
:-)

/andrej


  parent reply	other threads:[~2000-02-25  9:56 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-02-25  8:41 Sven Wischnowsky
2000-02-25  9:44 ` Precompiled wordcode zsh functions Bart Schaefer
2000-02-25  9:55 ` Andrej Borsenkow [this message]
  -- strict thread matches above, loose matches on Subject: below --
2000-02-24 10:03 PATCH: parser (was: Re: PATCH: Improved _mailboxes) Sven Wischnowsky
2000-02-24  9:07 Sven Wischnowsky
2000-02-24 18:08 ` Bart Schaefer
2000-02-24  8:54 Sven Wischnowsky
2000-02-23 13:21 Sven Wischnowsky
2000-02-23 16:45 ` Bart Schaefer
2000-02-23 18:58 ` Peter Stephenson
2000-02-24  7:47 ` Andrej Borsenkow

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='000601bf7f76$74847710$21c9ca95@mow.siemens.ru' \
    --to=andrej.borsenkow@mow.siemens.ru \
    --cc=wischnow@informatik.hu-berlin.de \
    --cc=zsh-workers@sunsite.auc.dk \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

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).