我是APL的新手,我开始使用APL代码库,该代码库使用APL组件文件(例如⎕FSTIE
,⎕FREAD
,⎕FAPPEND
)。我还被要求研究将这些组件文件的内容传输到SQL数据库,其中的一点是将数据提供给其他应用程序。
一些文件组件包含文本,如果存储在本机文件中,它们看起来好像可以正常工作,但是大部分组件文件大多包含“不规则”的数字矩阵,这些矩阵随意打击我最终将实现为每个组件一个DB2表。到目前为止最大的是500行×20列。我还没有(明知)看过任何嵌套数组,尽管我只是勉强抓住了表面。到目前为止,只有字符文本和数字向量和矩阵。
将这些组件文件的内容传输到Native Files也是一个明智的选择吗?为什么一个人会使用APL组件文件?
正在使用的APL系统是Windows 7下的Dyalog APL。它已经存在了一段时间,没有人确定需要多长时间。
答案 0 :(得分:1)
使用组件文件的优点是,您可以使用单个本机操作来读取/写入任何APL阵列(复杂且大到任意),而您可能需要编写自己的专用函数你想为.TXT-Format或.XML中的大型复杂数组做到这一点。 (幸运的是,Dyalog的⎕CSV
和⎕XML
将为您做到这一点,但就性能而言,组件文件几乎肯定会获胜。)
答案 1 :(得分:1)
第一个文件系统由I.P.Sharp Associates和STSC(两家首屈一指的APL分时公司)于20世纪60年代末共同开发。文件系统和新系统功能,如[] FMT,报告格式,是使APL \ 360更具商业可行性的努力的一部分。围绕那时的IBM产品APL.SV将TSIO作为Native Files的模拟。 APL.SV以及未来的IBM解释器(如VSAPL和APL2)都有售后文件系统。
为什么要使用APL组件文件?
当时,如果使用夏普或STSC分时,这是唯一可用的东西。文件系统也使开发变得非常容易。当备选方案是使用本机文件时,它可以说是持久化APL数据的最佳方式。如果您的系统最初是在分时运行,或使用一些早期的STSC(Manugistics)解释器,它可能从一开始就使用组件文件。从APL访问DB2,首先以AP126的形式访问大型机APL2和Sharp APL,在80年代中期左右出现了。
当然,不同供应商之间的组件文件系统(如工作空间)是不兼容的。
将这些组件文件的内容传输到本机文件也是一个明智的选择吗?
取决于内容。听起来好像在这些数字组件中可能存在本地数据库。这开辟了更大的数据迁移问题。