Views: a way for pattern matching to cohabit with data abstraction
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Manipulating multilinked data structures in a pure functional language
Software—Practice & Experience
Elements of functional programming
Elements of functional programming
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Real-time deques, multihead Turing machines, and purely functional programming
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Abstract data types in standard ML
Abstract data types in standard ML
An efficient representation for sparse sets
ACM Letters on Programming Languages and Systems (LOPLAS)
Structuring depth-first search algorithms in Haskell
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A new look at pattern matching in abstract data types
Proceedings of the first ACM SIGPLAN international conference on Functional programming
ML for the working programmer (2nd ed.)
ML for the working programmer (2nd ed.)
Revisiting catamorphisms over datatypes with embedded functions (or, programs from outer space)
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Functional programming with graphs
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Elements of ML programming (ML97 ed.)
Elements of ML programming (ML97 ed.)
Purely functional data structures
Purely functional data structures
The aggregate update problem in functional programming systems
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Breadth-first numbering: lessons from a small exercise in algorithm design
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
The Science of Programming
Algorithms; A Functional Programming Approach
Algorithms; A Functional Programming Approach
Fully Persistent Arrays (Extended Array)
WADS '89 Proceedings of the Workshop on Algorithms and Data Structures
WG '92 Proceedings of the 18th International Workshop on Graph-Theoretic Concepts in Computer Science
Graph Algorithms with a Functional Flavous
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
IFL '96 Selected Papers from the 8th International Workshop on Implementation of Functional Languages
Fully Persistent Graphs - Which One To Choose?
IFL '97 Selected Papers from the 9th International Workshop on Implementation of Functional Languages
An Initial-Algebra Approach to Directed Acyclic Graphs
MPC '95 Mathematics of Program Construction
Efficient graph algorithms using lazy monolithic arrays
Journal of Functional Programming
A new method for functional arrays
Journal of Functional Programming
Implementation and Application of Functional Languages
ICWE'07 Proceedings of the 7th international conference on Web engineering
Pregel: a system for large-scale graph processing
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
Granularity transformations in wayfinding
Spatial cognition III
A functional, successor list based version of warshall's algorithm with applications
RAMICS'11 Proceedings of the 12th international conference on Relational and algebraic methods in computer science
Algebraic knowledge discovery using haskell
PADL'07 Proceedings of the 9th international conference on Practical Aspects of Declarative Languages
Proceedings of the 8th ACM SIGPLAN workshop on Generic programming
Functional programming with structured graphs
Proceedings of the 17th ACM SIGPLAN international conference on Functional programming
Simple rectangle-based functional programs for computing reflexive-transitive closures
RAMiCS'12 Proceedings of the 13th international conference on Relational and Algebraic Methods in Computer Science
Using relations to develop a haskell program for computing maximum bipartite matchings
RAMiCS'12 Proceedings of the 13th international conference on Relational and Algebraic Methods in Computer Science
ESOP'13 Proceedings of the 22nd European conference on Programming Languages and Systems
An abstract representation of variational graphs
Proceedings of the 5th International Workshop on Feature-Oriented Software Development
Hi-index | 0.00 |
We propose a new style of writing graph algorithms in functional languages which is based on an alternative view of graphs as inductively defined data types. We show how this graph model can be implemented efficiently, and then we demonstrate how graph algorithms can be succinctly given by recursive function definitions based on the inductive graph view. We also regard this as a contribution to the teaching of algorithms and data structures in functional languages since we can use the functional-style graph algorithms instead of the imperative algorithms that are dominant today.