File Download
There are no files associated with this item.
Links for fulltext
(May Require Subscription)
- Publisher Website: 10.1145/2364527.2364541
- Scopus: eid_2-s2.0-84867541134
Supplementary
-
Citations:
- Scopus: 0
- Appears in Collections:
Conference Paper: Functional programming with structured graphs
Title | Functional programming with structured graphs |
---|---|
Authors | |
Keywords | Graphs Haskell Parametric Hoas |
Issue Date | 2012 |
Citation | Proceedings Of The Acm Sigplan International Conference On Functional Programming, Icfp, 2012, p. 77-88 How to Cite? |
Abstract | This paper presents a new functional programming model for graph structures called structured graphs. Structured graphs extend conventional algebraic datatypes with explicit definition and manipulation of cycles and/or sharing, and offer a practical and convenient way to program graphs in functional programming languages like Haskell. The representation of sharing and cycles (edges) employs recursive binders and uses an encoding inspired by parametric higher-order abstract syntax. Unlike traditional approaches based on mutable references or node/edge lists, well-formedness of the graph structure is ensured statically and reasoning can be done with standard functional programming techniques. Since the binding structure is generic, we can define many useful generic combinators for manipulating structured graphs. We give applications and show how to reason about structured graphs. © 2012 ACM. |
Persistent Identifier | http://hdl.handle.net/10722/188501 |
References |
DC Field | Value | Language |
---|---|---|
dc.contributor.author | Oliveira, BCDS | en_US |
dc.contributor.author | Cook, WR | en_US |
dc.date.accessioned | 2013-09-03T04:08:45Z | - |
dc.date.available | 2013-09-03T04:08:45Z | - |
dc.date.issued | 2012 | en_US |
dc.identifier.citation | Proceedings Of The Acm Sigplan International Conference On Functional Programming, Icfp, 2012, p. 77-88 | en_US |
dc.identifier.uri | http://hdl.handle.net/10722/188501 | - |
dc.description.abstract | This paper presents a new functional programming model for graph structures called structured graphs. Structured graphs extend conventional algebraic datatypes with explicit definition and manipulation of cycles and/or sharing, and offer a practical and convenient way to program graphs in functional programming languages like Haskell. The representation of sharing and cycles (edges) employs recursive binders and uses an encoding inspired by parametric higher-order abstract syntax. Unlike traditional approaches based on mutable references or node/edge lists, well-formedness of the graph structure is ensured statically and reasoning can be done with standard functional programming techniques. Since the binding structure is generic, we can define many useful generic combinators for manipulating structured graphs. We give applications and show how to reason about structured graphs. © 2012 ACM. | en_US |
dc.language | eng | en_US |
dc.relation.ispartof | Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP | en_US |
dc.subject | Graphs | en_US |
dc.subject | Haskell | en_US |
dc.subject | Parametric Hoas | en_US |
dc.title | Functional programming with structured graphs | en_US |
dc.type | Conference_Paper | en_US |
dc.identifier.email | Oliveira, BCDS: oliveira@comp.nus.edu.sg | en_US |
dc.identifier.authority | Oliveira, BCDS=rp01786 | en_US |
dc.description.nature | link_to_subscribed_fulltext | en_US |
dc.identifier.doi | 10.1145/2364527.2364541 | en_US |
dc.identifier.scopus | eid_2-s2.0-84867541134 | en_US |
dc.relation.references | http://www.scopus.com/mlt/select.url?eid=2-s2.0-84867541134&selection=ref&src=s&origin=recordpage | en_US |
dc.identifier.spage | 77 | en_US |
dc.identifier.epage | 88 | en_US |
dc.identifier.scopusauthorid | Oliveira, BCDS=12239474400 | en_US |
dc.identifier.scopusauthorid | Cook, WR=11939670900 | en_US |