[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] Tla spork

From: Tom Lord
Subject: Re: [Gnu-arch-users] Tla spork
Date: Sat, 28 Aug 2004 11:55:18 -0700 (PDT)

    > From: address@hidden (Zenaan Harkness)

    > >     > ~/.arch-params/hats/$HAT/id is the same format as 
    > >     > The id selection is taken care of in arch_my_id_file (I think) by
    > >     > returning the former if a hat string is passed and the latter if 
    > >     > is passed.

    > >     > Is it preferable to break it into ~/.arch-params/hats/$HAT/name 
    > >     > /uid (or /email)?

    > > My thinking has been that we should probably start consistently using
    > > s-exp based syntaxes and making sure that they pun as something that
    > > could be a macro.   That way, among other wins, we have less worry
    > > about extending the syntaxes in the future.   Something like:
    > > 
    > > 
    > >         ~/.arch-params/hats/$HAT/id:
    > > 
    > >         (arch-user "Tom Lord" "address@hidden")
    > > 
    > > or maybe as a tagged alist:
    > > 
    > >         (user-params  (name "Tom Lord")
    > >                       (id "address@hidden"))

    > Just as an aside, I find this parens-encased data format to be quite
    > intuitive, and very appealingly shorter (and more consistent and easier
    > to learn) than XML 'tags'.

    > It's just prefix-based mathematical/ logical expressions that jar
    > my thought process.

    > Quick question: what exactly does s-exp stand for??

"Symbolic expression", I believe.   That's the acronym.

I recall that the term originates with McCarthy (e.g., see the lisp
1.5 manual) and originally did mostly refer to a particular syntax
(one that is distinct from the isomorphic "m-exp" syntax).   

Nowadays, it informally means, among lispers, a data structure built
up from certain primitive pairs (cons pairs, etc.) and it is well
known and always presumed that most such values have a
printable/readable representation using traditional lisp-ish syntax.

Strictly literal s-exps, e.g., made from cons-pairs and all, are *not*
appropropriate for arch in any way, afaict.   Xl uses a smaller,
slightly lower level, slightly more general set of primitive and
composite types than lisp.   It's close enough that if you say to some
people "s-exp" (since "s-exp" is such an informal term) some people
(e.g. Matthew) will get what you're saying.

    > > Yes, that's overkill for just this one file but some of the other
    > > changes coming up for ~/.arch-params involve restructuring and
    > > increasing the amount of structure to other data (e.g., the "table
    > > design" for archive registries has lots of fields, some of which
    > > contain lists, etc.)  I think that, therefore, we'll want "tla/libawk"
    > > to be a lot more serious --- basically to be just the data-structure
    > > foo from xl plus relational operators on top of that.

    > If it means consistency across config files, I wouldn't call it
    > overkill (I'd call it consistency :)

Right.   Sometimes the cost of consistency is that you must spend a
little more for *today's* immediate problem than you otherwise would,
because otherwise, *tomorrow's* immediate problem will be too
expensive to solve.

So, by "overkill", I only mean that my arch development team is taking
a responsible attitude towards the long term.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]