2012/11/29 Matthew Phillips
<matthew@phillipsoft.biz>
Thanks a lot for putting this together, it is a tremendous value. Couple of notes:
1) You have your ln -s command backwards (I do this all the time ;)) Should be ln -s /path/to/real-thing /path/to/new-link
Ah right.
2) This step doesn't work for me: (modules-compile! (modules-in-dir "~~/lib/modules")))
I get the error :
> (modules-compile! (modules-in-dir "~~/lib/modules"))
*** ERROR IN |module#define-syntax\|\|\|macro\|\|\|| -- Invalid define-syntax form (wrong number of arguments)
(define-syntax (lambda (source env mac-env) (let ((code (expr*:value source)...
hygiene/1>
I'm guessing there is a third argument (out filename?)??
Uh hmm that looks like an error in a module.
What about you do like this, compile each module in the std dir separately with (module-compile! 'dir/modulename) and check which one it was.
Or just do this by
(for-each (lambda (m) (print "compiling " m "\n") (module-compile! m)) (modules-in-dir "~~/lib/modules"))
and tell what worked and what didn't.
3) Should be noted for others, you can't compile from the command like this: bsc -exe myfile.scm like you normally would. Instead from the repl: (module-compile-to-standalone "a.out" 'somefile) use that in a script or makefile.
Riight.
As for syntactictower Per made some interface equalling -exe though exactly right now the syntactictower is rather for those who want to bring a bit of order, than for those who want to have complete function from the start.
It should not be a lot that needs to be brought to order though at all, from what I can see right now it's a question of maybe 10 hours to bring it to non-syntactictower's level.
If you feel like you can give a shot at it.
And, as for harmonizing non-syntactictower and syntactictower, what shuold be done is
1) Bring a "srfi" package resolver to non-syntactictower and put the srfi:s in there instead of in (std srfi/*). And,
2) Keep the srfi:s in both distros primarily under their number names, and then have "proxy" modules under nice names like "list", "string" etc. (Currently syntactictower has only the latter naming and non-syntactictower only has the further naming.)
This is all.
(And, syntactictower has better macro expansion, caching etc. technology so it's desirable to do this.)
Thanks. Same!