{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,11,13]],"date-time":"2023-11-13T00:11:58Z","timestamp":1699834318136},"reference-count":11,"publisher":"Wiley","issue":"11","license":[{"start":{"date-parts":[[2006,10,27]],"date-time":"2006-10-27T00:00:00Z","timestamp":1161907200000},"content-version":"vor","delay-in-days":8761,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1982,11]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p><jats:italic>Ffg<\/jats:italic> is a simple database system that consists of a set of many independent programs, called primitives, each of which performs a single operation. The user composes primitives by connecting the output of one to the input of the next to achieve a computation. Because they are independent, primitives are easily modified or replaced, and one can add programs to the set of primitives. Unlike the strongly typed interconnections provided by many languages, interconnections of <jats:italic>ffg<\/jats:italic> primitives are not type\u2010checked. The implementation <jats:italic>ffg<\/jats:italic> is also novel because <jats:italic>ffg<\/jats:italic> primitives are constructed out of lower level primitives instead of conventional programs. The selection of primitives, the type checking mechanism and the implementation are discussed.<\/jats:p>","DOI":"10.1002\/spe.4380121107","type":"journal-article","created":{"date-parts":[[2006,11,17]],"date-time":"2006-11-17T11:26:36Z","timestamp":1163762796000},"page":"1069-1079","source":"Crossref","is-referenced-by-count":4,"title":["The flat file system FFG: A database system consisting of primitives"],"prefix":"10.1002","volume":"12","author":[{"given":"Ouglas","family":"Comer","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"311","published-online":{"date-parts":[[2006,10,27]]},"reference":[{"key":"e_1_2_1_2_2","volume-title":"An Introduction to Database Systems","author":"Date C.","year":"1975"},{"key":"e_1_2_1_3_2","volume-title":"Principles of Database Systems","author":"Ullman J.","year":"1980"},{"key":"e_1_2_1_4_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380090102"},{"key":"e_1_2_1_5_2","doi-asserted-by":"publisher","DOI":"10.1002\/j.1538-7305.1978.tb02136.x"},{"key":"e_1_2_1_6_2","doi-asserted-by":"crossref","DOI":"10.1145\/1010726.1010728","volume-title":"Software Tools","author":"Kernighan B.","year":"1976"},{"key":"e_1_2_1_7_2","unstructured":"D.Hanson \u2018Ratfor programmer's manual\u2019 Technical Report TR81\u201021 University of Arizona 1981."},{"key":"e_1_2_1_8_2","unstructured":"B.Borden R. S.GainesandN.Shapiro \u2018The MH message handling system: user's manual\u2019 Technical Report R\u20102367\u2010AF Rand Corporation 1979."},{"key":"e_1_2_1_9_2","unstructured":"J.Ichbiahet al. Reference Manual for the Ada Programming Language United States Department of Defence (DARPA) 1980."},{"key":"e_1_2_1_10_2","doi-asserted-by":"publisher","DOI":"10.1147\/sj.111.0056"},{"key":"e_1_2_1_11_2","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380090403"},{"key":"e_1_2_1_12_2","doi-asserted-by":"publisher","DOI":"10.1002\/j.1538-7305.1978.tb02139.x"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380121107","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380121107","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,11,12]],"date-time":"2023-11-12T11:34:22Z","timestamp":1699788862000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380121107"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1982,11]]},"references-count":11,"journal-issue":{"issue":"11","published-print":{"date-parts":[[1982,11]]}},"alternative-id":["10.1002\/spe.4380121107"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380121107","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1982,11]]}}}