everyone decided to build operating systems around C code and a portable shell and then they standardized that, but everyone agreed on a whole lot of other things also and they decided that wasn’t worth the bother
Posix be like, “ok but suppose someone is developing an operating system which never has to process XML” 🙄
this might be the easiest portableish way of doing this and that is a condemnation of the current state of computing on Posix
here is a shell command you can run to test whether the value of MAYBE_NCNAME is an ncname or not; returns exit status 0 if it is and 1 otherwise
printf '%s\n' '<transform xmlns="http://www.w3.org/1999/XSL/Transform" xmlns:exsldyn="http://exslt.org/dynamic" version="1.0"><param name="thing"/><template match="/"><choose><when test="/self::node()[translate(normalize-space($thing), " /([,*", "")=string($thing) and exsldyn:evaluate(concat("not(self::exsldyn:", $thing, ")"))]">ok</when><otherwise>ng</otherwise></choose></template></transform>' | xsltproc --stringparam thing "${MAYBE_NCNAME}" --html --novalid - /dev/null 2>/dev/null | grep -F -q -x 'ok'
/self::node()[translate(normalize-space($thing), ' /([,*', '')=string($thing) and exsldyn:evaluate(concat('not(self::exsldyn:', $thing, ')'))]
i think is safe
this probably actually needs a touch of hardening (making sure $thing does not contain a '[' or '/', or else you could run into serious issues) but
XSLT 1.0 + EXSLT is a constant exercise in things you probably weren’t intended to be able to do but nevertheless can
one white liberal line of argument is that if people get used to treating robots that interface using human language as tools, then they might extend that and also start treating humans themselves as tools. but bitch they already do. bitch they already do
they argue that language processing robots are like dolls, and obviously it is good to treat dolls like humans even though they are in fact inanimate objects
i would counter that the whole FUNCTION of dolls is to be human standins. in this sense they are endowed with a certain human spirit so treating them like humans is appropriate
however, the function of language processing robots is not to be human standins but (only) to complete tasks using human language as an interface. endowing them with a human spirit does not make them more effective at this aim and in fact only makes it more difficult to critically analyse their outputs. so i disagree that there is a comparison to be had between robots and dolls
Administrator / Public Relations for GlitchCat. Not actually glitchy, nor a cat. I wrote the rules for this instance.
“Constitutionally incapable of not going hard” — @aescling
“Fedi Cassandra” – @Satsuma
I HAVE EXPERIENCE IN THINGS. YOU CAN JUST @ ME.
I work for a library but I post about Zelda fanfiction.