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

[REBOL] Re: Beginner's questions on REBOL/Core and REBOL/View

From: greggirwin:mindspring at: 11-Sep-2002 13:26

Sundanda, et al << But a longer answer should be "you can't, but Rebol should". >> But is that feasible, and what would we have to give up in return? My thinking is more in line with Joel's post on this, though we may be talking along slightly different lines. I think the concept of a "source line" isn't nearly as meaningful in REBOL as in most other languages, but the more hints it can give us about the *context* in which an error occurred, the better. That's tricky too, because of our ability to create anonymous functions, rename, rebind, and, basically, create an entirely new system, on the fly. I think that REBOL gives us the tools (try, catch, disarm, error?, etc.) we need to get the job done ourselves. They might be improved over time, but adding "error handling" is up to us. How much we add, and how we add it, will depend on the needs of each project. There are those that will add handlers around every piece of code that could possibly trigger an error, and there will be those that are happy to let things run until a errors pop up and then put traps just around those sections. Some will build extensive infrastructures based on exception handling models in other languages, or Design by Contract idioms, and some will just say "if error? try [x] [print {Error!}]". In a distributed system, whether on the same machine or across the net, many different models will be needed. How do we test and debug these systems, not to mention simpler systems, effectively? Those are the problems I want Carl and the team to think deeply about. I think REBOL allows, if not forces, us to think in different terms at many different levels. If it were trivial for RT to add more context information for errors, and no other side effects came about because of it, I don't think anyone would complain. We'd just wonder why they didn't do it already. :\ I have lots of "mental baggage" based on how I've done development in the past, and occasional longings for familiar features and models, but I'm learning (slowly) to step back and think about whether those things are really important, or if they only seem that way because they're comfortable. Carl has given us lots of familiar "road signs" to help us ease into REBOL as a language, but what really excites me is what happens when I ignore them. :) --Gregg