Hello Gregg On 29-Set-02, Gregg Irwin wrote: > Hi Pekr, > > I'm not scared of DLL Hell, I'm *terrified* of it. :)
Carl is AmigaOS' main designer, and AmigaOS is heavly based on "dynamic linked library", and none has encountered trouble with them. M$ is another thing! Rebol yet today is modular, even if it is stuffed into one executable. Untill today Rebol/Core was the little brick to build a big environment, now RT has introduced Rebol/Base and a set of external module, which together make Rebol/Core, but they release only Rebol/Base and we must add external module if needed, I think it is uncomfortable. I like Petr's idea to make them downloadable if needed, all we need is to setup a new directory to use as a buffer, i.e. plugins, and a special command to check if the module is yet loaded or not. Before to download plugin command checks plugins diretory to find if it is present a local copy and if it has the rigth version tuple elsewere dowloads it from specified URL. Time ago, I had done something similar to autoupdate a program of mine. For example a Rebol script may be like this: REBOL [] plugin http://www.rebol.com/downloads/view.r 1.2.0 ; We need at least 1.2.0 plugin http://www.rebol.com/downloads/smtp.r ; We need any SMTP protocol version plugin/platform http://www.xyz.com/mp3decoder platform? ; We need any version for platform on which script is running ... We may use recursion to make life easy :) So if View module needs Core module it will be automaticaly downloaded: REBOL [] plugin http://www.rebol.com/downloads/core.r 1.0.0 ; We need at least 1.0.0 and so on... > DLLs and shared components can be both a blessing and a curse. In a > controlled environment, where you have a team building a large system, > using libraries is enormously beneficial, IMO. OTOH, I can't tell you how > much time I, and people I know, have wasted on DLL/OCX compatibility Amiga's libraries adopt this trick: if version 1.0 has these procedure: a, b, c The next library version MUST have old a, b, c procedure and add newest ones. A, b, c may be remapped on newst ones, but their entry point must be not removed, M$ doesn't adopt this trick ;) > What I hope doesn't happen is for REBOL to become like some other > languages that are really only good for programmers because it just > requires too much effort to set them up, use them, and learn about how > things work. Modularized Rebol will be good even for rookie ;) Regards -- "Where did you get all those facts!?!" -- To unsubscribe from this list, please send an email to [EMAIL PROTECTED] with "unsubscribe" in the subject, without the quotes.
