Index finite lists of positive integers: Difference between revisions

Added Quackery.
(→‎{{header|Haskell}}: added solution)
(Added Quackery.)
Line 862:
[1, 2, 3, 5, 8] 14401279 [1, 2, 3, 5, 8]
</pre>
 
=={{header|Quackery}}==
 
<lang Quackery> [ $ "" swap
witheach
[ number$
char A join join ]
11 base put
$->n drop
base release ] is rank ( [ --> n )
 
[ 11 base put
number$
base release
[] $ "" rot
witheach
[ dup char A = iff
[ drop
$->n drop join
$ "" ]
else join ]
drop ] is unrank ( n --> [ )
</lang>
 
{{out}}
Testing in the Quackery shell.
<pre>/O> []
... 5 random 5 + times
... [ 10 random 1+ join ]
... say " Random list: "
... dup echo cr
... rank
... say " That list, ranked: "
... dup echo cr
... unrank
... say "That number, unranked: "
... echo cr
...
Random list: [ 9 9 10 6 1 7 5 2 ]
That list, ranked: 459086440222376570
That number, unranked: [ 9 9 10 6 1 7 5 2 ]
 
Stack empty.</pre>
 
=={{header|Racket}}==
1,462

edits