zoon icon indicating copy to clipboard operation
zoon copied to clipboard

Loaded modules

Open goldingn opened this issue 7 years ago • 6 comments

Change zoon to load all modules into memory at once when loading zoon. Modules are maintained in an R package (zoon.modules) which is automatically (with user prompt) installed from CRAN IFF a newer version is available. This means that LoadModule() isn't needed, ModuleHelp() is redundant since ? and help() can be used, ModuleArguments() is redundant as formals() can be used.

This version downloads the modules repo from the dark_modules branch, but that can be changed.

goldingn avatar Feb 28 '18 00:02 goldingn

Do all modules get loaded in global namespace or somewhere else?

timcdlucas avatar Feb 28 '18 19:02 timcdlucas

They're attached as a package (so in a namespace which is attached to the search path), which means autocomplete works, you can get helpfiles with ?, and can use zoon offline

goldingn avatar Feb 28 '18 20:02 goldingn

This is running and passing tests fine locally. Just need to resolve this Travis-only issue.

goldingn avatar Feb 28 '18 20:02 goldingn

OK, sounds good. Guess we should tryyy a bit not to have mega common module names then. Though going to be hard to enforce on contributed modules.

timcdlucas avatar Feb 28 '18 20:02 timcdlucas

Yeah, good point!

BTW we (mainly @smwindecker) are working on another big change which removes all the parsing code from workflow and generally simplifies the internal workings, removes the 'default arguments' from modules (and simplifies their structure), and enables things like having multiple lists in a workflow, and chains within lists. That will change how modules functions are defined, but keeps the API the same from the module user's perspective.

We'll merge all this stuff together in the dark_zoon branch then we can all discuss how to polish/change that before integrating into master.

goldingn avatar Feb 28 '18 21:02 goldingn

Ooh sounds exciting. I'll keep an eye out.

timcdlucas avatar Feb 28 '18 22:02 timcdlucas