[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
feeping creatures, again
when i first asked for suggestions for features to excise from es,
i was hoping for more responses like Noah's -- a laundry list of
things to hack and slash. i just sent out an all-too-denfensive
note saying where i disagreed and (occasionally) agreed with Noah.
it's for a lot of reasons that i write notes about es like that:
+ i have a long history of over-designing systems.
+ i give in too easily when people suggest new things.
+ the parts of es that are gratuitous, i probably wrote,
so i'm defensive. (the clean, elegant, and small parts
were Byron's.)
now, a lot of the suggestions (from Noah's list and followups) have
been effectively ``move this from a primitive to initial.es'' and
that's fine, it probably (though not always) brings down the size
of the compiled code. but that's it. it does nothing for the
conceptual size of the shell, which is what is most troubling.
so, i solicit the list again for things that can go. this time,
i'm not at all concerned with implementation. give me paragraphs
of the man page that you think can go, and if we come to some
consensus, the parts of the shell that implement them will go.
a couple of examples. has anyone actually used either of these
behaviors?
; echo <={%fsplit '' foo}
f o o
; for (i = x y z; j = 1 2) echo $i $j
x 1
y 2
z
;
one i put in because the syntax was there waiting to be used, the
other because someone (i forget who) asked for it and it seemed
harmless.
cutting things out of systems is hard & i'm terrible at it. but
removing stuff later is even harder; let's nip this in the bud.
paul