Appears some dev's are dead set on downloading scripts piece-meal (a la "AMD"). Occurs to me that Jessie is perfect for that. Just need to be able to choose a "foundation" or "layer" flavor in the builder.
Basically, a "layer" lib would simply augment the API, rather than replacing it. I haven't checked, but perhaps we already allow for that.
The idea is - if you really think it is necessary - you could build several Jessie libs, starting with initial low-level functions. Then you could document.write or inject additional "layers" (augmenting the API with higher-level functions). Could be done at outset to save downloading unusable functions or in response to user actions. I see both as unnecessary in virtually all cases, but the kids really seem to like it. :)
The information needed to make optimal decisions is part of the self-documenting functions (right at the top). That's a huge advantage over every similar scheme out there. Would be trivial to automate the output of an entire "layered" app as HTML.
Particularly in the case where each is loaded (or not) in turn during the parse, the pattern is very simple. Will add some support functions to make it even easier (when I have the chance).
As for loading "layers" after the parse, cross-browser script injection code can be found in My Library. For cases where the app needs to wait for a callback (from the loaded script), an alternate header/footer (or footer at least) will be needed. This is the dreaded "boiler plating" that loader libs are falling all over themselves to avoid. Why? Nobody seems to know; something about trying to be more like CommonJS, which makes no sense at all for this type of design. Why not? Will leave that as an exercise (or see my dealings with the Dojo greenhorns).
Only trick to it is that "layer" libraries must be built without their lower-level dependencies. That's something we disallow at present, though not hard to do by editing the "layers" after build. Clearly it would be much better if automated through the builder interface.
So maybe checkboxes or a select at top? I'll leave that up to whomever picks up the ticket. Much too busy to do anything but post ideas at the moment. Can provide advice for this task as already set up a similar system for Dojo (about 4 years ago). We know what happened to that, so let's get it right on this project.
Appears some dev's are dead set on downloading scripts piece-meal (a la "AMD"). Occurs to me that Jessie is perfect for that. Just need to be able to choose a "foundation" or "layer" flavor in the builder.
Basically, a "layer" lib would simply augment the API, rather than replacing it. I haven't checked, but perhaps we already allow for that.
The idea is - if you really think it is necessary - you could build several Jessie libs, starting with initial low-level functions. Then you could document.write or inject additional "layers" (augmenting the API with higher-level functions). Could be done at outset to save downloading unusable functions or in response to user actions. I see both as unnecessary in virtually all cases, but the kids really seem to like it. :)
The information needed to make optimal decisions is part of the self-documenting functions (right at the top). That's a huge advantage over every similar scheme out there. Would be trivial to automate the output of an entire "layered" app as HTML.
Particularly in the case where each is loaded (or not) in turn during the parse, the pattern is very simple. Will add some support functions to make it even easier (when I have the chance).
As for loading "layers" after the parse, cross-browser script injection code can be found in My Library. For cases where the app needs to wait for a callback (from the loaded script), an alternate header/footer (or footer at least) will be needed. This is the dreaded "boiler plating" that loader libs are falling all over themselves to avoid. Why? Nobody seems to know; something about trying to be more like CommonJS, which makes no sense at all for this type of design. Why not? Will leave that as an exercise (or see my dealings with the Dojo greenhorns).
Only trick to it is that "layer" libraries must be built without their lower-level dependencies. That's something we disallow at present, though not hard to do by editing the "layers" after build. Clearly it would be much better if automated through the builder interface.
So maybe checkboxes or a select at top? I'll leave that up to whomever picks up the ticket. Much too busy to do anything but post ideas at the moment. Can provide advice for this task as already set up a similar system for Dojo (about 4 years ago). We know what happened to that, so let's get it right on this project.