Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Re: Re: Re: *** japhy's qw is GODLIKE ***

by mtve (Deacon)
on Feb 21, 2002 at 07:22 UTC ( [id://146717]=note: print w/replies, xml ) Need Help??


in reply to Re: Re: Re: *** japhy's qw is GODLIKE ***
in thread Is Perl less compact than Ruby? (Kind of competition)

In short, ETA language recognizes and uses only 8 operators "htaoinse" (case insensitive), any other charasters are ignored.

Two operators controls program flow. 'a' pushes on stack number of next line (of original source!). 't' is conditional jump, it pops from stack two values and if second value is true then control flow goes to line with number of first value.

For example: ETA snippet "note at" first pushes "22" on stack ('n' goes to number mode, 'o' means '3' in number mode, 't' means 1, 'ot' means 31 in base 7 which is equal to decimal 22, 'e' exits number mode), then 'a' pushes number of next line (i.e. "2" if it's first line of source), then 't' makes jump to line "2" because 22 is true. In this case any other operators on current line are unreachable.

More detailed explanation is on author's page.

Our new algorithm is basically compiling ETA to Perl, and source grew from straight imperative to verily perlish obscurity.

Thank you very much for improvements!

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://146717]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (2)
As of 2024-04-26 00:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found