From: Kyle R. B. <kyl...@gm...> - 2007-09-25 02:07:45
|
> strict-import sounds like a reasonable feature. The only thing I > don't like about it is users having to change their imports into > strict-imports. Users might get paranoid that "import" is no longer > good enough, so then they'd be typing the longer version all the > time. I wonder if it would be possible to do something like (strict- > imports boolean) so that people wouldn't have to change their code, > only the current loading behavior. I actually prefer the strict-imports form you're suggesting. It would have to modify the interpreter instance or set a global correct? Adding the strict import at the top of a module/file would be nice since it would effectively be a declaration. Would it just have file/module scope or in the entire interpreter? I'm not sure what the best way would be to implement this in the current code base. Further comments below. > > > We're using JScheme in one of our production applications (for a > > DSL) and we're looking to have it be as strict as possible so that > > we end up deferring as few errors/issues to runtime as possible. > > Detecting failed class imports (when the class is not actually on > > the classpath) would help towards this goal. > > I like that argument. I could have used it in previous battles > discussions with management in years past. There are probably a lot of features that could be added to help in this respect (especially if they were optional, as suggested above). I actually would have pushed to use JScheme more if it weren't for the issue of lack of confidence in the runtime code. Unit testing helps but only goes so far. I wonder if anyone is still using JVMs prior to 1.2? I guess they > could still use "old" JScheme. > There may be a performance difference since ArrayList and HashMap > > are not synchronized themselves - and it looks like the code in > > JScheme is doing a lot of the synchronization itself anyway. > > We can run tests! Since you brought that up, what is the opinion on testing during the build? I see that tests are run, but they do not cause the build to fail as far as I can tell. Also, what would the opinion be on using JUnit as a testing framework? Or even one of the common Java build tools like Maven? We use Maven and the dependency declarations are very valuable - also, it would have been nice if JScheme were part of the ibiblio maven repository it could be used from maven projects (and thus automatically downloaded). Kyle |