我们之前介绍过“Whitespace”编程语言,这是一门非常奇妙的编程语言。在“Whitespace”编程语言中,任何非空白字符都将被忽略,只有空格、制表符和换行符被认为是有效的语义字符。也就是说,可以把用“Whitespace”编程语言编写的代码隐藏在其他文本和代码中,具有隐形代码的效果。而我今天要讲的语言就更精彩了。它被称为文件夹。顾名思义,这种语言没有代码,也没有代码文件。这种语言的代码就是操作系统的目录结构。事实上,文件系统目录结构与普通编程语言的进程结构非常相似。它就像各种语法树。在“文件夹”编程语言中,代码结构是这样的。子目录的名称形式。例如,这里有一个“Hello,World”程序:它是如何工作的?这个最外层目录是程序的名称“HelloWorld”。目录按目录顺序读取,本程序的最高层子目录为“Setup”。“设置”是打印命令的另一个名称;下表描述了各种名称的语义,以区别于Windows系统中最常见的目录名称,例如“Programfiles”。然后,目录中有很多“img”目录,名称中的“(2)”、“(3)”等数字被忽略,用于区分同一目录下多个相同的目录.“-Copy”等字符也将被忽略(这些字符是Windows在复制目录时自动添加的)。目录名开头的数字是程序员用来控制程序流程的。下面是一个例子:Newfolder(2)Newfolder-CopyNewfolder-Copy(2)Ifif10ifif-Copy(1)等。字符串“Hello,World!”分为四个部分,使语义更清晰,更易于阅读。“%20”表示一个空白字符。“文件夹”是一个面向词汇的编程系统,这是与大多数其他面向逻辑的编程系统的重要区别。“文件夹”目录下可以放置各种文件,但这些文件会被忽略。下面是用“文件夹”编程语言编写的“99瓶啤酒”程序。“99瓶啤酒”通常用来表达使用循环和变量的最简单的代码示例。请注意以下对空格和逗号的特殊处理:目前,“文件夹”编程语言仅支持Windows平台。它的代码解析器是开源的,你可以在github上找到它。https://github.com/rottytooth/Folders
