Hi all, Still working the koans project and am hitting a design snag. My expected UX is that you clone the repo, run racket koans/all.rkt, and then see nothing but failing unit tests for you to fix. But since some exercises have unbound module identifiers <https://github.com/zyrolasting/racket-koans/blob/master/koans/structs.rkt> or related errors, an abort prevents rackunit from printing a full report.
"Well Sage, why don't you write tests that actually *run*?" Great question! But if you look at that linked module you can see what I think is a clear, concise exercise where checking in unbound identifiers seemed reasonable at the time. I wanted someone to see that Racket was generating all of these identifiers and write the corresponding struct definition. After wresting with various combinations of (with-handlers), (check-exn), (fail), (module), and (call/prompt), I found that modules too picky about where they are defined for me to simply catch an unbound identifier error, and I wasn't liking how much noise I might be introducing in the koan itself. I'm starting to think writing these kind of exercises in a friendly way is only possible with macros, but before I go that far, is it possible for me to catch a module-level unbound identifier error and print a rackunit failure outright *without *distracting the student? I'd appreciate feedback on the design here too, since I have to pick a direction to handle this kind of problem project-wide. Sage -- 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.