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.

Reply via email to