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

[REBOL] Re: relative expressions

From: g:santilli:tiscalinet:it at: 2-Apr-2003 15:39

Hi Brett, On Wednesday, April 2, 2003, 11:40:50 AM, you wrote: BH> So, custom types would allow the REBOL interepreter to interpret these BH> expressions directly. Maybe not directly from the function interpreter, but directly in the same way as you can now handle blocks, dates, urls, and so on. You can have a set of generic functions that work on any new type you happen to add to your application in the future... BH> But I don't think that changing the actions will be entirely sufficient for BH> reusability, although I do agree it could be very powerful. Of course we'd really require that creating new datatypes was allowed by the interpreter, and not just by using "hacks" like custom-types.r. BH> VID is building/maintaining state (e.g offset) as it processes the BH> dialect. I know this seems obvious but I feel it is important to highlight BH> that dialects may have this extra "between the lines" - value adding aspect. Yes, and in some cases you'd need to make this "information" explicit in some way, if you want to push reusability. However, since dialects are domain specific languages, usually this between the lines is part of the specific domain too, so it doesn't necessarily have to be made explicit. Take a FACE as an example: it has everything it is needed to render it, and you could render it on a PDF file instead of on a window. If you had something that translated to PDF starting from a FACE, you could use LAYOUT to create graphics for a PDF file. You don't need to know how LAYOUT works internally etc. You just need to know the concept of a "face". BH> Also in relation to parsing dialects, I'd like to see a methodology for BH> designing dialects so that they can be usefully mixed together (as I BH> mentioned). Some sort of grammar convention might help here. Maybe, but it is very dialect-specific anyway. I don't think it is possible to have a solution that is so general to allow you to mix any two dialects, mainly because mixing does not have any sense for most two dialects. BH> Yes custom types could be very important. Though they may not be so good for BH> message passing between distributed systems because they might introduce BH> unwelcome dependencies ("do you have custom type xyz-floating-graphic?"). Of course, and that is the reason why we have View as a single executable. However, as soon as we try to modularize, we get to this problem. A good solution is probably that of having all instanced well synched, so that it is not possible to have two different versions of the same application at the same time. (With IOS you have this automatically, because your reblets are synched, and if you change a reblet the change is reflected to all the users.) Another way is to always provide fallbacks and default behaviors in case of failure. Regards, Gabriele. -- Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer Amigan -- AGI L'Aquila -- REB: http://web.tiscali.it/rebol/index.r