如果说Brainf-u-c-k语言只是难用的话,这个Whitespace可就很令人匪夷所思了。Whitespace只认三个空白字符:空格、Tab和换行,其他一切字符都当作注释来处理。以下翻译自Wikipedia。
引用
Whitespace是由Durham大学的Wdwin Brady和Chris Morris发明的,于2003年4月1日发布(和愚人节有关?)。和大多数语言通常忽略空白字符不同,Whitespace解释器忽略一切非空白字符。空格、Tab和换行是仅有的语法元素。这就带来了一个有趣的事实:一个Whitespace程序可以完美地嵌入进一个文章之中。
Whitespace是一种命令式堆栈型语言,程序运行在一个有一个栈(Stack)和一个堆(Heap)的虚拟机之上。编程者可以将任意大小的整数压入栈中(目前还没有实现对浮点数的操作)。堆常用作存储变量和数据结构的固定存储空间,用户可以直接访问。
Whitespace被戏称为“写秘密程序的语言”,因为重要的代码即使打印在纸上也无法被发现。
Whitespace已经被证明是图灵完备的。证明可以在主页的邮件列表中找到,其晦涩程度之大,目前还没有人对证明作出评论。下面是Hello World程序(红色表示空格,绿色表示Tab):
   
   	  	   
		    	
   		  	 	
		    	 
   		 		  
		    		
   		 		  
		    
	  
   		 				
		    	 	
   	 		  
		    		 
   	     
		    			
   			 			
		  
  	   
   		 				
		    	  	
   			  	 
		    	 	 
   		 		  
		    	 		
   		  
	  
		    		  
   	    	
		    		 	
   		 	
		    			 
   	 	 
		    				
    
	
	     
empty-line
    	
empty-line
 			 
empty-line
	  	 
	
     	
	   
empty-line
  	
empty-line
   	 
empty-line
empty-line/EOF
 

当然,和Brainf-u-c-k一样,这种语言没什么实际用途,我估计也只能用来教授一下计算理论而已。

 

评论
javatar 2008-02-16
[quote='huangyou"]跟写01啥区别[/quote]
看起来没什么区别, 估计就是他所说的"一个Whitespace程序可以完美地嵌入进一个文章之中".
Readonly 2008-02-15
brainf-uck的helloworld还能勉强理解,这个也太OOXX了吧...
ddbird 2008-02-15
01打出来能看,这个不能看
huangyou 2008-02-14
跟写01啥区别
发表评论

您还没有登录,请登录后发表评论

ggggqqqqihc
搜索本博客
存档
最新评论