On Tue, Nov 18, 2008 at 22:38, Ludovic Courtès <[EMAIL PROTECTED]> wrote: > Hello, > > "Nicolas Pierron" > <[EMAIL PROTECTED]> writes: > >> On Tue, Nov 18, 2008 at 16:22, Ludovic Courtès <[EMAIL PROTECTED]> wrote: >>> Hello! >>> >>> "Nicolas Pierron" >>> <[EMAIL PROTECTED]> writes: >>> >>>> This mail is a draft about the description of the new writing style. >>> >>> I'm afraid I didn't get the whole point, partly because "New scheme" or >>> "new writing style" is not very descriptive IMO. >> >> True, may be we should call it the "fix style". > > Sorry, I don't understand the meaning of "the fix style" either. > > For me, the question is: what problem are you trying to solve?
I am trying to simplify NixOS to be easily extended by end-user. Therefore I am trying to get rid of long list concatenation that are only extendable by a bit of understandable code. The simplest syntax which is clear and understandable is the syntax uses to configure an entire computer with a few lines. >>> I agree that it makes it slightly more simple to write an Upstart jobs. >>> However, I think that passing `pkgs' and `config' to every single job is >>> too coarse-grain, and it breaks the principle of least authority. I >>> would feel more at ease if Upstart jobs were passed only what they >>> really need (which is roughly what the so-called "old scheme" does). >> >> One problem with the "old scheme" is that you need to add extra stuff >> everywhere when you want a bit of freedom. True freedom is not a good >> solution as explained in the principle of least authority. [1] I >> think a good solution have some kinds of scopes. So we have to >> distinguish 2 terms "require" and "inherit". (this is just an idea) > > IMO functions are a sufficient abstraction, with clear scoping rules: a > function can access anything that was passed as an argument, nothing > else (`import' aside). Implementing "ambient authority" by passing all > Upstart jobs `pkgs' and `config', and then trying to restrict that > authority (which is what you propose, AIUI) seems more complicated than > just conveying just as much authority as is needed. > >> I've presented this to Eelco some months ago, but Eelco is not >> everybody ... So I will probably create a branch in NixOS to continue >> this work. > > You mean it was presented off-line, e.g., in a face-to-face meeting? Yes. > Now, don't misunderstand me. I agree that the "old scheme" could be > improved, most notably by centralizing things that pertain to the same > Upstart job, rather than spread options, code, etc., over several files. > But I'm not sure that it's what you're trying to solve. That is one part of what I am doing. I am trying to get rid of unmaintainable/unextendable things which includes what you have mentioned. -- Nicolas Pierron http://www.linkedin.com/in/nicolasbpierron - If you are doing something twice then you should try to do it once. _______________________________________________ nix-dev mailing list [email protected] https://mail.cs.uu.nl/mailman/listinfo/nix-dev
