... | ... | @@ -10,11 +10,13 @@ I'm especially interested in cases where this framework does not fit your applic |
|
|
## Goals, Non-Goals and Working Hypotheses
|
|
|
|
|
|
- Focus on practical usage. No design in the abstract; what's proposed here shall be usable, and used.
|
|
|
- Provide a clean separation between Collection and Data classes.
|
|
|
- Reduce the amount of explicit module-qualification that is currently required for collection types usage.
|
|
|
- Allow algorithms to be parameterized over collection types.
|
|
|
|
|
|
- No attempt to fit updatable/state-monad-based collections.
|
|
|
It looked like a bad idea to mix both updatable/non-updatable collections in a single classes framework.
|
|
|
However, when updatable/state-monad-based collections are added, they should adopt much of the look-n-feel so as to avoid the IArray/MArray different-name-for-same-functions problem.
|
|
|
- No attempt to fit 100% of the existing functions into classes.
|
|
|
Some of them are just best left in the modules to be accessed qualified.
|
|
|
|
... | ... | @@ -28,6 +30,13 @@ I'm especially interested in cases where this framework does not fit your applic |
|
|
- A single module is currently proposed, for ease of testing. The final version should of course be properly spilt into modules.
|
|
|
- Most names of classes are only tentative and should be all reconsidered. Good ideas welcome.
|
|
|
|
|
|
## References
|
|
|
|
|
|
- SPJ's Bulk Types with Sass : [ http://research.microsoft.com/%7Esimonpj/Papers/collections.ps.gz](http://research.microsoft.com/%7Esimonpj/Papers/collections.ps.gz)
|
|
|
- The Edison implementation of Okasaki's Functional Data Structures : [ http://www.eecs.tufts.edu/\~rdocki01/edison.html](http://www.eecs.tufts.edu/~rdocki01/edison.html);
|
|
|
- Java's implementation : [ http://java.sun.com/j2se/1.5.0/docs/api/java/util/package-summary.html](http://java.sun.com/j2se/1.5.0/docs/api/java/util/package-summary.html)
|
|
|
- C++ STL: [ http://www.cppreference.com/cppstl.html](http://www.cppreference.com/cppstl.html)
|
|
|
|
|
|
## Haddock
|
|
|
|
|
|
|
... | ... | |