×

Trends in trends in functional programming 1999/2000 versus 2007/2008. (English) Zbl 1256.68028

Summary: The “Trends in Functional Programming Symposia” are an annual event dedicated to promoting new research directions in functional programming and to investigating the relationship between functional programming and other branches of Computer Science. The TFP series started in 1999 and the 2008 meeting marked the first decade of the symposium.
In this paper we identify and discuss the trends presented at TFP using a macro-vision lens that looks at topics in the first two volumes of TFP and the two most recent volumes of TFP. The goal is to calibrate how trends have changed over a decade instead of analyzing trends with a micro-vision lens that focuses on changes from year to year. The major trends identified are work on parallel functional programming, types, formal verification, implementation of functional languages, and application development.

MSC:

68N18 Functional programming and lambda calculus
68N19 Other programming paradigms (object-oriented, sequential, concurrent, automatic, etc.)
PDFBibTeX XMLCite
Full Text: DOI

References:

[1] Abadi, M., Cardelli, L., Pierce, B., Plotkin, G.: Dynamic typing in a statically typed language. ACM Trans. Program. Lang. Syst. 13(2), 237–268 (1991) · doi:10.1145/103135.103138
[2] Abadi, M., Cardelli, L., Pierce, B., Plotkin, G., Rèmy, D.: Dynamic typing in polymorphic languages. In: Proceedings of the 3rd Workshop on ML and Its Applications, WML ’92, San Francisco, CA, USA, June 1992 · Zbl 0819.68142
[3] Achten, P., Koopman, P., Morazán, M. (eds.): Trends in Functional Programming. Trends in Functional Programming, vol. 9. Intellect, Nijmegen (2009) · Zbl 1256.68028
[4] Aiken, A.: Modern languages for modern parallel computing (invited lecture, abstract only). In: ICFP ’99: Proceedings of the 4th ACM SIGPLAN International Conference on Functional Programming, New York, NY, USA, p. 8. ACM, New York (1999)
[5] Baker, P., Jervis, C., King, D.J.: An industrial use of FP: a tool for generating test scripts from system specifications. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 126–134. Intellect, Nijmegen (1999)
[6] Baker-Finch, C.A.: An abstract machine for parallel lazy evaluation. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 154–160. Intellect, Stirling (1999)
[7] Baker-Finch, C.A., King, D.J., Trinder, P.W.: An operational semantics for parallel lazy evaluation. In: ACM-SIGPLAN International Conference on Functional Programming (ICFP’00), pp. 162–173. ACM, New York (2000) · Zbl 1321.68135
[8] Bakewell, A., Runciman, C.: The space usage problem: an evaluation kit for graph reduction semantics. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 115–128. Intellect/University of St. Andrews, St. Andrews (2000)
[9] Ballereau, O., Loulergue, F., Hains, G.: High level BSP programming: BSML and BS{\(\lambda\)}. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 29–40. Intellect, Nijmegen (1999)
[10] Bernstein, K.L., Stark, E.W.: Debugging type errors (full version). Technical report, State University of New York at Stony Brook, Computer Science Department, November 1995
[11] Bertot, Y., Casterán, P.: Interactive theorem proving and program development. Coq’art: the calculus of inductive constructions. In: Texts in Theoretical Computer Science. Springer, Berlin (2004)
[12] Bove, A., Dybjer, P., Sicard-Ramírez, A.: Embedding a logical theory of constructions in Agda. In: PLPV ’09: Proceedings of the 3rd Workshop on Programming Languages Meets Program Verification, New York, NY, USA, pp. 59–66. ACM, New York (2008)
[13] Boyer, R.S., Strother Moore, J.: Proving theorems about LISP functions. J. Assoc. Comput. Mach. 22(1), 129–144 (1975) · Zbl 0338.68014 · doi:10.1145/321864.321875
[14] Brady, E.: Ivor, a proof engine. In: Proceedings 18th International Symposium on the Implementation of Functional Languages, IFL’06–Revised Selected Papers, Budapest, Hungary, September 2006. Lecture Notes in Computer Science, vol. 4449, pp. 145–162. Springer, Berlin (2006)
[15] Brady, E., McKinna, J., Hammond, K.: Constructing correct circuits: verification of functional aspects of hardware specifications with dependent types. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 159–176. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[16] Brady, E., Herrmann, C., Hammond, K.: Lightweight invariants with full dependent types. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 161–177. Intellect, Nijmegen (2009)
[17] Brown, D.F., Garmendia-Doval, A.B., McCall, J.A.W.: A functional framework for the implementation of genetic algorithms: comparing Haskell and standard ML. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 27–38. Intellect/University of St. Andrews, St. Andrews (2000)
[18] Campbell, B.: Amortised memory analysis using the depth of data structures. In: Castagna, G. (ed.) Programming Languages and Systems: 18th European Symposium on Programming, ESOP 2009. Lecture Notes in Computer Science, vol. 5502, pp. 190–204. Springer, Berlin (2009) · Zbl 1234.68072
[19] Campbell, B.: Prediction of linear memory usage for first-order functional programs–best student paper. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 1–16. Intellect, Nijmegen (2009)
[20] Chitil, O.: Compositional explanation of types and algorithmic debugging of type errors. In: ICFP ’01: Proceedings of the 6th ACM SIGPLAN International Conference on Functional Programming, New York, NY, USA, pp. 193–204. ACM Press, New York (2001) · Zbl 1323.68103
[21] Christiansen, J., Fischer, S.: Easycheck–test data for free. In: FLOPS ’08: Proceedings of the 9th International Symposium on Functional and Logic Programming. Lecture Notes in Computer Science, vol. 4989. Springer, Berlin (2008)
[22] Claessen, K., Hughes, J.: QuickCheck: a lightweight tool for random testing of Haskell programs. In: Proceedings of the 5th International Conference on Functional Programming, ICFP ’00, Montreal, Canada, pp. 268–279. ACM Press, New York (2000)
[23] Cole, M.: Algorithmic Skeletons: Structured Management of Parallelism. Research Monographs in Parallel and Distributed Computing. MIT Press, Cambridge (1989)
[24] Conchon, S., Filliâtre, J.-C., Signoles, J.: Designing a generic graph library using ML functors. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 124–140. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[25] Constable, R.L., Allen, S.F., Bromley, H.M., Cleaveland, W.R., Cremer, J.F., Harper, R.W., Howe, D.J., Knoblock, T.B., Mendler, N.P., Panangaden, P., Sasaki, J.T., Smith, S.F.: Implementing Mathematics with the Nuprl Proof Development System. Prentice-Hall/Cornell University, Ithaca (1995)
[26] Cooper, E., Lindley, S., Wadler, P., Yallop, J.: Links: web programming without tiers. In: Proceedings of the 5th International Symposium on Formal Methods for Components and Objects, FMCO ’06, CWI, Amsterdam, The Netherlands, 7–10 November 2006, vol. 4709. Springer, Berlin (2006).
[27] Courtney, A.: Modeling user interfaces in a functional language. PhD thesis, Yale University, May 2004
[28] Covino, E., Pani, G.: Complexity certification of C++ template metaprogramming. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 145–160. Intellect, Nijmegen (2009)
[29] Curtis, S.: An application of functional programming: quilting. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 145–158. Intellect/University of St. Andrews, St. Andrews (2000)
[30] Damas, L., Milner, R.: Principal type schemes for functional programs. In: Proceedings of the 9th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL’82, pp. 207–212. ACM, New York (1982)
[31] Danielsson, N.A., Hughes, J., Jansson, P., Gibbons, J.: Fast and loose reasoning is morally correct. In: POPL’06: Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, New York, NY, USA, pp. 206–217. ACM, New York (2006) · Zbl 1370.68042
[32] Dean, J., Ghemawat, S.: MapReduce: simplified data processing on large clusters. Commun. ACM 51(1), 107–113 (2008) · Zbl 05394988 · doi:10.1145/1327452.1327492
[33] Dosch, W., Wiedemann, B.: List homomorphisms with accumulation and indexing. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 135–143. Intellect, Nijmegen (1999)
[34] Duggan, D.: Correct type explanation. In: Workshop on ML, pp. 49–58. ACM SIGPLAN, New York (1998)
[35] Faxén, K.-F.: The costs and benefits of cloning in a lazy functional language. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 1–12. Intellect/University of St. Andrews, St. Andrews (2000)
[36] Gaudiot, J., Lee, L.: Multiprocessor systems programming in a high-level data-flow language. In: Parallel Architectures and Languages Europe, Volume 1: Parallel Architectures, PARLE 1987. Lecture Notes in Computer Science, vol. 258, pp. 134–151 (1987)
[37] Gava, F., Loulergue, F.: Semantics of a functional BSP language with imperative features. In: Joubert, G.R., Nagel, W.E., Peters, F.J., Walter, W.V. (eds.) Parallel Computing: Software Technology, Algorithms, Architectures and Applications, PARCO 2003, Dresden, Germany. Advances in Parallel Computing, vol. 13, pp. 95–102. Elsevier, Amsterdam (2004)
[38] Ghani, N., Johann, P.: Short cut fusion for effects. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 113–128. Intellect, Nijmegen (2009)
[39] Gilmore, S.: Deep type inference for mobile functions. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 41–49. Intellect, Nijmegen (1999)
[40] Gilmore, S. (ed.): Trends in Functional Programming. Trends in Functional Programming, vol. 2. Intellect/University of St. Andrews, St. Andrews (2000)
[41] Goldberg, B., Hudak, P.: Alfalfa: distributed graph reduction on a hypercube multiprocessor. In: Graph Reduction: Proceedings of a Workshop at Santa Fé, New Mexico. Lecture Notes in Computer Science, vol. 279, pp. 94–113. Springer, Berlin (1986)
[42] Goldman, R., Gabriel, R., Sexton, C.: Qlisp: an interim report. In: Parallel Lisp: Languages and Systems. Lecture Notes in Computer Science, vol. 441, pp. 161–181. Springer, Berlin (1989)
[43] Green, M., Abdallah, A.E.: Interfacing java with Haskell. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 79–88. Intellect, Nijmegen (1999)
[44] Gronski, J., Flanagan, C.: Unifying hybrid types and contracts. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 54–70. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[45] Grov, G., Michaelson, G.: Towards a box calculus for hierarchical Hume. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 71–88. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[46] Guillemette, L.-J., Monnier, S.: One vote for type families in Haskell! In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 81–96. Intellect, Nijmegen (2009)
[47] Haack, C., Wells, J.B.: Type error slicing in implicitly typed higher-order languages. In: ESOP’03: Proceedings of the 12th European Symposium on Programming, Berlin, Heidelberg, pp. 284–301. Springer, Berlin (2003) · Zbl 1032.68041
[48] Halstead, R.H. Jr.: New ideas in parallel lisp: language design, implementation, programming tools. In: Proceedings of the US/Japan Workshop on Parallel Lisp: Languages and Systems. Lecture Notes in Computer Science, vol. 441, pp. 2–57. Springer, Berlin (1989)
[49] Halstead, R.H.: Multilisp: a language for concurrent symbolic computation. ACM Trans. Program. Lang. Syst. 7, 501–538 (1985) · Zbl 0581.68037 · doi:10.1145/4472.4478
[50] Hammond, K.: Hume: a concurrent language with bounded time and space behaviour. In: Proc. 7th IEEE International Conference on Electronic Control Systems, ICECS 2K, Lebanon, pp. 407–411 (2000)
[51] Hammond, K., Loidl, H.W., Partridge, A.: Visualising granularity in parallel programs: a graphical winnowing system for Haskell. In: HPFC’95–High Performance Functional Computing, pp. 208–221 (1995)
[52] Hammond, K., Al Zain, A., Cooperman, G., Petcu, D., Trinder, P.W.: Symgrid: a framework for symbolic computation on the grid. In: Kermarrec, A.-M., Bougé, L., Priol, T. (eds.) Euro-Par. Lecture Notes in Computer Science, vol. 4641, pp. 457–466. Springer, Berlin (2007)
[53] Hanus, M.: Curry: a multi-paradigm declarative language (system description). In: Bry, F., Freitag, B., Seipel, D. (eds.) Twelfth Workshop Logic Programming, WLP 1997, München, Germany, 17–19 September 1997
[54] Hayashi, Y., Cole, M.: BSP-based cost analysis of skeletal programs. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 20–28. Intellect, Nijmegen (1999)
[55] Heeren, B.J.: Top quality type error messages. PhD thesis, Universiteit Utrecht, The Netherlands, September 2005
[56] Heeren, B., Hage, J., Swierstra, S.D.: Constraint based type inferencing in helium. In: Silaghi, M.-C., Zanker, M. (eds.) Workshop Proceedings of Immediate Applications of Constraint Programming, Cork, Ireland, September 2003, pp. 59–80 (2003) · Zbl 1315.68050
[57] Henglein, F.: Dynamic typing: syntax and proof theory. Sci. Comput. Program. 22(3), 197–230 (1994) · Zbl 0809.68083 · doi:10.1016/0167-6423(94)00004-2
[58] Herman, D., Tomb, A., Flanagan, C.: Space-efficient gradual typing. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 1–18. Intellect/The University of Chicago Press, Bristol/Chicago (2007) · Zbl 1232.68025
[59] Hernandez, F., Peña, R., Rubio, F.: From GranSim to paradise. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 11–19. Intellect, Nijmegen (1999)
[60] Hidalgo-Herrero, M., Ortega-Mallén, Y.: A distributed operational semantics for a parallel functional language. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 89–102. Intellect/University of St. Andrews, St. Andrews (2000)
[61] Hindley, R.J.: The principal type scheme of an object in combinatory logic. Trans. Am. Math. Soc. 146, 29–60 (1969) · Zbl 0196.01501
[62] Hofmann, M., Jost, S.: Static prediction of heap space usage for first-order functional programs. In: Proceedings of the 30th ACM Symposium on Principles of Programming Languages, POPL, New Orleans. ACM, New York (2003) · Zbl 1321.68180
[63] Horváth, Z., Lövei, L., Csörnyei, Z., Kozsik, T., Víg, A., Nagy, T., Király, R., Tóth, M., Kitlei, R.: Refactoring Erlang programs. In: 2nd Central European Functional Programming School, CEFP 2007, Cluj-Napoca, Romania, June 2007 · Zbl 1170.68414
[64] Hu, L., Hutton, G.: Compiling concurrency correctly: cutting out the middle man. In: Proceedings of the Symposium on Trends in Functional Programming, Komárno, Slovakia, June 2009
[65] Hu, L., Hutton, G.: Towards a verified STM. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 129–144. Intellect, Nijmegen (2009)
[66] Ito, T., Matsui, M.: A parallel lisp language PaiLisp and its kernel specification. In: Proceedings of the US/Japan Workshop on Parallel Lisp: Languages and Systems. Lecture Notes in Computer Science, vol. 441, pp. 58–100. Springer, Berlin (1989)
[67] Joubert, G.R., Nagel, W.E., Peters, F.J., Walter, W.V. (eds.): In: Parallel Computing: Software Technology, Algorithms, Architectures and Applications, PARCO 2003, Dresden, Germany. Advances in Parallel Computing, vol. 13. Elsevier, Amsterdam (2004)
[68] Klusik, U., Peña, R., Segura, C.: Bypassing of channels in Eden. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 2–10. Intellect, Nijmegen (1999)
[69] Klusik, U., Loogen, R., Priebe, S.: Controlling parallelism and data distribution in Eden. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 53–64. Intellect/University of St. Andrews, St. Andrews (2000)
[70] Knowles, K., Flanagan, C.: Hybrid type checking. ACM Trans. Program. Lang. Syst. 32(2), 1–34 (2010) · doi:10.1145/1667048.1667051
[71] Koopman, P., Plasmeijer, R.: Testing reactive systems with Gast. In: Gilmore, S. (ed.) Proceedings of the 5th Symposium on Trends in Functional Programming, TFP ’03, pp. 111–129. Intellect Books, Bristol (2004). ISBN 1-84150-122-0
[72] Koopman, P., Alimarine, A., Tretmans, J., Plasmeijer, R.: Gast: generic automated software testing. In: Peña, R., Arts, T. (eds.) Revised Selected Papers of the 14th International Symposium on the Implementation of Functional Languages, IFL ’02. Lecture Notes in Computer Science, vol. 2670, pp. 84–100. Springer, Berlin (2003)
[73] Lakin, M., Pitts, A.: A metalanguage for structural operational semantics. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 19–35. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[74] Lämmel, R.: Reuse by program transformation. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 144–153. Intellect, Nijmegen (1999)
[75] Li, H., Thompson, S.: Formalisation of Haskell refactorings. In: van Eekelen, M., Hammond, K. (eds.) Trends in Functional Programming (2005)
[76] Lindblad, F.: Property directed generation of first-order test data. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 105–123. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[77] Loidl, H.-W., Klusik, U., Hammond, K., Loogen, R., Trinder, P.W.: GpH and Eden: comparing two parallel functional languages on a Beowulf cluster. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 39–52. Intellect/University of St. Andrews, St. Andrews (2000)
[78] Loitsch, F., Serrano, M.: Hop client-side compilation. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 141–158. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[79] Loogen, R., Ortega-Mallén, Y., Peña-Marí, R.: Parallel functional programming in Eden. J. Funct. Program. 15(3), 431–475 (2005) · Zbl 1096.68018 · doi:10.1017/S0956796805005526
[80] Loulergue, F.: Parallel composition and bulk synchronous parallel functional programming. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 77–88. Intellect/University of St. Andrews, St. Andrews (2000)
[81] Loulergue, F.: Distributed evaluation of functional BSP programs. Parallel Process. Lett. 11(4), 423–437 (2001)
[82] Loulergue, F.: Parallel juxtaposition for bulk synchronous parallel ML. In: Euro-Par 2003. Lecture Notes in Computer Science, vol. 2790, pp. 781–788. Springer, Berlin (2003)
[83] Loulergue, F., Hains, G., Foisy, C.: A calculus of functional BSP programs. Sci. Comput. Program. 37(1–3), 253–277 (2000) · Zbl 0954.68036 · doi:10.1016/S0167-6423(99)00029-5
[84] McAdam, B.J.: Generalising techniques for type debugging. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 50–58. Intellect, Nijmegen (1999)
[85] McAdam, B.J., Kennedy, A., Benton, N.: Type inference for MLj. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 159–172. University of St. Andrews, St. Andrews (2000)
[86] Meyer, B.: Eiffel: The Language. Prentice Hall, New York (1992) · Zbl 0779.68013
[87] Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.): Trends in Functional Programming. Trends in Functional Programming, vol. 1. Intellect, Stirling (1999)
[88] Middelkoop, A., Dijkstra, A., Swierstra, D.: A leaner specification for GADTs. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 65–180. Intellect, Nijmegen (2009)
[89] Milner, R.: A theory of type polymorphism in programming. J. Comput. Syst. Sci. 17(3), 348–375 (1978) · Zbl 0388.68003 · doi:10.1016/0022-0000(78)90014-4
[90] Montenegro, M., Peña, R., Segura, C.: A space consumption analysis by abstract interpretation. In: van Eekelen, M., Shkaravska, O. (eds.) Proceedings International Workshop on Foundational and Practical Aspects of Resource Analysis, FOPARA’09, Eindhoven, The Netherlands, November 3, 2009. Lecture Notes in Computer Science, vol. 6324, pp. 34–50. Springer, Berlin (2009) · Zbl 1305.68062
[91] Morazán, M.T. (ed.): Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[92] Morazán, M.T., Troeger, D.R.: The MT architecture and allocation algorithm. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 98–105. Intellect, Nijmegen (1999)
[93] Mu, S.-C., Ko, H.-S., Jansson, P.: Algebra of programming in Agda: dependent types for relational program derivation. J. Funct. Program. 19, 545–579 (2009). doi: 10.1017/S0956796809007345 · Zbl 1191.68195 · doi:10.1017/S0956796809007345
[94] Nöcker, E.G.J.M.H., Smetsers, J.E.W., van Eekelen, M.C.J.D., Plasmeijer, M.J.: Concurrent CLEAN. In: Proc. of Parallel Architectures and Languages Europe, PARLE ’91, Eindhoven, the Netherlands. Lecture Notes in Computer Science, vol. 505, pp. 202–219. Springer, Berlin (1991)
[95] Norell, U.: Towards a practical programming language based on dependent type theory. PhD thesis, Chalmers University of Technology (2007)
[96] Oury, N., Swierstra, W.: The power of pi. In: ICFP’08: Proceedings of the 2008 SIGPLAN International Conference on Functional Programming, pp. 39–50 (2008) · Zbl 1323.68145
[97] Page, R., Eastlund, C., Felleisen, M.: Functional programming and theorem proving for undergraduates: a progress report. In: FDPE ’08: Proceedings of the 2008 ACM SIGPLAN Workshop on Functional and Declarative Programming in Education, New York, NY, USA, September 21, 2008, pp. 21–30. ACM, New York (2008)
[98] Pardo, A., Fernandes, J.P., Saraiva, J.: Shortcut fusion rules for the derivation of circular and higher-order monadic programs. In: Proceedings ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM’09, Savannah, Georgia, USA, January 19–20, 2009, pp. 81–90 (2009)
[99] Pareja, C., Peña, R., Rubio, F., Segura, C.: Optimizing Eden by transformation. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 13–26. Intellect/University of St. Andrews, St. Andrews (2000)
[100] Peyton-Jones, S.: Parallel implementations of functional programming languages. Comput. J. 32(2) (1989) · Zbl 0686.93086
[101] Pil, M.: Dynamic types and type dependent functions. In: Hammond, K., Davie, T., Clack, C. (eds.) Proceedings of the 10th International Symposium on the Implementation of Functional Languages, IFL ’98, London, UK. Lecture Notes in Computer Science, vol. 1595, pp. 169–185. Springer, Berlin (1999)
[102] Plasmeijer, R., van Eekelen, M.: Functional Programming and Parallel Graph Rewriting. Addison-Wesley, Reading (1993). ISBN 0-201-41663-8 · Zbl 0788.68023
[103] Plasmeijer, R., Achten, P., Koopman, P.: An introduction to iTasks: defining interactive work flows for the web. In: Proceedings of the 2nd Central European Functional Programming School, CEFP ’07, Cluj-Napoca, Romania, 23–30 June 2007 · Zbl 1170.68417
[104] Rabhi, F.A., Lapalme, G., Zomaya, A.Y.: A functional design framework for genetic algorithms. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 116–125. Intellect, Nijmegen (1999)
[105] Runciman, C., Naylor, M., Lindblad, F.: SmallCheck and lazy smallCheck: automatic exhaustive testing for small values. In: Proceedings of the ACM SIGPLAN 2008 Haskell Symposium, New York, NY, USA, pp. 37–48. ACM, New York (2009). ISBN: 978-1-60558-064-7
[106] Schrijvers, T., Sulzmann, M.: Confluence for non-full functional dependencies. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 49–64. Intellect, Nijmegen (2009)
[107] Schrijvers, T., Peyton Jones, S.L., Sulzmann, M., Vytiniotis, D.: Complete and decidable type inference for GADTs. In: Hutton, G., Tolmach, A.P. (eds.) Proceeding of the 14th ACM SIGPLAN International Conference on Functional Programming, ICFP 2009, Edinburgh, Scotland, UK, pp. 341–352. ACM, New York (2009) · Zbl 1302.68190
[108] Sculthorpe, N., Nilsson, H.: Optimisation of dynamic, hybrid signal function networks. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 97–112. Intellect, Nijmegen (2009)
[109] Sérot, J.: CAMLFLOW: a CAML to data-flow graph translator. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 129–144. Intellect/University of St. Andrews, St. Andrews (2000)
[110] Serrano, M., Gallesio, E., Loitsch, F.: Hop, a language for programming the web 2.0. In: Proceedings of the 11th International Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA ’06, Portland, Oregon, USA, 22–26 October 2006, pp. 975–985 (2006)
[111] Sestoft, P.: Deriving a lazy abstract machine. J. Funct. Program. 7(3), 231–264 (1997) · Zbl 0881.68049 · doi:10.1017/S0956796897002712
[112] Shkaravska, O., Kersten, R., van Eekelen, M.: Test-based inference of polynomial loop-bound functions. In: Krall, A., Mössenböck, H. (eds.) PPPJ’10: Proceedings of the 8th International Conference on the Principles and Practice of Programming in Java. ACM Digital Proceedings Series, pp. 99–108 (2010)
[113] Shkaravska, O., van Eekelen, M., Tamalet, A.: Collected size semantics for functional programs over lists. In: Scholz, S.-B. (ed.) Revised Selected Papers of the 20th International Symposium on the Implementation and Application of Functional Languages, IFL. Lecture Notes in Computer Science, vol. 5836. Springer, Berlin (2010, to appear) · Zbl 1445.68047
[114] Søndergaard, H., Sestoft, P.: Referential transparency, definiteness and unfoldability. Acta Inform. 27, 505–517 (1990) · Zbl 0679.68150
[115] Sonmez, N., Perfumo, C., Stipic, S., Cristal, A., Unsal, O.S., Valero, M.: UnreadTVar: extending Haskell software transactional memory for performance. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 89–104. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[116] Stuckey, P.J., Sulzmann, M., Wazny, J.: Interactive type debugging in Haskell. In: Haskell ’03: Proceedings of the 2003 ACM SIGPLAN Workshop on Haskell, New York, NY, USA, pp. 72–83. ACM, New York (2003)
[117] Swierstra, W., Altenkirch, T.: Dependent types for distributed arrays–best student paper. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 17–32. Intellect, Nijmegen (2009)
[118] Szymanski, B.K.: Parallel Functional Languages and Compilers. Frontier Series. ACM, New York (1991) · Zbl 0752.68017
[119] Tamalet, A., Shkaravska, O., van Eekelen, M.: Size analysis of algebraic data types. In: Achten, P., Koopman, P., Morazán, M. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 9, pp. 33–48. Intellect, Nijmegen (2009) · Zbl 1445.68047
[120] Thiemann, P.: WASH/CGI: server-side web scripting with sessions and typed, compositional forms. In: Krishnamurthi, S., Ramakrishnan, R. (eds.) Proceedings of the 4th International Symposium on the Practical Aspects of Declarative Programming, PADL ’02, Portland, OR, USA, 19–20 January 2002. Lecture Notes in Computer Science, vol. 2257, pp. 192–208. Springer, Berlin (2002)
[121] Trinder, P.W., Hammond, K., Mattson, J.S. Jr., Partridge, A.S., Peyton Jones, S.L.: GUM: a portable parallel implementation of Haskell. In: PLDI ’96: Proceedings of the ACM SIGPLAN 1996 Conference on Programming Language Design and Implementation, New York, NY, USA, pp. 79–88. ACM, New York (1996)
[122] Trinder, P.W., Hammond, K., Loidl, H.-W., L, S., Peyton Jones, S.L.: Algorithm + strategy = parallelism. J. Funct. Program. 8, 23–60 (1998) · Zbl 0933.68033 · doi:10.1017/S0956796897002967
[123] van Eekelen, M.C.J.D. (ed.): Revised Selected Papers from the 6th Symposium on Trends in Functional Programming, TFP 2005, Tallinn, Estonia, 23–24 September 2005. Trends in Functional Programming, vol. 6. Intellect, Bristol (2007)
[124] van Eekelen, M., de Mol, M.: Proof tool support for explicit strictness. In: Butterfield, A., Grelck, C., Huch, F. (eds.) Revised Selected Papers of the 17th International Symposium on the Implementation and Application of Functional Languages, IFL ’05, Dublin, Ireland, 19–21 September 2006. Lecture Notes in Computer Science, vol. 4015, pp. 37–54. Springer, Berlin (2006) · Zbl 1236.68033
[125] van Eekelen, M., Shkaravska, O., van Kesteren, R., Jacobs, B., Poll, E., Smetsers, S.: AHA: amortized heap space usage analysis. In: Morazán, M.T. (ed.) Trends in Functional Programming, New York City, USA, April 2–4, 2007. Trends in Functional Programming, vol. 8, pp. 36–53. Intellect/The University of Chicago Press, Bristol/Chicago (2007)
[126] Vervoort, M., Plasmeijer, R.: Lazy dynamic input/output in the lazy functional language Clean. In: Peña, R., Arts, T. (eds.) Revised Selected Papers of the 14th International Symposium on the Implementation of Functional Languages, IFL ’02, Madrid, Spain, September 2003. Lecture Notes in Computer Science, vol. 2670, pp. 101–117. Springer, Berlin (2003)
[127] Wadler, P.: Deforestation: transforming programs to eliminate trees. Theor. Comput. Sci. 73(2), 231–248 (1990) · Zbl 0701.68013 · doi:10.1016/0304-3975(90)90147-A
[128] Walton, C.D.: An abstract machine for memory management. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 89–97. Intellect, Nijmegen (1999)
[129] Wand, M.: Finding the source of type errors. In: Proceedings Symposium on Principles of Programming Languages, POPL’86, St. Petersburg Beach, Florida, January 1986, pp. 38–43. ACM, New York (1986)
[130] Widera, M., Beierle, C.: How to combine the benefits of strict and soft typing. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 68–78. Intellect, Nijmegen (1999)
[131] Widera, M., Beierle, C.: Detecting common elements of types. In: Gilmore, S. (ed.) Trends in Functional Programming. Trends in Functional Programming, vol. 2, pp. 173–184. Intellect/University of St. Andrews, St. Andrews (2000)
[132] Yang, J.: Explaining type errors by finding the source of a type conflict. In: Michaelson, G., Trinder, P.W., Loidl, H.-W. (eds.) Trends in Functional Programming. Trends in Functional Programming, vol. 1, pp. 59–67. Intellect, Nijmegen (1999)
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.