{"id":"https://openalex.org/W7118015292","doi":"https://doi.org/10.3390/computers15010015","title":"Enabling Deep Recursion in C++","display_name":"Enabling Deep Recursion in C++","publication_year":2026,"publication_date":"2026-01-01","ids":{"openalex":"https://openalex.org/W7118015292","doi":"https://doi.org/10.3390/computers15010015"},"language":"en","primary_location":{"id":"doi:10.3390/computers15010015","is_oa":true,"landing_page_url":"https://doi.org/10.3390/computers15010015","pdf_url":null,"source":{"id":"https://openalex.org/S4210228075","display_name":"Computers","issn_l":"2073-431X","issn":["2073-431X"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310310987","host_organization_name":"Multidisciplinary Digital Publishing Institute","host_organization_lineage":["https://openalex.org/P4310310987"],"host_organization_lineage_names":["Multidisciplinary Digital Publishing Institute"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Computers","raw_type":"journal-article"},"type":"article","indexed_in":["crossref","doaj"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://doi.org/10.3390/computers15010015","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5015901964","display_name":"Sa\u0161a N. Malkov","orcid":"https://orcid.org/0000-0002-4385-6322"},"institutions":[{"id":"https://openalex.org/I4068193","display_name":"University of Belgrade","ror":"https://ror.org/02qsmb048","country_code":"RS","type":"education","lineage":["https://openalex.org/I4068193"]}],"countries":["RS"],"is_corresponding":true,"raw_author_name":"Sa\u0161a N. Malkov","raw_affiliation_strings":["Department of Computer Science, Faculty of Mathematics, University of Belgrade, Studentski Trg 16, 11158 Belgrade, Serbia"],"raw_orcid":"https://orcid.org/0000-0002-4385-6322","affiliations":[{"raw_affiliation_string":"Department of Computer Science, Faculty of Mathematics, University of Belgrade, Studentski Trg 16, 11158 Belgrade, Serbia","institution_ids":["https://openalex.org/I4068193"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5012784945","display_name":"Ivan \u010cuki\u0107","orcid":"https://orcid.org/0000-0001-5358-0828"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Ivan Lj. \u010cuki\u0107","raw_affiliation_strings":["Independent Researcher, 11000 Belgrade, Serbia"],"raw_orcid":"https://orcid.org/0000-0001-5358-0828","affiliations":[{"raw_affiliation_string":"Independent Researcher, 11000 Belgrade, Serbia","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5121790186","display_name":"Petar \u017d. \u0110or\u0111evi\u0107","orcid":null},"institutions":[{"id":"https://openalex.org/I4068193","display_name":"University of Belgrade","ror":"https://ror.org/02qsmb048","country_code":"RS","type":"education","lineage":["https://openalex.org/I4068193"]}],"countries":["RS"],"is_corresponding":false,"raw_author_name":"Petar \u017d. \u0110or\u0111evi\u0107","raw_affiliation_strings":["Department of Computer Science, Faculty of Mathematics, University of Belgrade, Studentski Trg 16, 11158 Belgrade, Serbia"],"raw_orcid":"https://orcid.org/0009-0000-2153-4114","affiliations":[{"raw_affiliation_string":"Department of Computer Science, Faculty of Mathematics, University of Belgrade, Studentski Trg 16, 11158 Belgrade, Serbia","institution_ids":["https://openalex.org/I4068193"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5015901964"],"corresponding_institution_ids":["https://openalex.org/I4068193"],"apc_list":{"value":1600,"currency":"CHF","value_usd":1732},"apc_paid":{"value":1600,"currency":"CHF","value_usd":1732},"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.02679517,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"15","issue":"1","first_page":"15","last_page":"15"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.435699999332428,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.435699999332428,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.296999990940094,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.11620000004768372,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/recursion","display_name":"Recursion (computer science)","score":0.9046000242233276},{"id":"https://openalex.org/keywords/stack","display_name":"Stack (abstract data type)","score":0.6829000115394592},{"id":"https://openalex.org/keywords/call-stack","display_name":"Call stack","score":0.6614999771118164},{"id":"https://openalex.org/keywords/simple","display_name":"Simple (philosophy)","score":0.5892999768257141},{"id":"https://openalex.org/keywords/overhead","display_name":"Overhead (engineering)","score":0.4871000051498413},{"id":"https://openalex.org/keywords/interface","display_name":"Interface (matter)","score":0.44369998574256897},{"id":"https://openalex.org/keywords/series","display_name":"Series (stratigraphy)","score":0.4341999888420105}],"concepts":[{"id":"https://openalex.org/C168773036","wikidata":"https://www.wikidata.org/wiki/Q264164","display_name":"Recursion (computer science)","level":2,"score":0.9046000242233276},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7814000248908997},{"id":"https://openalex.org/C9395851","wikidata":"https://www.wikidata.org/wiki/Q177929","display_name":"Stack (abstract data type)","level":2,"score":0.6829000115394592},{"id":"https://openalex.org/C119024030","wikidata":"https://www.wikidata.org/wiki/Q759899","display_name":"Call stack","level":3,"score":0.6614999771118164},{"id":"https://openalex.org/C2780586882","wikidata":"https://www.wikidata.org/wiki/Q7520643","display_name":"Simple (philosophy)","level":2,"score":0.5892999768257141},{"id":"https://openalex.org/C2779960059","wikidata":"https://www.wikidata.org/wiki/Q7113681","display_name":"Overhead (engineering)","level":2,"score":0.4871000051498413},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4632999897003174},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.44369998574256897},{"id":"https://openalex.org/C143724316","wikidata":"https://www.wikidata.org/wiki/Q312468","display_name":"Series (stratigraphy)","level":2,"score":0.4341999888420105},{"id":"https://openalex.org/C183003079","wikidata":"https://www.wikidata.org/wiki/Q1000371","display_name":"Personalization","level":2,"score":0.4237000048160553},{"id":"https://openalex.org/C124416688","wikidata":"https://www.wikidata.org/wiki/Q3454656","display_name":"Mutual recursion","level":3,"score":0.4104999899864197},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.334199994802475},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.32359999418258667},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.29910001158714294},{"id":"https://openalex.org/C139503435","wikidata":"https://www.wikidata.org/wiki/Q5300083","display_name":"Double recursion","level":3,"score":0.29420000314712524},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.2583000063896179},{"id":"https://openalex.org/C71559656","wikidata":"https://www.wikidata.org/wiki/Q671298","display_name":"Divide and conquer algorithms","level":2,"score":0.257999986410141},{"id":"https://openalex.org/C2776542497","wikidata":"https://www.wikidata.org/wiki/Q5266672","display_name":"Development (topology)","level":2,"score":0.257999986410141},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.2540999948978424}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.3390/computers15010015","is_oa":true,"landing_page_url":"https://doi.org/10.3390/computers15010015","pdf_url":null,"source":{"id":"https://openalex.org/S4210228075","display_name":"Computers","issn_l":"2073-431X","issn":["2073-431X"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310310987","host_organization_name":"Multidisciplinary Digital Publishing Institute","host_organization_lineage":["https://openalex.org/P4310310987"],"host_organization_lineage_names":["Multidisciplinary Digital Publishing Institute"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Computers","raw_type":"journal-article"},{"id":"pmh:oai:doaj.org/article:d43778ac455f49bdb0627833863b57af","is_oa":true,"landing_page_url":"https://doaj.org/article/d43778ac455f49bdb0627833863b57af","pdf_url":null,"source":{"id":"https://openalex.org/S4306401280","display_name":"DOAJ (DOAJ: Directory of Open Access Journals)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-sa","license_id":"https://openalex.org/licenses/cc-by-sa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Computers, Vol 15, Iss 1, p 15 (2026)","raw_type":"article"}],"best_oa_location":{"id":"doi:10.3390/computers15010015","is_oa":true,"landing_page_url":"https://doi.org/10.3390/computers15010015","pdf_url":null,"source":{"id":"https://openalex.org/S4210228075","display_name":"Computers","issn_l":"2073-431X","issn":["2073-431X"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310310987","host_organization_name":"Multidisciplinary Digital Publishing Institute","host_organization_lineage":["https://openalex.org/P4310310987"],"host_organization_lineage_names":["Multidisciplinary Digital Publishing Institute"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Computers","raw_type":"journal-article"},"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9","score":0.4047664403915405}],"awards":[{"id":"https://openalex.org/G7102464571","display_name":null,"funder_award_id":"451-03-136/2025-03/200104","funder_id":"https://openalex.org/F4320322729","funder_display_name":"Ministarstvo Prosvete, Nauke i Tehnolo\u0161kog Razvoja"}],"funders":[{"id":"https://openalex.org/F4320322729","display_name":"Ministarstvo Prosvete, Nauke i Tehnolo\u0161kog Razvoja","ror":"https://ror.org/01znas443"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":14,"referenced_works":["https://openalex.org/W1530673042","https://openalex.org/W1580664042","https://openalex.org/W2119293933","https://openalex.org/W2519396753","https://openalex.org/W2792801185","https://openalex.org/W2889886665","https://openalex.org/W2913888506","https://openalex.org/W3033957710","https://openalex.org/W3162885617","https://openalex.org/W4233965259","https://openalex.org/W4237211384","https://openalex.org/W4240341008","https://openalex.org/W4320519724","https://openalex.org/W4399851369"],"related_works":[],"abstract_inverted_index":{"Recursion":[0],"is":[1,54,108,121],"often":[2,32],"presented":[3],"as":[4],"a":[5,49,72,155],"nice":[6],"and":[7,41,43,63,74,110,126,133,136,161],"illustrative":[8],"technique,":[9],"only":[10,112],"to":[11,22,56,90,113,123,144,167],"later":[12],"conclude":[13],"that":[14,77],"it":[15],"should":[16],"(almost)":[17],"never":[18],"be":[19,33,91,124,142,168],"used":[20,92,179],"due":[21],"potential":[23],"problems":[24],"with":[25,147],"call":[26,58],"stack":[27,59],"overflow.":[28],"However,":[29],"recursion":[30,80,89],"can":[31,141],"the":[34,65,181,184],"technique":[35,53],"of":[36,102,157,183],"choice":[37],"during":[38],"algorithm":[39],"development":[40,103],"testing,":[42],"even":[44],"in":[45,81,180],"final":[46],"solutions.":[47],"Therefore,":[48],"simple":[50,73],"but":[51],"effective":[52,75,170],"needed":[55],"overcome":[57],"limitations.":[60],"We":[61],"designed":[62,122],"implemented":[64],"Extendable":[66],"Stack":[67],"Library":[68],"(ESL),":[69],"which":[70],"provides":[71],"interface":[76],"enables":[78],"deep":[79,88,114,173],"C++.":[82],"Its":[83],"flexible":[84,125],"usage":[85],"model":[86],"allows":[87],"where":[93],"needed,":[94],"without":[95],"requiring":[96],"major":[97],"project":[98],"modifications":[99],"or":[100],"customization":[101],"tools.":[104],"The":[105,119],"performance":[106],"overhead":[107],"moderate":[109],"localized":[111],"recursive":[115],"functions":[116],"using":[117],"ESL.":[118],"library":[120],"cross-platform.":[127],"It":[128,140,164],"supports":[129],"Linux":[130],"on":[131,138],"AMD64":[132],"AArch64":[134],"processors":[135],"Windows":[137],"AMD64.":[139],"adapted":[143],"more":[145],"platforms":[146],"relative":[148],"ease.":[149],"ESL":[150,175],"has":[151,165,176],"been":[152,177],"tested":[153],"through":[154],"series":[156],"unit":[158],"tests,":[159],"experiments,":[160],"practical":[162],"applications.":[163],"proven":[166],"an":[169],"solution":[171],"for":[172],"recursion.":[174],"successfully":[178],"implementation":[182],"Wafl":[185],"programming":[186],"language":[187],"interpreter.":[188]},"counts_by_year":[],"updated_date":"2026-05-06T08:25:59.206177","created_date":"2026-01-02T00:00:00"}
