> On Dec 14, 2016, at 9:19 AM, Prabhakar Ragde <plra...@uwaterloo.ca> wrote: > > Lawrence Bottorff wrote: > >> Can someone suggest a good text for data structures that would >> compatible with Racket? All I see are treatments using C/C++, Java, >> Python, i.e., the usual suspects. Or, how do you people at >> Racket-friendly/based universities teach undergrad data structures? > > I am developing such a course for a spring term (May-August) offering at the > University of Waterloo (though it will probably use OCaml). There does not > appear to be an ideal textbook; I plan to synthesize materials. There are FP > books which cover some of the material in various languages: Simon Thompson's > Haskell book, Algorithms by Rabhi and Lapalme (also Haskell), Larry Paulson's > ML book. (In my opinion, Okasaki and Bird are too advanced for a first DS > course.) Mark Allen Weiss's DS book in C is the best conventional book I have > found; it is not afraid of recursion. > > One issue is that an early FP approach may well cover some topics from a > typical DS course, since it is possible to do so earlier. Examples from my > own experience include various sorting algorithms, O-notation and algorithm > analysis, various heap implementations of priority queues, treaps, AVL trees, > RB trees, AA trees, tries, and KMP text search. I have covered these in > various incarnations of first-year Racket courses (not all at once). > > I'd be happy to consult if you are considering developing a course. —PR
I’m hesitant to chime in because my situation is a bit different, but I’m trying to make my department happy (appeasement, I know) by teaching a late-spring-of-first-year data structures in Python. We will be trying to stay within idiomatic Python while building on the design recipe, not an easy task. I’m going to take a look at the books you mention, and I’d very much like to hear about progress you make on your class. Many thanks! John Clements -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.