読者です 読者をやめる 読者になる 読者になる

symmetric hello

見た目が対称ってのはどうかなぁと思って作ってみました。端末で見やすくしたくて、横幅を 80 文字以内におさえようとしてたら、何故か横幅ゴルフみたいな感じになってきて無駄に細くなりました。

                    ______={}//\\{}=______                    
                        _=+[]//\\[]+=_                        
        ______.___=""+[][++_]//\\[_++][]+""=___.______        
                   ____=""+{}//\\{}+""=____                   
               ______._=""+!_//\\_!+""=_.______               
                    __=""+!!_//\\_!!+""=__                    
                ___=_+_+_+_+_//\\_+_+_+_+_=___                
            _______=____[___]//\\[___]____=_______            
            _________=____[_]//\\[_]____=_________            
    ___________=______.___[_]//\\[_]___.______=___________    
 ______._____=______._[_+_+_]//\\[_+_+_]_.______=_____.______ 
                _____=__[+[]]//\\[[]+]__=_____                
                   ____=__[_]//\\[_]__=____                   
         ____________=__[_+_]//\\[_+_]__=____________         
                   __=_______//\\_______=__                   
                __+=_________//\\_________=+__                
              __+=___________//\\___________=+__              
             __+=______._____//\\_____.______=+__             
                    __+=_____//\\_____=+__                    
                     __+=____//\\____=+__                     
             __+=____________//\\____________=+__             
                  __+=_______//\\_______=+__                  
                    __+=_____//\\_____=+__                    
                __+=_________//\\_________=+__                
                     __+=____//\\____=+__                     
           _______=/ /[__]+""//\\""+[__]\ \=_______           
             ________=___+___//\\___+___=________             
              ________+=___-_//\\_-___=+________              
   ________=_______[________]//\\[________]_______=________   
_____________=______.___[___]//\\[___]___.______=_____________
             _______=________//\\________=_______             
                _______+=____//\\____=+_______                
       _______+=_____________//\\_____________=+_______       
         _______+=___________//\\___________=+_______         
               _______+=_____//\\_____=+_______               
       __________=______._[_]//\\[_]_.______=__________       
      ______.__=______._[_+_]//\\[_+_]_.______=__.______      
  ______.____=______._[___-_]//\\[_-___]_.______=____.______  
          ________=__________//\\__________=________          
          ________+=______.__//\\__.______=+________          
        ________+=______.____//\\____.______=+________        
               ________+=____//\\____=+________               
              ________+=_____//\\_____=+________              
         __________=_[__][__]//\\[__][__]_=__________         
                      __=____//\\____=__                      
              __+=______.____//\\____.______=+__              
                    __+=_____//\\_____=+__                    
             __+=____________//\\____________=+__             
                     __+=____//\\____=+__                     
       __+=___________+' "\\'//\\'//" '+___________=+__       
   ______._=__+_+___+ +[]+'"'//\\'"'+[]+ +___+_+__=_.______   
      ___________=__________(//\\)__________=___________      
                  ______._)()//\\()(_.______                  
               ______._=_____//\\_____=_.______               
        ______._+=___________//\\___________=+_.______        
      ______._+=_____________//\\_____________=+_.______      
       ______._+=______._____//\\_____.______=+_.______       
           _____=__+(___+_+_)//\\(_+_+___)+__=_____           
         _____+=(___-_-_)+'"'//\\'"'+(_-_-___)=+_____         
    _____=__________(_____)()//\\()(_____)__________=_____    
   ____________='\\'+_+_+ +[]//\\[]+ +_+_+'//'=____________   
______._____='\\'+___+(___-_)//\\(_-___)+___+'//'=_____.______
  ___________=______.___[_+_]//\\[_+_]___.______=___________  
              __=____________//\\____________=__              
              __+=______.____//\\____.______=+__              
                __+=______.__//\\__.______=+__                
                __+=______.__//\\__.______=+__                
                __+=_________//\\_________=+__                
         __+=______._____+' '//\\' '+_____.______=+__         
 __+='\\'+_+(_+___)+(_+_+___)//\\(___+_+_)+(___+_)+_+'//'=+__ 
                __+=_________//\\_________=+__                
                     __+=____//\\____=+__                     
                __+=______.__//\\__.______=+__                
          __+=___________+'!'//\\'!'+___________=+__          
                  ___='____='//\\'=____'=___                  
            ___+=______._+'.'//\\'.'+_.______=+___            
          ___+=________+_____//\\_____+________=+___          
           ___+='____=____||'//\\'||____=____'=+___           
           ___+=_______+_____//\\_____+_______=+___           
                ___+='____("'//\\'")____'=+___                
           ___+=__+'")'+_____//\\_____+'("'+__=+___           
            __________(___)()//\\()(___)__________            

smjs に喰わせたら標準出力に出て、ブラウザで読ませたら alert が出るんじゃないかと思います。

要は JS の記号プログラミングの使える文字がちょっと減ったバージョンでしかないので、さほど難しくはないです。 Perl は ? が必要で、 Ruby は $ なり & なりが必要で、なんかできないかなぁ…と思っています。

Quine にするとかはやればできると思うのですが、デカくなると見た目が悪くなるよなぁ…と思うのでした。

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h