【发布时间】:2018-07-16 22:28:33
【问题描述】:
我正在与同事讨论 IBM i DDS(数据描述语言),他似乎有点惊讶于使用相同的语言来定义显示文件和物理/逻辑文件(表)。尽管两者都描述了单个记录和数据流(想想 DDS 显示子文件),但它似乎是一种不寻常的组合,我们想不出其他语言可以采用这种方法。这种方法从何而来?是否有其他语言使用它?
【问题讨论】:
标签: ibm-midrange
我正在与同事讨论 IBM i DDS(数据描述语言),他似乎有点惊讶于使用相同的语言来定义显示文件和物理/逻辑文件(表)。尽管两者都描述了单个记录和数据流(想想 DDS 显示子文件),但它似乎是一种不寻常的组合,我们想不出其他语言可以采用这种方法。这种方法从何而来?是否有其他语言使用它?
【问题讨论】:
标签: ibm-midrange
最初,在 AS/400 上,所有 IO 都是基于记录的。没有基于流的文件。顺便说一句,数据库文件和设备文件都是基于记录的。并且除了物理文件外,都支持多种记录格式。甚至通信文件也是基于记录的。由于所有这些文件类型都以通用方式处理,因此它们都由单一语言定义是有道理的。流文件是后来开发的,由 C 语言 API 而不是 DDS 支持。和其他计算环境一样,流文件是应用程序描述的,而不是像“本地”文件那样外部定义的。
有趣的是,不需要外部定义文件。它们可以被程序描述,并且打印机文件仍然经常这样定义。在这种情况下,文件以使用它们的语言(RPG 或 COBOL)进行描述。
【讨论】:
DSPF PF LF 是打卡技术的产物。
【讨论】: