{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T05:18:44Z","timestamp":1672550324185},"reference-count":0,"publisher":"Association for Computing Machinery (ACM)","issue":"4","content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGPLAN Not."],"published-print":{"date-parts":[[1999,4]]},"abstract":"The transformational model of program development allows obtaining programs correct by construction. When developing nontrivial programs, three activities arise: program synthesis, program transformation, and verification of properties; in addition, specification, use and implementation of ADTs must typically be considered all through these activities. The purpose of this article is to illustrate the need for all these activities by means of a nontrivial problem: encoding and decoding with prefix codes. Our exposition is rather informal, not being committed to any particular program transformation system, and it should be understood by any programmer looking forward to develop functional programs in a systematic way, while avoiding the burden of any particular system. In particular, we show the stages in the complete transformational development of a functional program, dealing successively with correctness and time efficiency, as well as the key decisions that are adopted.<\/jats:p>","DOI":"10.1145\/312009.312070","type":"journal-article","created":{"date-parts":[[2005,11,14]],"date-time":"2005-11-14T18:08:27Z","timestamp":1131991707000},"page":"54-60","update-policy":"http:\/\/dx.doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Calculating encoding and decoding functions for prefix codes"],"prefix":"10.1145","volume":"34","author":[{"given":"Crist\u00f3bal","family":"Pareja-Flores","sequence":"first","affiliation":[{"name":"Dept. Sistemas Inform\u00e1iticos y Programacidn, Universidad Complutense de Madrid. Avda. Puerta de Hierro s\/n, 28040-Madrid, Spain"}]},{"given":"J. \u00c1ngel","family":"Vel\u00e1zquez-Iturbide","sequence":"additional","affiliation":[{"name":"Escuela Superior de CC. ExperimentMes y Teenologla, Universidad Key Juan Carlos. C\/ Tulipgm s\/n, 28933-Mdstoles, Madrid, Spain"}]}],"member":"320","published-online":{"date-parts":[[1999,4]]},"container-title":["ACM SIGPLAN Notices"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/312009.312070","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,31]],"date-time":"2022-12-31T08:32:28Z","timestamp":1672475548000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/312009.312070"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1999,4]]},"references-count":0,"journal-issue":{"issue":"4","published-print":{"date-parts":[[1999,4]]}},"alternative-id":["10.1145\/312009.312070"],"URL":"https:\/\/doi.org\/10.1145\/312009.312070","relation":{},"ISSN":["0362-1340","1558-1160"],"issn-type":[{"value":"0362-1340","type":"print"},{"value":"1558-1160","type":"electronic"}],"subject":[],"published":{"date-parts":[[1999,4]]},"assertion":[{"value":"1999-04-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}