Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search

[REBOL] Re: even further ... Re: Introducing REBOL/Base - FAQ

From: greggirwin:mindspring at: 29-Sep-2002 12:28

Hi Pekr, I'm not scared of DLL Hell, I'm *terrified* of it. :) << Carl, I would like to know your opinion on that, as that is the future of Rebol as I can see it. We can't refuse to support new technologies forever, just because it would add some space to our rebol.exe ;-) What do others think about it? >> I think there are a number of issues that RT has to wrestle with regarding this topic. I certainly believe in the value of libraries (i.e. precompiled components) but one of the best things about REBOL is the ability to distribute a single EXE with no other dependencies. 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 issues. It's kind of like the arguments for, and against, open source in some ways. If you write software that has to work across multiple versions of components/OSs, just checking what's there becomes a big task in itself. QuickBASIC/BasicPDS supported a thing called a "Quick Library" (.QLB). It was a compiled set of procedures that was like a static LIB, but had some extra info so it could be loaded into the QBX (their name for the IDE) where you could see all the routine names, etc. just as if they were included as source. You couldn't see the source for them because they were compiled. The compiler would create a LIB file at the same time as the QLB, so you could compile your app for deployment as a standalone EXE. Unfortunately, there's a whole range of desires and requirements that change along with the size and intended use of a product (read project). How do you keep things simple for the guy who wants to write shareware games but also allow the government, NASA, big commercial software vendors, etc. to construct large, complex systems that are life and mission critical? Can it run on everything from a PDA to a clustered supercomputer? Will it still be portable? What are the features that are most important? I'm digressing a bit :), but I guess my thinking is that we all have a different set of needs and desires. Can it still be simple, support all of them, and still retain all the attributes that make it special today? I think Carl and RT probably have a lot of things mapped out about how this all fits into their vision, and maybe some stuff doesn't. I believe they know how important it is to balance the development and deployment aspects, based on how REBOL works today. What I hope for is a compact kernel, like today, that you can easily build upon to incorporate the feature set you need in a consistent manner. I think that's how they build Core, View, Command, IOS/Serve, and IOS/Link today. Having an option to release, or even just use, precompiled libraries is not much different than LOADing and DOing external scripts today. 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. --Gregg