Mark, thanks again for your remarks
> 2018-05-30 3:07 GMT+02:00 Mark H Weaver <m...@netris.org>: > > You're right, it is problematic, and it's good that you noticed that. > It exposes internal details of Guile's implementation, which is quite > likely to change in the future. Do not use this interface if you can > avoid it, and expect code that uses it to break in future versions of > Guile. That said, it can be useful for writing things like macro > steppers. > Well, if it's gonna change, than a macro stepper that relies on that is on fragile ground, isn't it ? Why do you say that it's likely going to change ? Because the internal implementation is going to change ? Has it ever changed alrready, in the past ? I think a macro stepper is a fundamental tool. Macros are a unique feature (as far as I understand) of lispy languages and there are some notable libraries implemented as macros The ability to step through them would allow for tinkerers to explore I suppose this is exactly the reason why Racket has its macro stepping and inspecting tools I'm a bit surprised that such a fundamental functionality seems to be an afterthought in Guile > Will Guile have anything equivalent ? I asked myself > > > > Now you show me the "(system syntax)" namespace (or module) > > > > I didn't suspect it existed > > > > Does the manual mention it anywhere ? I didn' t see it > > Do you know how to search the manual or its index? Press 'i' from > either the Emacs or standalone info browsers to search the index, where > you can find 'syntax-local-binding'. > But how would I have known that I should have looed for "syntax-local-binding" ? And why not any other name ? I mean, the manual doesn't even mention macro stepping You can also search the entire manual text by pressing 's'. You can > find (system syntax) that way. > Ok But again: how would have I guessed that the namespace containing stuff I was interested in was named (system syntax)" and not in any oher way ? Of course I can search through a manual > > Or maybe does it belong to any scheme standard ? > > No, certainly not. > > > Do any more (system ....) namespaces exist ? > > > > How would I know ? > > Look in the "module" subdirectory of the Guile source tree for modules > that come with Guile itself, or more generally in the directories of > %load-path after installation. The directory structure mirrors the > module namespaces. The module (foo bar baz) is found in > <DIR>/foo/bar/baz.scm, where <DIR> is a component of %load-path. For > example, (system syntax) is in <DIR>/system/syntax.scm. In the Guile > source tree, it's in module/system/syntax.scm. Ok, I see those, now Thanks