_________ = ___(____[________])- (__+___)/(______^_____ ); # Really?
Posts to comp.lang.awk with identifiers named only with _'s are
nearly impossible to read, especially on monitors that display
multiple _'s as a continuous line (versus small breaks seen in dashes
-----).
Thank you for making readable code.
_________ = ___(____[________])- (__+___)/(______^_____ ); # Really?
Posts to comp.lang.awk with identifiers named only with _'s are nearly impossible
to read, especially on monitors that display multiple _'s as a continuous line >(versus small breaks seen in dashes -----).
Thank you for making readable code.
In article <d6a0fdf8-b7e1-4c3c...@googlegroups.com>,
J Naman <jna...@gmail.com> wrote:
_________ = ___(____[________])- (__+___)/(______^_____ ); # Really?That's the whole point of those posts.
Posts to comp.lang.awk with identifiers named only with _'s are nearly impossible
to read, especially on monitors that display multiple _'s as a continuous line
(versus small breaks seen in dashes -----).
Thank you for making readable code.
That code is not intended to be readable.
I think that the lunatic who posts those can be safely ignored.
--
The randomly chosen signature file that would have appeared here is more than 4
lines long. As such, it violates one or more Usenet RFCs. In order to remain in compliance with said RFCs, the actual sig can be found at the following URL:
http://user.xmission.com/~gazelle/Sigs/RightWingMedia
In article <d6a0fdf8-b7e1-4c3c-a988-566a44bf0c9bn@googlegroups.com>,
J Naman <jnaman2@gmail.com> wrote:
_________ = ___(____[________])- (__+___)/(______^_____ ); # Really? >>Posts to comp.lang.awk with identifiers named only with _'s are nearly impossible
to read, especially on monitors that display multiple _'s as a continuous line
(versus small breaks seen in dashes -----).
Thank you for making readable code.
That's the whole point of those posts.
That code is not intended to be readable.
$ cat demangle.tl
(let ((letters (list-seq "a".."z"))) ;; list strings "a" to "z"
(flow
(get-string) ;; get stdin as one big string
(tok #/_+/ t) ;; tokenize
(mapcar [iffi (op starts-with "_") ;; map __ tokens to letters
[chain len pred letters]])
(apply join) ;; reconstitute
(pprint)))
Tokens are defined a sequences of one or more underscores, or else--
sequences of other identifiers.
We replace an underscore token by taking the predecessor of its length,
and indexing into the list of "a" to "z" strings: _ maps to a, __ to b
and so on.
A list can be used as a function, which is how letters works in the expression [chain len pred letters]. When a list is used as a
one-argument function, the argument is a zero-based integer index which retrieves an element from the list.
Sysop: | DaiTengu |
---|---|
Location: | Appleton, WI |
Users: | 793 |
Nodes: | 10 (1 / 9) |
Uptime: | 39:41:55 |
Calls: | 11,106 |
Calls today: | 3 |
Files: | 186,086 |
Messages: | 1,751,469 |