没有代码的编程语言:Folders

oschina
 oschina
发布于 2015年03月06日
收藏 45

之前我们介绍过“Whitespace”编程语言,这是一种很奇葩的编程语言,在“Whitespace”编程语言中,任何非空白的字符都是被忽略的,只有空格符,tab和换行符被认为是有效的语义字符。也就是说,你可以把用“Whitespace”编程语言编写的代码藏在其他的文本、代码中,具有隐形代码的效果。

而今天要说的这种语言更是奇葩,它叫做 Folders ,顾名思义,这种语言没有代码,也没有代码文件,这种语言的代码就是操作系统的目录结构。

事实上,文件系统目录结构跟普通编程语言的过程结构非常相似,它就像各种的语法树,在“Folders”编程语言中,代码的结构就是这样的,代码命令通过目录结构和其包含的子目录的名称构成。

比如,下面就是一个“Hello,World”程序:

它是如何运行的?

这最外层的目录是程序的名称,“Hello World”。目录的读取是按目录顺序,这段程序的第一层子目录是“Setup”。“Setup”是打印命令的别称;下面有张表描述了各种名称代表的语 义,这些名称区分于Windows系统里最常见的那些目录名,比如“Program files”。

接着,目录里出现了很多“Img”目录,名称中的 “(2),” “(3),”等数字是忽略不计的,它们用来区分同一目录下多个相同的目录。” – Copy”这样的字符也是忽略不计的(这些字符是拷贝目录时Windows自动加入的)。而目录名称前打头的数字是程序员用来控制程序流程的。下面是一个 样例:

New folder (2)
New folder - Copy
New folder - Copy (2)
If
if
10 if
if - Copy (1)
etc.

字符串“Hello, World!”被分成了四段,这样可以让语义看起来更加清晰好读。”%20“是空白符的意思。

”Folders“是一种面向词汇的编程系统,这是跟其它大多数的面向逻辑的编程系统的重要区别。”Folders“目录里可以放各种的文件,但这些文件是忽略不计的。

下面是一个用”Folders“编程语言编写的“99 Bottles of Beer”程序。“99 Bottles of Beer”通常是用来表达最简单的运用循环和变量的代码例子,请注意下面一个对于有空格和逗号的特殊处理:

目前,”Folders“编程语言只支持Windows平台。它的代码解析器是开源的,你可以在github上找到它。https://github.com/rottytooth/Folders

稿源:程序师

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:没有代码的编程语言:Folders
加载中

最新评论(52

映天蓝
映天蓝
最后异常不是抛"out of memory",改抛 "inode不够了"...
MewX
MewX
SpaceFuck Language
二小
编程只是人与机器交流的过程,方式不重要,重要的是你能驾驭得了它,此方从另一方面引入新的驾驭方式
水溶C100
水溶C100
一个目录不小心给删除了,然后里面的子目录。。。
LongRaindy
LongRaindy
果然奇葩!!
垂盆草
垂盆草
没意思
小宋
小宋
蛋疼的语言,蛋疼的是解释器使用c#写的
黄正文
黄正文

引用来自“梅开源”的评论

我一直在研究用思维导图编程
想想代码中有多少分支,变量,这思维导图得多大,跟用流程图生成代码一样,不适合高效开发
shikeaiDev
shikeaiDev
还是有代码。
时间在追我
时间在追我
这么编程,你造么?
返回顶部
顶部