Difference between revisions of "H-99: Ninety-Nine Haskell Problems"
RossPaterson (talk | contribs) m |
m (Fix dead link) |
||
(34 intermediate revisions by 13 users not shown) | |||
Line 2: | Line 2: | ||
These are Haskell translations of [http://www.ic.unicamp.br/~meidanis/courses/mc336/2006s2/funcional/L-99_Ninety-Nine_Lisp_Problems.html Ninety-Nine Lisp Problems], | These are Haskell translations of [http://www.ic.unicamp.br/~meidanis/courses/mc336/2006s2/funcional/L-99_Ninety-Nine_Lisp_Problems.html Ninety-Nine Lisp Problems], | ||
− | which are themselves translations of [ | + | which are themselves translations of [https://web.archive.org/web/20170324220754/https://sites.google.com/site/prologsite/prolog-problems Ninety-Nine Prolog Problems]. |
− | If you want to work on one of these, put your name in the block so we know someone's working on it. Then, change n in your block to the appropriate problem number, and fill in the <Problem description | + | If you want to work on one of these, put your name in the block so we know someone's working on it. Then, change n in your block to the appropriate problem number, and fill in the <Problem description>,<example in Haskell>,<solution in haskell> and <description of implementation> fields. Then be sure to update the status on this page to indicate that we have a solution! |
== The problems == | == The problems == | ||
− | These problems have been split into | + | These problems have been split into 11 parts, for ease of access. |
* [[99_questions/1_to_10|Questions 1 to 10]]: Lists | * [[99_questions/1_to_10|Questions 1 to 10]]: Lists | ||
Line 15: | Line 15: | ||
* [[99_questions/31_to_41|Questions 31 to 41]]: Arithmetic | * [[99_questions/31_to_41|Questions 31 to 41]]: Arithmetic | ||
* [[99_questions/46_to_50|Questions 46 to 50]]: Logic and codes | * [[99_questions/46_to_50|Questions 46 to 50]]: Logic and codes | ||
− | * [[99_questions/ | + | * [[99_questions/54A_to_60|Questions 54A to 60]]: Binary trees |
* [[99_questions/61_to_69|Questions 61 to 69]]: Binary trees, continued | * [[99_questions/61_to_69|Questions 61 to 69]]: Binary trees, continued | ||
* [[99_questions/70B_to_73|Questions 70B to 73]]: Multiway trees | * [[99_questions/70B_to_73|Questions 70B to 73]]: Multiway trees | ||
* [[99_questions/80_to_89|Questions 80 to 89]]: Graphs | * [[99_questions/80_to_89|Questions 80 to 89]]: Graphs | ||
− | * [[99_questions/ | + | * [[99_questions/90_to_94|Questions 90 to 94]]: Miscellaneous problems |
+ | * [[99_questions/95_to_99|Questions 95 to 99]]: Miscellaneous problems, continued | ||
− | + | (Though the problems number from 1 to 99, there are some gaps and some additions marked with letters. There are actually only 88 problems.) | |
− | + | == Solutions == | |
− | + | ||
− | + | Known solutions are listed at [[99 questions/Solutions]]. Some of those we have could do with cleaning up or additional solutions. | |
− | + | ||
− | + | == References == | |
− | + | ||
− | + | * [https://web.archive.org/web/20170324220754/https://sites.google.com/site/prologsite/prolog-problems P-99: Ninety-Nine Prolog Problems] (Wayback Machine; original link now dead) contains Prolog solutions to all the problems. | |
− | + | * [http://www.ic.unicamp.br/~meidanis/courses/mc336/2006s2/funcional/L-99_Ninety-Nine_Lisp_Problems.html L-99: Ninety-Nine Lisp Problems] contains Lisp solutions to problems 1-11, 14, 15, 17 and 20-28. | |
− | + | * [http://www.oreillynet.com/onlamp/blog/2006/12/99_problems_in_perl_6.html 99 Problems in Perl 6] has an increasing number of Perl 6 solutions (running on [http://www.pugscode.org/ Pugs]). | |
− | + | * [http://www.christiankissig.de/cms/index.php/en/programming/28-ocaml/28-99-problems-in-ocaml 99 Problems in OCaml] contains Ocaml solutions to many problems. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Category:Tutorials]] | [[Category:Tutorials]] | ||
+ | [[Category:Code]] |
Latest revision as of 19:11, 25 August 2021
These are Haskell translations of Ninety-Nine Lisp Problems,
which are themselves translations of Ninety-Nine Prolog Problems.
If you want to work on one of these, put your name in the block so we know someone's working on it. Then, change n in your block to the appropriate problem number, and fill in the <Problem description>,<example in Haskell>,<solution in haskell> and <description of implementation> fields. Then be sure to update the status on this page to indicate that we have a solution!
The problems
These problems have been split into 11 parts, for ease of access.
- Questions 1 to 10: Lists
- Questions 11 to 20: Lists, continued
- Questions 21 to 28: Lists again
- Questions 31 to 41: Arithmetic
- Questions 46 to 50: Logic and codes
- Questions 54A to 60: Binary trees
- Questions 61 to 69: Binary trees, continued
- Questions 70B to 73: Multiway trees
- Questions 80 to 89: Graphs
- Questions 90 to 94: Miscellaneous problems
- Questions 95 to 99: Miscellaneous problems, continued
(Though the problems number from 1 to 99, there are some gaps and some additions marked with letters. There are actually only 88 problems.)
Solutions
Known solutions are listed at 99 questions/Solutions. Some of those we have could do with cleaning up or additional solutions.
References
- P-99: Ninety-Nine Prolog Problems (Wayback Machine; original link now dead) contains Prolog solutions to all the problems.
- L-99: Ninety-Nine Lisp Problems contains Lisp solutions to problems 1-11, 14, 15, 17 and 20-28.
- 99 Problems in Perl 6 has an increasing number of Perl 6 solutions (running on Pugs).
- 99 Problems in OCaml contains Ocaml solutions to many problems.