A Practical Study of Control in Objected-Oriented–Functional–Logic Programming with Paisley
Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms, it brings the power of functional-logic processing of arbitrary data objects to the Java platform, without constraining the underlying objec...
Uloženo v:
| Vydáno v: | Electronic proceedings in theoretical computer science Ročník 234; číslo Proc. WLP 2015/'16/WFLP'16; s. 150 - 164 |
|---|---|
| Hlavní autoři: | , |
| Médium: | Journal Article |
| Jazyk: | angličtina |
| Vydáno: |
Open Publishing Association
01.01.2017
|
| ISSN: | 2075-2180, 2075-2180 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Abstract | Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms, it brings the power of functional-logic processing of arbitrary data objects to the Java platform, without constraining the underlying object-oriented semantics. Here we present an extension to the Paisley framework that adds pattern-based control flow. It exploits recent additions to the Java language, namely functional interfaces and lambda expressions, for an explicit and transparent continuation-passing style approach to control. We evaluate the practical impact of the novel features on a real-world case study that reengineers a third-party open-source project to use Paisley in place of conventional object-oriented data query idioms. We find the approach viable for incremental refactoring of legacy code, with significant qualitative improvements regarding separation of concerns, clarity and intentionality, thus making for easier code understanding, testing and debugging. |
|---|---|
| AbstractList | Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms, it brings the power of functional-logic processing of arbitrary data objects to the Java platform, without constraining the underlying object-oriented semantics. Here we present an extension to the Paisley framework that adds pattern-based control flow. It exploits recent additions to the Java language, namely functional interfaces and lambda expressions, for an explicit and transparent continuation-passing style approach to control. We evaluate the practical impact of the novel features on a real-world case study that reengineers a third-party open-source project to use Paisley in place of conventional object-oriented data query idioms. We find the approach viable for incremental refactoring of legacy code, with significant qualitative improvements regarding separation of concerns, clarity and intentionality, thus making for easier code understanding, testing and debugging. |
| Author | Trancón y Widemann, Baltasar Lepper, Markus |
| Author_xml | – sequence: 1 givenname: Baltasar surname: Trancón y Widemann fullname: Trancón y Widemann, Baltasar organization: Ilmenau University of Technology, DE – sequence: 2 givenname: Markus surname: Lepper fullname: Lepper, Markus organization: semantics GmbH, DE |
| BookMark | eNpNkE1KA0EQhRuJYIzZeYA5gBOrf-ZvGUKigUACieump7tm7DCZlp4Jkp138IaexDYRsTb1XhX1Qb1bMmhdi4TcU5gIBuJxvtnNthPGxYTSKzJkkCUxozkM_ukbMu66PYTiBRNFOiRyGm280r3Vqom2_dGcIldFM9f23jWRbaN1uUfdo4nX3mIbxNfH5-LYhgvXqiaYlautDhBXe3U42LaO3m3_Gm2U7Ro83ZHrSjUdjn_7iLws5rvZc7xaPy1n01WsWZL3scgw5SkypICoIU-NyXJRJlABJhVNWUlBUIOZMZCkRZEXmhrISiN42PGSj8jywjVO7eWbtwflT9IpK88D52upfPiyQZkCLQ3XeYGgBZpKgeBVCaxkhuZpVQTWw4Wlves6j9Ufj4L8yVqes5Yha0kp_wZ6L3Wj |
| ContentType | Journal Article |
| DBID | AAYXX CITATION DOA |
| DOI | 10.4204/EPTCS.234.11 |
| DatabaseName | CrossRef Directory of Open Access Journals (DOAJ) |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: DOA name: DOAJ Directory of Open Access Journals url: https://www.doaj.org/ sourceTypes: Open Website |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 2075-2180 |
| EndPage | 164 |
| ExternalDocumentID | oai_doaj_org_article_601bd3c89e0c4edfa043fb02b2d186f9 10_4204_EPTCS_234_11 |
| GroupedDBID | 5VS AAYXX ADBBV ALMA_UNASSIGNED_HOLDINGS BCNDV CITATION E3Z GROUPED_DOAJ KQ8 M~E OK1 |
| ID | FETCH-LOGICAL-c258t-47e636e2e10eec086dd784b50f0e5f162b1041de7dd0569989c1d07bd4362b3b3 |
| IEDL.DBID | DOA |
| ISICitedReferencesCount | 0 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000396732100013&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 2075-2180 |
| IngestDate | Fri Oct 03 12:43:54 EDT 2025 Sat Nov 29 02:05:26 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | false |
| IsScholarly | true |
| Issue | Proc. WLP 2015/'16/WFLP'16 |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c258t-47e636e2e10eec086dd784b50f0e5f162b1041de7dd0569989c1d07bd4362b3b3 |
| OpenAccessLink | https://doaj.org/article/601bd3c89e0c4edfa043fb02b2d186f9 |
| PageCount | 15 |
| ParticipantIDs | doaj_primary_oai_doaj_org_article_601bd3c89e0c4edfa043fb02b2d186f9 crossref_primary_10_4204_EPTCS_234_11 |
| PublicationCentury | 2000 |
| PublicationDate | 2017-1-1 2017-01-01 |
| PublicationDateYYYYMMDD | 2017-01-01 |
| PublicationDate_xml | – month: 01 year: 2017 text: 2017-1-1 day: 01 |
| PublicationDecade | 2010 |
| PublicationTitle | Electronic proceedings in theoretical computer science |
| PublicationYear | 2017 |
| Publisher | Open Publishing Association |
| Publisher_xml | – name: Open Publishing Association |
| SSID | ssj0000392496 |
| Score | 2.0092976 |
| Snippet | Paisley is an extensible lightweight embedded domain-specific language for nondeterministic pattern matching in Java. Using simple APIs and programming idioms,... |
| SourceID | doaj crossref |
| SourceType | Open Website Index Database |
| StartPage | 150 |
| Title | A Practical Study of Control in Objected-Oriented–Functional–Logic Programming with Paisley |
| URI | https://doaj.org/article/601bd3c89e0c4edfa043fb02b2d186f9 |
| Volume | 234 |
| WOSCitedRecordID | wos000396732100013&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVAON databaseName: DOAJ Directory of Open Access Journals customDbUrl: eissn: 2075-2180 dateEnd: 20201231 omitProxy: false ssIdentifier: ssj0000392496 issn: 2075-2180 databaseCode: DOA dateStart: 20090101 isFulltext: true titleUrlDefault: https://www.doaj.org/ providerName: Directory of Open Access Journals – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 2075-2180 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000392496 issn: 2075-2180 databaseCode: M~E dateStart: 20090101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV3LSsQwFA0iLtz4FscXWegyM3n1keU4zODGB6jgrjS5CbiwyjgKbsR_8A_9Em_SKuPKjZvSlhLKSZtzz-3tuYQc1dKAMyawEmrOtBOe2SwHloGVuQkY4ds6NZsozs_L21tzOdfqK9aEtfbALXADFAwWlCuN5057CDXXKlgurQRR5iH9uscLMyem0hqsoq5IneWQExnyGG-r3rXkejC-vB5d9aXSfSF-8dGcbX_il8kaWekCQzpsb2idLPhmg6x-N12g3Tu4SaohbT2GEFwaqwBf6UOgo7binN419MLG1IoHdhEtjHHn8_1jguzVJv3wILZXdjhIKsy6R-qiMRlL40ckXCG2yM1kfD06ZV2XBOZkVs6YLnyuci-94N47VCgARaltxgP3WRC5tKi4BPgCAIMdVFfGCeCFBY3cZZVV22SxeWj8DqHCYrRnjQIpal3WwSpnbEBJVgTuOIceOf7GqnpszTAqFBER0yphWiGmqCl65CQC-XNNtLBOJ3Biq25iq78mdvc_BtkjyzLycMqZ7JPF2fTZH5Al9zK7e5oepmcGt2dv4y_8-8nX |
| linkProvider | Directory of Open Access Journals |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+Practical+Study+of+Control+in+Objected-Oriented%E2%80%93Functional%E2%80%93Logic+Programming+with+Paisley&rft.jtitle=Electronic+proceedings+in+theoretical+computer+science&rft.au=Baltasar+Tranc%C3%B3n+y+Widemann&rft.au=Markus+Lepper&rft.date=2017-01-01&rft.pub=Open+Publishing+Association&rft.issn=2075-2180&rft.eissn=2075-2180&rft.volume=234&rft.issue=Proc.+WLP+2015%2F%2716%2FWFLP%2716&rft.spage=150&rft.epage=164&rft_id=info:doi/10.4204%2FEPTCS.234.11&rft.externalDBID=DOA&rft.externalDocID=oai_doaj_org_article_601bd3c89e0c4edfa043fb02b2d186f9 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2075-2180&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2075-2180&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2075-2180&client=summon |