{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,27]],"date-time":"2025-03-27T22:25:23Z","timestamp":1743114323555,"version":"3.40.3"},"publisher-location":"Singapore","reference-count":45,"publisher":"Springer Nature Singapore","isbn-type":[{"type":"print","value":"9789819764686"},{"type":"electronic","value":"9789819764693"}],"license":[{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"DOI":"10.1007\/978-981-97-6469-3_25","type":"book-chapter","created":{"date-parts":[[2025,3,1]],"date-time":"2025-03-01T23:24:49Z","timestamp":1740871489000},"page":"293-302","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["A Learning Path to Functional Programming (and What Students can see on the Path)"],"prefix":"10.1007","author":[{"given":"Lidia","family":"Gorodnyaya","sequence":"first","affiliation":[]},{"given":"Dmitry","family":"Kondratyev","sequence":"additional","affiliation":[]},{"given":"Nikolay","family":"Shilov","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2025,3,2]]},"reference":[{"key":"25_CR1","doi-asserted-by":"crossref","unstructured":"Attali, I., Caromel, D., Wendelborn, A.: A formal semantics and an interactive environment for Sisal. In: Zaky, A., Lewis, T. (eds.) Tools and Environments for Parallel and Distributed Systems, SOFT, vol. 2, pp. 229\u2013256. Springer, Boston, MA (1996)","DOI":"10.1007\/978-1-4615-4123-3_11"},{"key":"25_CR2","doi-asserted-by":"publisher","unstructured":"Beckert, B., Bingmann, T., Kiefer, M., Sanders, P., Ulbrich, M., Weigl, A.: Relational equivalence proofs between imperative and MapReduce algorithms. In: Piskac, R., R\u00fcmmer, P. (eds.) VSTTE 2018, LNCS, vol. 11294, pp. 248\u2013266. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-030-03592-1_14","DOI":"10.1007\/978-3-030-03592-1_14"},{"key":"25_CR3","unstructured":"Berezin, N.A., Gorodnyaya, L.V.: Introduction to Lisp Programming (2006). https:\/\/intuit.ru\/studies\/courses\/1026\/158\/info"},{"key":"25_CR4","doi-asserted-by":"crossref","unstructured":"Berezun, D., Boulytchev, D.: Reimplementing the wheel: teaching compilers with a small self-contained one. In: Proceedings of the Tenth and Eleventh International Workshop on Trends in Functional Programming In Education (TFPIE 2021\/22), vol. 363, pp. 22\u201343. Electronic Proceedings in Theoretical Computer Science (2022)","DOI":"10.4204\/EPTCS.363.2"},{"key":"25_CR5","doi-asserted-by":"crossref","unstructured":"Cerone, A., Roggenbach, M., Davenport, J., Dennerm, C., Farrell, M., Haveraaen, M., Moller, F., K\u00f6rner, P., Krings, S., \u00d6lveczky, P.C., Schlingloff, B.-H., Shilov, N., Zhumagambetov, R.: Rooting formal methods within higher education curricula for computer science and software engineering\u2014a white paper. In: Cerone, A., Roggenbach, M. (eds.) FMFun 2019, CCIS, vol. 1301, pp. 1\u201326. Springer, Cham (2021)","DOI":"10.1007\/978-3-030-71374-4_1"},{"issue":"1","key":"25_CR6","doi-asserted-by":"publisher","first-page":"107","DOI":"10.1145\/1327452.1327492","volume":"51","author":"J Dean","year":"2008","unstructured":"Dean, J., Ghemawat, S.: MapReduce: simplified data processing on large clusters. Commun. ACM 51(1), 107\u2013113 (2008)","journal-title":"Commun. ACM"},{"key":"25_CR7","doi-asserted-by":"crossref","unstructured":"De Carvalho, D., Hussain, R., Khan, A., Khazeev, M., Lee, J.Y., Masiagin, S., Mazzara, M., Mustafin, R., Naumchev, A., Rivera, V.: Teaching programming and design-by-contract. In: Auer, M., Tsiatsos, T. (eds.) ICL 2018, AISC, vol. 916, pp. 68\u201376. Springer, Cham (2020)","DOI":"10.1007\/978-3-030-11932-4_7"},{"key":"25_CR8","doi-asserted-by":"crossref","unstructured":"Feo, J.T., Cann, D.C., Oldehoeft, R.R.: A report on the sisal language project. J. Parallel Distrib. Comput. 10(4), 349\u2013366 (1990)","DOI":"10.1016\/0743-7315(90)90035-N"},{"key":"25_CR9","doi-asserted-by":"crossref","unstructured":"Furia, C.A., Meyer, B., Velder, S.: Loop invariants: analysis, classification, and examples. ACM Comput. Surv. 46(3), article 34 (2014)","DOI":"10.1145\/2506375"},{"key":"25_CR10","doi-asserted-by":"crossref","unstructured":"Furia, C.A., Nordio, M., Polikarpova, N., Tschannen, J.: AutoProof: auto-active functional verification of object-oriented programs. Int. J. Softw. Tools Technol. Transf. 19(6), 697\u2013716 (2017)","DOI":"10.1007\/s10009-016-0419-0"},{"key":"25_CR11","doi-asserted-by":"publisher","unstructured":"Gaudiot, J.-L., DeBoni, T., Feo, J., B\u00f6hm, W., Najjar, W., Miller, P.: The Sisal project: real world functional programming. In: Pande, S., Agrawal, D.P. (eds.) Compiler Optimizations for Scalable Parallel Systems, LNCS, vol. 1808, pp. 45\u201372. Springer, Berlin, Heidelberg (2001). https:\/\/doi.org\/10.1007\/3-540-45403-9_2","DOI":"10.1007\/3-540-45403-9_2"},{"key":"25_CR12","doi-asserted-by":"publisher","unstructured":"Gidon, E.: Loop verification with invariants and contracts. In: Finkbeiner, B., Wies, T. (eds.) VMCAI 2022, LNCS, vol. 13182, pp. 69\u201392. Springer, Cham (2022). https:\/\/doi.org\/10.1007\/978-3-030-94583-1_4","DOI":"10.1007\/978-3-030-94583-1_4"},{"key":"25_CR13","unstructured":"Gorodnyaya, L.V.: Functional Programming Fundamentals (2004). https:\/\/intuit.ru\/studies\/courses\/29\/29\/info"},{"key":"25_CR14","unstructured":"Gorodnyaya, L.: Method of paradigmatic analysis of programming languages and systems. In: Proceedings of the 21st Conference on Scientific Services & Internet (SSI-2019), vol. 2543, pp. 149\u2013158. CEUR Workshop Proceedings (2020)"},{"key":"25_CR15","unstructured":"Gorodnyaya, L.V.: Programming Paradigms (2006). https:\/\/intuit.ru\/studies\/courses\/1109\/204\/info"},{"key":"25_CR16","doi-asserted-by":"crossref","unstructured":"Gorodnyaya, L.: Strategic paradigms of programming, which was initiated and supported by Academician Andrey Petrovich Ershov. In: Proceedings of the 2020 Fifth International Conference \u201cHistory of Computing in the Russia, former Soviet Union and Council for Mutual Economic Assistance countries\" (SORUCOM), pp. 1\u201311. IEEE (2020)","DOI":"10.1109\/SORUCOM51654.2020.9464972"},{"key":"25_CR17","doi-asserted-by":"crossref","unstructured":"Gorodnyaya, L.V.: The role of functional programming in the organization of parallel computing. In: Proceedings of the 23rd Conference on Scientific Services & Internet (SSI 2021), vol. 3066, pp. 46\u201358. CEUR Workshop Proceedings (2021)","DOI":"10.20948\/abrau-2021-5-ceur"},{"key":"25_CR18","doi-asserted-by":"publisher","unstructured":"H\u00e4hnle, R., Huisman, M.: Deductive software verification: from pen-and-paper proofs to industrial tools. In: Steffen, B., Woeginger, G. (eds.) Computing and Software Science, LNCS, vol. 10000, pp. 345\u2013373. Springer, Cham (2019) https:\/\/doi.org\/10.1007\/978-3-319-91908-9_18","DOI":"10.1007\/978-3-319-91908-9_18"},{"key":"25_CR19","unstructured":"Henderson, P., Turner, D.A.: Functional Programming and its Applications: An Advanced Course. Cambridge University Press, Cambridge (1982)"},{"key":"25_CR20","doi-asserted-by":"publisher","unstructured":"Heras, J., Komendantskaya, E., Johansson, M., Maclean, E.: Proof-pattern recognition and Lemma discovery in ACL2. In: McMillan, K., Middeldorp, A., Voronkov, A. (eds.) LPAR 2013, LNCS, vol. 8312, pp. 389\u2013406. Berlin, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-45221-5_27","DOI":"10.1007\/978-3-642-45221-5_27"},{"key":"25_CR21","unstructured":"Internet University of Information Technologies. https:\/\/intuit.ru. Last accessed 8 Aug 2022"},{"key":"25_CR22","doi-asserted-by":"crossref","unstructured":"Kasyanov, V.: Sisal 3.2: functional language for scientific parallel programming. Enterp. Inf. Syst. 7(2), 227\u2013236 (2013)","DOI":"10.1080\/17517575.2012.744854"},{"key":"25_CR23","first-page":"81","volume":"15","author":"V Kasyanov","year":"2018","unstructured":"Kasyanov, V., Kasyanova, E.: A system of functional programming for supporting of cloud supercomputing. WSEAS Trans. Inf. Sci. Appl. 15, 81\u201390 (2018)","journal-title":"WSEAS Trans. Inf. Sci. Appl."},{"key":"25_CR24","doi-asserted-by":"crossref","unstructured":"Kasyanov, V., Kasyanova, E.: Methods and system for cloud parallel programming. In: Proceedings of the 21st International Conference on Enterprise Information Systems, vol. 1, pp. 623\u2013629. SciTePress, INSTICC, Setubal (2019)","DOI":"10.5220\/0007750506230629"},{"key":"25_CR25","doi-asserted-by":"crossref","unstructured":"Kasyanov, V., Kasyanova, E., Kondratyev, D.: Formal verification of Cloud Sisal programs. In: Proceedings of the Applied Physics, Simulation and Computing (APSAC 2020), vol. 1603, article 012020. J. Phys. Conf. Ser. (2020)","DOI":"10.1088\/1742-6596\/1603\/1\/012020"},{"key":"25_CR26","doi-asserted-by":"crossref","unstructured":"Kasyanov, V., Kasyanova, E., Malishev, A.: Support tools for functional programming distance learning and teaching. In: Proceedings of the International Conference $$<<$$Marchuk Scientific Readings 2021$$>>$$ (MSR-2021), vol. 2099, article 012052. J. Phys. Conf. Ser. (2021)","DOI":"10.1088\/1742-6596\/2099\/1\/012052"},{"key":"25_CR27","doi-asserted-by":"crossref","unstructured":"Kasyanov, V.N., Stasenko, A.P.: Sisal 3.2 language structure decomposition. In: Mastorakis, N., Mladenov, V., Kontargyri, V. (eds.) Proceedings of the European Computing Conference, LNEE, vol. 28, pp. 533\u2013543. Springer, Boston, MA (2009)","DOI":"10.1007\/978-0-387-85437-3_53"},{"key":"25_CR28","doi-asserted-by":"publisher","unstructured":"Khazeev, M., Aslam, H., de Carvalho, D., Mazzara, M., Bruel, J.-M., Brown, J.A.: Reflections on teaching formal methods for software development in higher education. In: Bruel, J.-M., Capozucca, A., Mazzara, M., Meyer, B., Naumchev, A., Sadovykh, A. (eds.) FISEE 2019, LNCS, vol. 12271, pp. 28\u201341. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-57663-9_3","DOI":"10.1007\/978-3-030-57663-9_3"},{"key":"25_CR29","doi-asserted-by":"crossref","unstructured":"Khazeev, M., Mazzara, M., Aslam, H., de Carvalho, D.: Towards a broader acceptance of formal verification tools. In: Auer, M., Hortsch, H., Sethakul, P. (eds.) ICL 2019, AISC, vol. 1135, pp. 188\u2013200. Springer, Cham (2020)","DOI":"10.1007\/978-3-030-40271-6_20"},{"issue":"7","key":"25_CR30","doi-asserted-by":"publisher","first-page":"669","DOI":"10.3103\/S0146411622070070","volume":"56","author":"DA Kondratyev","year":"2022","unstructured":"Kondratyev, D.A.: Towards automatic deductive verification of C programs with Sisal loops using the C-lightVer system. Autom. Control Comput. Sci. 56(7), 669\u2013687 (2022)","journal-title":"Autom. Control Comput. Sci."},{"key":"25_CR31","doi-asserted-by":"crossref","unstructured":"Kondratyev, D., Promsky, A.: Correctness of proof strategy for the Sisal program verification. In: Proceedings of the 2019 International Multi-Conference on Engineering, Computer and Information Sciences (SIBIRCON-2019), pp. 641\u2013646. IEEE (2019)","DOI":"10.1109\/SIBIRCON48586.2019.8958225"},{"key":"25_CR32","doi-asserted-by":"publisher","unstructured":"Kondratyev, D., Promsky, A.: Proof strategy for automated Sisal program verification. In: Mazzara, M., Bruel, J.-M., Meyer, B., Petrenko, A. (eds.) TOOLS 2019, LNCS, vol. 11771, pp. 113\u2013120. Springer, Cham (2019). https:\/\/doi.org\/10.1007\/978-3-030-29852-4_9","DOI":"10.1007\/978-3-030-29852-4_9"},{"key":"25_CR33","doi-asserted-by":"crossref","unstructured":"Kondratyev, D.A., Promsky, A.V.: Towards verification of scientific and engineering programs. The CPPS project. J. Comput. Technol. 25(5), 91\u2013106 (2020)","DOI":"10.25743\/ICT.2020.25.5.008"},{"key":"25_CR34","doi-asserted-by":"crossref","unstructured":"Kosarev, D.S., Boulytchev, D.Yu.: Generic programming with combinators and objects. Sci. Tech. J. Inf. Technol. Mech. Opt. 21(5), 720\u2013726 (2021) (In Russian)","DOI":"10.17586\/2226-1494-2021-21-5-720-726"},{"key":"25_CR35","doi-asserted-by":"crossref","unstructured":"Meyer, B.: Touch of Class: Learning to Program Well with Object and Contracts. Springer (2009)","DOI":"10.1007\/978-3-540-92145-5"},{"issue":"6","key":"25_CR36","doi-asserted-by":"publisher","first-page":"699","DOI":"10.1007\/s00165-019-00490-3","volume":"31","author":"JS Moore","year":"2019","unstructured":"Moore, J.S.: Milestones from the Pure Lisp Theorem Prover to ACL2. Formal Aspects Comput. 31(6), 699\u2013732 (2019)","journal-title":"Formal Aspects Comput."},{"key":"25_CR37","doi-asserted-by":"publisher","first-page":"185","DOI":"10.1016\/j.entcs.2009.05.052","volume":"240","author":"MO Myreen","year":"2009","unstructured":"Myreen, M.O., Gordon, M.J.C.: Transforming programs into recursive functions. Electron. Notes Theor. Comput. Sci. 240, 185\u2013200 (2009)","journal-title":"Electron. Notes Theor. Comput. Sci."},{"issue":"1","key":"25_CR38","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/s11086-005-0007-7","volume":"31","author":"VA Nepomniaschy","year":"2005","unstructured":"Nepomniaschy, V.A.: Symbolic method of verification of definite iterations over altered data structures. Program. Comput. Softw. 31(1), 1\u20139 (2005)","journal-title":"Program. Comput. Softw."},{"key":"25_CR39","doi-asserted-by":"publisher","unstructured":"Nordio, M., Calcagno, C., M\u00fcller, P., Meyer, B.: A Sound and complete program logic for Eiffel. In: Oriol, M., Meyer, B. (eds.) TOOLS EUROPE 2009, LNBIP, vol. 33. Springer, Berlin, Heidelberg (2009). https:\/\/doi.org\/10.1007\/978-3-642-02571-6_12","DOI":"10.1007\/978-3-642-02571-6_12"},{"issue":"5","key":"25_CR40","doi-asserted-by":"publisher","first-page":"495","DOI":"10.1007\/s00165-017-0435-1","volume":"30","author":"N Polikarpova","year":"2018","unstructured":"Polikarpova, N., Tschannen, J., Furia, C.A.: A fully verified container library. Formal Aspects Comput. 30(5), 495\u2013523 (2018)","journal-title":"Formal Aspects Comput."},{"key":"25_CR41","doi-asserted-by":"crossref","unstructured":"Pyzhov, K., Idrisov, R.: Back-end translator for Sisal 3.1 compiler. Bulletin of the Novosibirsk Computing Center. Ser. Comput. Sci. (35), 101\u2013119 (2013)","DOI":"10.31144\/bncc.cs.2542-1972.2013.n35.p101-119"},{"key":"25_CR42","doi-asserted-by":"publisher","unstructured":"Stasenko, A.: Sisal 3.2 language features overview. In: Malyshkin, V. (eds.) PaCT 2011, LNCS, vol. 6873, pp. 110\u2013124. Springer, Berlin, Heidelberg (2011). https:\/\/doi.org\/10.1007\/978-3-642-23178-0_10","DOI":"10.1007\/978-3-642-23178-0_10"},{"issue":"5","key":"25_CR43","doi-asserted-by":"publisher","first-page":"549","DOI":"10.18255\/1818-1015-2018-5-549-560","volume":"25","author":"N Shilov","year":"2018","unstructured":"Shilov, N.: Etude on recursion elimination. Model. Anal. Inf. Syst. 25(5), 549\u2013560 (2018)","journal-title":"Model. Anal. Inf. Syst."},{"key":"25_CR44","doi-asserted-by":"publisher","unstructured":"Shilov, N., Danko, D.: Teaching efficient recursive programming and recursion elimination using olympiads and contests problems. In: Bruel, J.-M., Capozucca, A., Mazzara, M., Meyer, B., Naumchev, A., Sadovykh, A. (eds.) FISEE 2019, LNCS, vol. 12271, pp. 246\u2013264. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-57663-9_16","DOI":"10.1007\/978-3-030-57663-9_16"},{"key":"25_CR45","doi-asserted-by":"crossref","unstructured":"Zhumagambetov, R.: Teaching formal methods in academia: a systematic literature review. In: Cerone, A., Roggenbach, M. (eds.) FMFun 2019, CCIS, vol. 1301, pp. 218\u2013226. Springer, Cham (2021)","DOI":"10.1007\/978-3-030-71374-4_12"}],"container-title":["Smart Innovation, Systems and Technologies","Agents and Multi-agent Systems: Technologies and Applications 2024"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-981-97-6469-3_25","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,3,1]],"date-time":"2025-03-01T23:24:57Z","timestamp":1740871497000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-981-97-6469-3_25"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025]]},"ISBN":["9789819764686","9789819764693"],"references-count":45,"URL":"https:\/\/doi.org\/10.1007\/978-981-97-6469-3_25","relation":{},"ISSN":["2190-3018","2190-3026"],"issn-type":[{"type":"print","value":"2190-3018"},{"type":"electronic","value":"2190-3026"}],"subject":[],"published":{"date-parts":[[2025]]},"assertion":[{"value":"2 March 2025","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"KES-AMSTA","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"KES International Symposium on Agent and Multi-Agent Systems: Technologies and Applications","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Madeira","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Portugal","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2024","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"19 June 2024","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"21 June 2024","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"18","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"kesamsta2024","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/amsta-24.kesinternational.org\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}