> On Oct 18, 2017, at 1:08 PM, Matthias Felleisen <matth...@ccs.neu.edu>
> wrote:
> 
> What I imagined was that you’d define @h-examples, which would
> translate the former into the latter. — Matthias

I finally did this and got everything working, mostly. I have opened a
pull request with the current state of the namespaced implementation:

    https://github.com/lexi-lambda/hackett/pull/49

Comments are welcome.

I ended up needing to inline the definition of scribble/manual’s
`defform` into Hackett’s codebase and tweak it slightly to allow
displaying documented identifiers with different symbolic names. The
resulting forms require documentation authors to prefix all types with
`t:` in Scribble documentation, but it seems essentially invisible to
readers of the documentation, which is good.

All told, this change currently adds a net total of 988 LOC, which is
rather large. However, 497 of those are from Racket libraries I needed
to partially inline into Hackett’s implementation, which means the
weight of this feature is currently about 491 LOC. However, that number
does *not* include creating new versions of `only-in`, `rename-in`, and
friends that respect multiple namespaces, so there is still more work
to do.

The initial modules imports problem is still unsolved. I don’t currently
believe it is solvable without changes to Racket, but I’d like to be
proven wrong. The current solution to Scribble documentation is also
subpar, and I don’t think it provides a nice enough interface for users
documenting their own libraries written in `#lang hackett`, but that
seems possibly fixable. There’s also a lot of code cleanup I need to do
before I feel comfortable merging these changes, but I think they are
close to being functionally finished.

Feedback would be appreciated, though I imagine a lot of these changes
are too far down in the weeds for most potential reviewers. Still, even
small suggestions would likely be helpful here.

Alexis

-- 
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.

Reply via email to