http://www.perlmonks.org?node_id=655081

Nicely formatted!

++

--
I used to drive a Heisenbergmobile, but every time I looked at the speedometer, I got lost.

Replies are listed 'Best First'.
Re: Hilbert Curve
by benizi (Hermit) on Dec 05, 2007 at 23:46 UTC

Thanks. I just now managed to cut it down by quite a bit, but I think it looks too 'fat':

```#!/usr/bin/perl
use strict;
use warnings;
;\$"   =q%ef%;\$_=q~my(   \$i,\$x,\$y,\$p)=(0   ,0,
0,p   op|         |5)   ;my         \$r=   2<<
\$p;my@i=m   ap[(1)x\$r   ,2],1..\$r   ;subi{\$i[
\$x]               [\$y
]--}i;sub   p{((1<\$_[   0]?\$y:\$x)   -=1-(\$_[0
]&1   )*2         ,i)   for         -1,   1}s
ubf   {my(\$p,\$f)=@_;\$   p--;my@m=(\$f,3-   \$f,
1-\$                                       f);
my@o=(3-\$   f,\$f,\$f,\$f-2)if\$p>0;(   \$_&=3)for
@o,   @m;               @o&   &f(
\$p,pop@o)   ,@m&&p(po   p@m)while   (@o||@m)}
f\$p               ,(\$   p&1               )*2
;su   bb{y,y491   02,   b#\   n,;print}   map
{bf   or@   \$_}   @i~   ;y~    \n   ~~d   ;\$;
.=1;s&b&b   &g;eval;#   %\$_+28;(\$   x-={}for@