Purely functional data structure
In computer science, a purely functional data structure is a data structure that can be implemented in a purely functional language. The main difference between an arbitrary data structure and a purely functional one is that the latter is (strongly) immutable. This restriction ensures the data structure possesses the advantages of immutable objects: (full) persistency, quick copy of objects, and thread safety. Efficient purely functional data structures may require the use of lazy evaluation and memoization.
- Comment
- enIn computer science, a purely functional data structure is a data structure that can be implemented in a purely functional language. The main difference between an arbitrary data structure and a purely functional one is that the latter is (strongly) immutable. This restriction ensures the data structure possesses the advantages of immutable objects: (full) persistency, quick copy of objects, and thread safety. Efficient purely functional data structures may require the use of lazy evaluation and memoization.
- Has abstract
- enIn computer science, a purely functional data structure is a data structure that can be implemented in a purely functional language. The main difference between an arbitrary data structure and a purely functional one is that the latter is (strongly) immutable. This restriction ensures the data structure possesses the advantages of immutable objects: (full) persistency, quick copy of objects, and thread safety. Efficient purely functional data structures may require the use of lazy evaluation and memoization.
- Is primary topic of
- Purely functional data structure
- Label
- enPurely functional data structure
- Link from a Wikipage to an external page
- cstheory.stackexchange.com/q/1539
- ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005
- www.cs.cmu.edu/~sleator/papers/fully-persistent-lists.pdf
- www.cs.cmu.edu/~sleator/papers/making-data-structures-persistent.pdf
- www.cs.cmu.edu/~rwh/students/okasaki.pdf
- ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005/lecture-notes/persistent.pdf
- Link from a Wikipage to another Wikipage
- Amortized analysis
- Amortized queue
- Array data structure
- Balanced tree
- Brodal queue
- Category:Functional data structures
- Category:Functional programming
- Chris Okasaki
- Class (computer programming)
- Computer science
- Data structure
- Dynamic array
- Hash consing
- Haskell (programming language)
- Immutable object
- Lazy evaluation
- Logarithmic time
- Map (computer science)
- Memoization
- MIT OpenCourseWare
- Modular programming
- Parallel computing
- Persistent array
- Persistent data structure
- Priority queue
- Product type
- Purely functional language
- Real-time deque
- Real-time queue
- Red–black tree
- Scheduling (computing)
- Search tree
- Set (abstract data type)
- Singly linked list
- Singly-linked list
- Stack Exchange
- Store-passing style
- Sum type
- Thread safety
- Zipper (data structure)
- SameAs
- 2bTNv
- Purely functional data structure
- Q27924245
- Subject
- Category:Functional data structures
- Category:Functional programming
- WasDerivedFrom
- Purely functional data structure?oldid=1090910023&ns=0
- WikiPageLength
- 10822
- Wikipage page ID
- 12546121
- Wikipage revision ID
- 1090910023
- WikiPageUsesTemplate
- Template:Citation needed
- Template:Clarify
- Template:More citations needed
- Template:Not typo
- Template:R
- Template:Reflist