{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,1,11]],"date-time":"2025-01-11T23:10:17Z","timestamp":1736637017715,"version":"3.32.0"},"publisher-location":"Berlin, Heidelberg","reference-count":50,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540468431"},{"type":"electronic","value":"9783540468455"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2006]]},"DOI":"10.1007\/11894100_4","type":"book-chapter","created":{"date-parts":[[2006,11,9]],"date-time":"2006-11-09T13:11:30Z","timestamp":1163077890000},"page":"100-134","source":"Crossref","is-referenced-by-count":4,"title":["Exploiting Purely Functional Programming to Obtain Bounded Resource Behaviour: The Hume Approach"],"prefix":"10.1007","author":[{"given":"Kevin","family":"Hammond","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"4_CR1","unstructured":"Amey, P.: Correctness by Construction: Better can also be Cheaper. CrossTalk: the Journal of Defense Software Engineering, 24\u201328 (March 2002)"},{"key":"4_CR2","doi-asserted-by":"crossref","DOI":"10.1007\/978-1-4757-2714-2","volume-title":"Verification of Sequential and Concurrent Programs","author":"K.R. Apt","year":"1997","unstructured":"Apt, K.R., Olderog, E.-R.: Verification of Sequential and Concurrent Programs, 2nd edn. Springer, Heidelberg (1997)","edition":"2"},{"key":"4_CR3","unstructured":"Armstrong, J.: Erlang \u2014 a Survey of the Language and its Industrial Applications. In: Proc. INAP 1996 \u2014 The 9th Exhibitions and Symposium on Industrial Applications of Prolog, Hino, Tokyo, Japan, pp. 16\u201318 (1996)"},{"key":"4_CR4","doi-asserted-by":"crossref","unstructured":"Armstrong, J.: The Development of Erlang. In: Proc. 1997 ACM Intl. Conf. on Functl. Prog (ICFP 1997), Amsterdam, The Netherlands, pp. 196\u2013203 (1997)","DOI":"10.1145\/258948.258967"},{"key":"4_CR5","volume-title":"Concurrent Programming in Erlang","author":"J. Armstrong","year":"1993","unstructured":"Armstrong, J., Virding, S.R., Williams, M.C.: Concurrent Programming in Erlang. Prentice-Hall, Englewood Cliffs (1993)"},{"key":"4_CR6","unstructured":"Augustsson, L.: Compiling Lazy Functional Languages, Part II. PhD thesis, Dept. of Computer Science, Chalmers University of Technology, G\u00f6teborg, Sweden (1987)"},{"key":"4_CR7","volume-title":"High Integrity Ada: the Spark Approach","author":"J.G.P. Barnes","year":"1997","unstructured":"Barnes, J.G.P.: High Integrity Ada: the Spark Approach. Addison-Wesley, Reading (1997)"},{"key":"4_CR8","doi-asserted-by":"crossref","unstructured":"Blau, S., Rooth, J.: AXD-301: a New Generation ATM Switching System. Ericsson Review\u00a01 (1998)","DOI":"10.1016\/S0169-7552(98)00282-7"},{"key":"4_CR9","volume-title":"The Real-Time Specification for Java","author":"G. Bollela","year":"2000","unstructured":"Bollela, G., et al.: The Real-Time Specification for Java. Addison-Wesley, Reading (2000)"},{"issue":"9","key":"4_CR10","doi-asserted-by":"publisher","first-page":"1293","DOI":"10.1109\/5.97299","volume":"79","author":"F. Boussinot","year":"1991","unstructured":"Boussinot, F., de Simone, R.: The Esterel Language. Proceedings of the IEEE\u00a079(9), 1293\u20131304 (1991)","journal-title":"Proceedings of the IEEE"},{"key":"4_CR11","volume-title":"High-Level Parallel Programming Models and Supportive Environments (HIPS 1997)","author":"S. Breitinger","year":"1997","unstructured":"Breitinger, S., Loogen, R., Ortega-Mall\u00e9n, Y., Pena, R.: The Eden Coordination Model for Distributed Memory Systems. In: High-Level Parallel Programming Models and Supportive Environments (HIPS 1997), vol.\u00a01123. IEEE Press, Los Alamitos (1997)"},{"key":"4_CR12","unstructured":"Burstall, R.: Inductively Defined Functions in Functional Programming Languages. Technical Report ECS-LFCS-87-25, Dept. of Comp. Sci., Univ. of Edinburgh (1987)"},{"key":"4_CR13","doi-asserted-by":"crossref","unstructured":"Caspi, P., Pilaud, D., Halbwachs, N., Place, J.: Lustre: a Declarative Language for Programming Synchronous Systems. In: Proc. POPL 1987 \u2013 1987 Symposium on Principles of Programming Languages, M\u00fcnchen, Germany, pp. 178\u2013188 (January 1987)","DOI":"10.1145\/41625.41641"},{"key":"4_CR14","unstructured":"Claessen, K., Sheeran, M.: A Tutorial on Lava: a Hardware Description and Verification System, unpublished report, chalmers university of technology, sweden (August 2000)"},{"key":"4_CR15","doi-asserted-by":"crossref","unstructured":"Cola\u00e7o, J.-L., Pagano, B., Pouzet, M.: A Conservative Extension of Synchronous Data-flow with State Machines. In: Proc. ACM International Conference on Embedded Software (EMSOFT 2005), Jersey City, New Jersey, USA (September 2005)","DOI":"10.1145\/1086228.1086261"},{"key":"4_CR16","unstructured":"Fijma, D.H., Udink, R.T.: A Case Study in Functional Real-Time Programming. Technical report, Dept. of Computer Science, Univ. of Twente, The Netherlands, Memoranda Informatica, pp. 91\u201362 (1991)"},{"key":"4_CR17","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"257","DOI":"10.1007\/3-540-18317-5_15","volume-title":"Functional Programming Languages and Computer Architecture","author":"T. Gautier","year":"1987","unstructured":"Gautier, T., Le Guernic, P., Besnard, L.: Signal: A declarative language for synchronous programming of real-time systems. In: Kahn, G. (ed.) FPCA 1987. LNCS, vol.\u00a0274, pp. 257\u2013277. Springer, Heidelberg (1987)"},{"key":"4_CR18","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1007\/978-3-540-39815-8_3","volume-title":"Generative Programming and Component Engineering","author":"K. Hammond","year":"2003","unstructured":"Hammond, K., Michaelson, G.J.: Hume: A Domain-Specific Language for Real-Time Embedded Systems. In: Pfenning, F., Smaragdakis, Y. (eds.) GPCE 2003. LNCS, vol.\u00a02830, pp. 37\u201356. Springer, Heidelberg (2003)"},{"key":"4_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-44854-3_1","volume-title":"Implementation of Functional Languages","author":"K. Hammond","year":"2003","unstructured":"Hammond, K., Michaelson, G.J.: Predictable Space Behaviour in FSM-Hume. In: Pe\u00f1a, R., Arts, T. (eds.) IFL 2002. LNCS, vol.\u00a02670. Springer, Heidelberg (2003)"},{"key":"4_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"615","DOI":"10.1007\/3-540-45706-2_85","volume-title":"Euro-Par 2002. Parallel Processing","author":"J. Hawkins","year":"2002","unstructured":"Hawkins, J., Abdallah, A.E.: Behavioural Synthesis of a Parallel Hardware JPEG Decoder from a Functional Specification. In: Monien, B., Feldmann, R.L. (eds.) Euro-Par 2002. LNCS, vol.\u00a02400, pp. 615\u2013619. Springer, Heidelberg (2002)"},{"key":"4_CR21","doi-asserted-by":"publisher","first-page":"185","DOI":"10.1145\/604131.604148","volume-title":"POPL 2003 \u2014 Symposium on Principles of Programming Languages","author":"M. Hofmann","year":"2003","unstructured":"Hofmann, M., Jost, S.: Static Prediction of Heap Space Usage for First-Order Functional Programs. In: POPL 2003 \u2014 Symposium on Principles of Programming Languages, New Orleans, LA, USA, pp. 185\u2013197. ACM Press, New York (2003)"},{"key":"4_CR22","unstructured":"Hughes, R.J.M.: The Design and Implementation of Programming Languages, DPhil Thesis, Programming Research Group, Oxford (July 1983)"},{"key":"4_CR23","first-page":"308","volume-title":"Proceedings of the 1989 Glasgow Workshop on Functional Programming","author":"R.J.M. Hughes","year":"1990","unstructured":"Hughes, R.J.M., O\u2019Donnell, J.T.: Expressing and reasoning about non-deterministic functional programs. In: Proceedings of the 1989 Glasgow Workshop on Functional Programming, London, UK, pp. 308\u2013328. Springer, Heidelberg (1990)"},{"key":"4_CR24","doi-asserted-by":"publisher","first-page":"70","DOI":"10.1145\/317636.317785","volume-title":"ICFP 1999 \u2014 International Conference on Functional Programming","author":"R.J.M. Hughes","year":"1999","unstructured":"Hughes, R.J.M., Pareto, L.: Recursion and Dynamic Data Structures in Bounded Space: towards Embedded ML Programming. In: ICFP 1999 \u2014 International Conference on Functional Programming, Paris, France, pp. 70\u201381. ACM Press, New York (1999)"},{"key":"4_CR25","doi-asserted-by":"publisher","first-page":"410","DOI":"10.1145\/237721.240882","volume-title":"POPL 1996 \u2014 Symposium on Principles of Programming Languages","author":"R.J.M. Hughes","year":"1996","unstructured":"Hughes, R.J.M., Pareto, L., Sabry, A.: Proving the Correctness of Reactive Systems Using Sized Types. In: POPL 1996 \u2014 Symposium on Principles of Programming Languages, St.Petersburg Beach, Florida, pp. 410\u2013423. ACM, New York (1996)"},{"key":"4_CR26","doi-asserted-by":"crossref","unstructured":"Launchbury, J., Matthews, J., Cook, B.: Microprocessor Specification in Hawk. In: Proc. International Conference on Computer Languages, pp. 90\u2013101 (1998)","DOI":"10.1109\/ICCL.1998.674160"},{"issue":"4","key":"4_CR27","doi-asserted-by":"crossref","first-page":"308","DOI":"10.1093\/comjnl\/6.4.308","volume":"6","author":"P. Landin","year":"1964","unstructured":"Landin, P.: The Mechanical Evaluation of Expressions. The Computer Journal\u00a06(4), 308\u2013320 (1964)","journal-title":"The Computer Journal"},{"key":"4_CR28","doi-asserted-by":"publisher","first-page":"333","DOI":"10.1145\/199448.199528","volume-title":"Proc. POPL 1995 \u2014 1995 Symposium on Principles of Programming Languages","author":"S. Liang","year":"1995","unstructured":"Liang, S., Hudak, P., Jones, M.P.: Monad transformers and modular interpreters. In: Proc. POPL 1995 \u2014 1995 Symposium on Principles of Programming Languages, San Francisco, California, pp. 333\u2013343. ACM Press, New York (1995)"},{"key":"4_CR29","volume-title":"The Java Virtual Machine Specification","author":"T. Lindholm","year":"1999","unstructured":"Lindholm, T., Yellin, F.: The Java Virtual Machine Specification, 2nd edn. Addison-Wesley, Reading (1999)","edition":"2"},{"key":"4_CR30","first-page":"217","volume-title":"Engineering Safety-Critical Systems","author":"J. McDermid","year":"1996","unstructured":"McDermid, J.: Engineering Safety-Critical Systems, pp. 217\u2013245. Cambridge University Press, Cambridge (1996)"},{"key":"4_CR31","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"236","DOI":"10.1007\/3-540-45319-9_17","volume-title":"Tools and Algorithms for the Construction and Analysis of Systems","author":"A. Mycroft","year":"2001","unstructured":"Mycroft, A., Sharp, R.: Hardware\/Software Co-Design Using Functional Languages. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol.\u00a02031, pp. 236\u2013251. Springer, Heidelberg (2001)"},{"key":"4_CR32","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"202","DOI":"10.1007\/3-540-54152-7_66","volume-title":"PARLE \u201991. Parallel Architectures and Languages Europe","author":"E.G.J.M.H. N\u00f6cker","year":"1991","unstructured":"N\u00f6cker, E.G.J.M.H., Smetsers, J.E.W., van Eekelen, M.C.J.D., Plasmeijer, M.J.: Concurrent Clean. In: Aarts, E.H.L., Rem, M., van Leeuwen, J. (eds.) PARLE 1991. LNCS, vol.\u00a0505, pp. 202\u2013219. Springer, Heidelberg (1991)"},{"key":"4_CR33","unstructured":"Nordlander, J., Carlsson, M., Jones, M.: Programming with Time-Constrained Reactions (unpublished report) (2006), http:\/\/www.cse.ogi.edu\/pacsoft\/projects\/Timber\/publications.htm"},{"key":"4_CR34","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"143","DOI":"10.1007\/978-3-540-25935-0_9","volume-title":"Domain-Specific Program Generation","author":"J.T. O\u2019Donnell","year":"2004","unstructured":"O\u2019Donnell, J.T.: The Hydra Hardware Description Language. In: Lengauer, C., Batory, D., Consel, C., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol.\u00a03016, pp. 143\u2013164. Springer, Heidelberg (2004)"},{"key":"4_CR35","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"121","DOI":"10.1007\/3-540-46028-4_8","volume-title":"Implementation of Functional Languages","author":"R. Pe\u00f1a","year":"2002","unstructured":"Pe\u00f1a, R., Segura, C.: A Polynomial-Cost Non-determinism Analysis. In: Arts, T., Mohnen, M. (eds.) IFL 2002. LNCS, vol.\u00a02312, pp. 121\u2013137. Springer, Heidelberg (2002)"},{"key":"4_CR36","series-title":"Lecture Notes in Computer Science","volume-title":"Implementation and Application of Functional Languages","author":"R. Pe\u00f1a","year":"2005","unstructured":"Pe\u00f1a, R., Segura, C.: A First-Order Functl. Lang. for Reasoning about Heap Consumption. In: Grelck, C., Huch, F., Michaelson, G.J., Trinder, P. (eds.) IFL 2004. LNCS, vol.\u00a03474, Springer, Heidelberg (2005)"},{"key":"4_CR37","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"91","DOI":"10.1007\/3-540-49201-1_7","volume-title":"Practical Aspects of Declarative Languages","author":"J. Peterson","year":"1999","unstructured":"Peterson, J., Hudak, P., Elliot, C.: Lambda in Motion: Controlling Robots with Haskell. In: Gupta, G. (ed.) PADL 1999. LNCS, vol.\u00a01551, p. 91. Springer, Heidelberg (1999)"},{"key":"4_CR38","volume-title":"Implementing Functional Languages: a Tutorial","author":"S.L. Peyton Jones","year":"1992","unstructured":"Peyton Jones, S.L., Lester, D.: Implementing Functional Languages: a Tutorial. Prentice-Hall, Englewood Cliffs (1992)"},{"issue":"2","key":"4_CR39","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1017\/S0956796800000319","volume":"2","author":"S.L. Peyton Jones","year":"1992","unstructured":"Peyton Jones, S.L.: Implementing Lazy Functional Languages on Stock Hardware:the Spineless Tagless G-Machine. Journal of Functional Programming\u00a02(2), 127\u2013202 (1992)","journal-title":"Journal of Functional Programming"},{"key":"4_CR40","doi-asserted-by":"crossref","unstructured":"Peyton Jones, S.L., Gordon, A.D., Finne, S.O.: Concurrent Haskell. In: Proc. POPL 1996 \u2014 ACM Symp. on Principles of Programming Languages, pp. 295\u2013308 (January 1996)","DOI":"10.1145\/237721.237794"},{"key":"4_CR41","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/3-540-44854-3_15","volume-title":"Implementation of Functional Languages","author":"A.J. Reb\u00f3n Portillo","year":"2003","unstructured":"Reb\u00f3n Portillo, A.J., Hammond, K., Loidl, H.-W., Vasconcelos, P.: A Sized Time System for a Parallel Functional Language (Revised). In: Pe\u00f1a, R., Arts, T. (eds.) IFL 2002. LNCS, vol.\u00a02670, pp. 1\u201316. Springer, Heidelberg (2003)"},{"key":"4_CR42","doi-asserted-by":"crossref","unstructured":"Reppy, J.H.: CML: a Higher-Order Concurrent Language. In: Proc. 1991 ACM Conf. on Prog. Lang. Design and Impl (PLDI 1991), pp. 293\u2013305 (June 1991)","DOI":"10.1145\/113446.113470"},{"key":"4_CR43","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/506378.506423","volume-title":"Proc. EW 5: 5th ACM SIGOPS European workshop","author":"R. Schwarz","year":"1992","unstructured":"Schwarz, R.: Causality in distributed systems. In: Proc. EW 5: 5th ACM SIGOPS European workshop, pp. 1\u20135. ACM Press, New York (1992)"},{"key":"4_CR44","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"340","DOI":"10.1007\/978-3-540-45212-6_22","volume-title":"Embedded Software","author":"W. Taha","year":"2003","unstructured":"Taha, W., Ellner, S., Xi, H.: Generating Heap-Bounded Programs in a Functional Setting. In: Alur, R., Lee, I. (eds.) EMSOFT 2003. LNCS, vol.\u00a02855, pp. 340\u2013355. Springer, Heidelberg (2003)"},{"issue":"2","key":"4_CR45","doi-asserted-by":"publisher","first-page":"109","DOI":"10.1006\/inco.1996.2613","volume":"132","author":"M. Tofte","year":"1997","unstructured":"Tofte, M., Talpin, J.-P.: Region-Based Memory Management. Information and Computation\u00a0132(2), 109\u2013176 (1997)","journal-title":"Information and Computation"},{"key":"4_CR46","series-title":"Lecture Notes in Computer Science","volume-title":"Functional Programming Languages in Education","author":"D.A. Turner","year":"1995","unstructured":"Turner, D.A.: Elementary Strong Functional Programming. In: Hartel, P.H., Plasmeijer, R. (eds.) FPLE 1995. LNCS, vol.\u00a01022. Springer, Heidelberg (1995)"},{"key":"4_CR47","unstructured":"Vasconcelos, P.B.: Cost Inference and Analysis for Recursive Functional Programs. PhD thesis, University of St Andrews (in preparation, 2006)"},{"key":"4_CR48","volume-title":"LUCID, the dataflow programming language","author":"W.W. Wadge","year":"1985","unstructured":"Wadge, W.W., Ashcroft, E.A.: LUCID, the dataflow programming language. Academic Press, London (1985)"},{"key":"4_CR49","doi-asserted-by":"crossref","unstructured":"Wallace, M., Runciman, C.: Extending a Functional Programming System for Embedded Applications. Software: Practice & Experience\u00a025(1) (January 1995)","DOI":"10.1002\/spe.4380250105"},{"key":"4_CR50","unstructured":"Wikstr\u00f6m, C., Nilsson, H.: Mnesia \u2014 an Industrial Database with Transactions, Distribution and a Logical Query Language. In: Proc. 1996 International Symposium on Cooperative Database Systems for Advanced Applications (1996)"}],"container-title":["Lecture Notes in Computer Science","Central European Functional Programming School"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/11894100_4.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,11]],"date-time":"2025-01-11T22:36:33Z","timestamp":1736634993000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/11894100_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2006]]},"ISBN":["9783540468431","9783540468455"],"references-count":50,"URL":"https:\/\/doi.org\/10.1007\/11894100_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2006]]}}}