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

[REBOL] Re: Fwd: Re: Re: On mutability and sameness

From: robbo1mark:aol at: 20-Jun-2001 14:38

JEFF, You are *as usual* mostly right. Iam not on a PR campaign, yes I do want an "open" REBOL and NO Iam in no way as clued up as all you supremely talented guys at REBOL. I DO want an open REBOL now, as I'm a tinkerer at heart as well as being impatient! that's not a crime though. I take on board what you say, honestly! If REBOL was open I could study away at it to my hearts content and not bother anybody. But it's not and so I'll just have to keep on trying to master REBOL *AND* attempt to understand it's implementation, if my brain is big enough for that capacity! 8-) Yes I DO understand that that is a gargantuan task and I will make lots of mistakes and bloopers along the way. Sure there is no way I can truly understand Carl's genius, it took him 20 years, but by trying to glean whatever I can from whomever I can will help me / us along the way. I DO have some friend who share this goal too! If it means we make a right pigs ear of things then at least we will learn from that and make it better in the next revision, people will be able to see where things are done badly or wrong and make it better, is that not what open source is all about? I DO want REBOL to succeed, you must believe that, Iam also a naughty boy sometimes and suppose am guilty of being provocative and wind people up sometimes, sorry I honestly don't mean to personally offend anyone, it's just the way Iam I guess. Thanks for your help and advice! cheers, Mark In a message dated Wed, 20 Jun 2001 1:06:48 PM Eastern Daylight Time, nop <[whip--cs--unm--edu]> writes: << Hello, Robbo. [Jeff emailing from his school account -- rebol.net looks down right now]
> REBOL AS IT'S OWN META-LANGUAGE > > I've read recently from Jeff & Joel, and other's in the previously, > that REBOL is it's own meta-language. > > This is bunk! or at least only partially true.
No, it's not bunk.
> Consider this model of REBOL addition... > > >> add: func [ x y ] [ + x y ] add 1 2 > == 3 > > Fine so far, however how do you define the '+ in the function body? > > If you say > > >> set '+ func [ x y ] [ add x y ] > > On the surface it looks okay, but try....
No, on the surface it doesn't look okay at all. You've defined the function ADD to depend on the function +, and you've defined + to depend on the function ADD. Something eventually has to be able to actually add two numbers.
> >> add 4 5 > ** Internal Error: Stack overflow Near: add x y > >> + 4 5 > ** Internal Error: Stack overflow Near: add x y > >> > > Your into infinite recursion here, so REBOL as a complete > meta-language is "insufficient".
So, I don't really understand. What are you trying to demonstrate with the above? . . .
> If this was the case there would be no need for RT Inc. to write > any more interpreters, we could simply write and extend REBOL in and > from REBOL and we'd all live happily ever after.
Written many dialects?
> Unfortunitely there are these "irreducibles" or "primitives" that > you simply MUST have to get the system up and running. > > It is for this reason that you sometimes have to use C or Java or > something else to "explain" or implement REBOL.
You don't "HAVE TO" use a low level language to "explain" a high level language.
> You can however devise a way to construct these "primitives" from > within REBOL / your "meta-language" then you get into the realms and > possibilities of META-COMPILATION which is a system written in > itself, however you still have to bootstrap the whole process from > something else first whether this be Assembler or C or Java or > whatever.
Are you sure this is necessary? Have you tried, or are you just speculating here?
> Forth proves this is possible and has had this capability for nearly > thirty years now, maybe someday REBOL will catch up & we'll be > dispensed with the need for RT to write our REBOL interpreters for > us, if we so choose of course. 8-)
That's right.. How uncool of RT to be writing our REBOL interpreters for us. The nerve of them!
> Oh Dear, why am I always so contrary?
I figure it's part of your PR effort. Play up on that martyr kind of thing.. :-)
> I don't know about painting that fence Jeff, maybe I should come > round from the wrong side of it and you can break the fence apart & > hit me over the head with it!
See, if you ask me, which you haven't, you're going about this all wrong. You're running out and rather recklessly trying to implement (or actually, trying to get someone else to implement for you) a language of great design and forethought (nearly 20 years in design and many man years of implementation) and yet you consistently seem to demonstrate rather questionable mastery of REBOL. If I were you and I was trying to clone REBOL, I'd do the following: First, become a true REBOL guru, mastering REBOL to a fine art, including all its different areas: dialecting, introspection, metaprogramming, networking, GUI, etc... True REBOL gurus can explain why there is dialecting in REBOL, how to make user defined ports, the reasoning behing MOLD/only, or LOAD/all, etc.. With all this understanding of the language, I'd help 1,000 newbies into the language. Now once my expertise in REBOL was solid and sure, and my commitment to the beauty of the design was complete, then and only then would I embark on the journey to clone REBOL. Here's my recommendations for the cloning phase (which you've already jumped ahead to): A. Drop the hokey PR gig. B. Produce something. Actions speak louder than words. What to produce? Well, an actual interpreter written in some compiled language is a lot to expect right away (or for a very long time). Unrealistic expectations are bad for any development project. The most rational approach would be to try and implement REBOL in REBOL first. You can learn a great deal more about the rules of the language as you put it together, and a working REBOL implementation of REBOL counts as producing something (you can actually take credit for having done something other than yack). Once you've gone through those exercises before actually attempting something compiled, the likelihood of you groking many of the finer aspect's of Carl's awesome design will be higher. Also, with that understanding of the design, the likelihood will be much lower that you'll end up creating some super mangled REBOL-like language that's only vaguely related and inappropriately compared. I only bring this all up because I think it's great that you're trying to clone REBOL, but like I've said, your approach just shocks my esthetics and sensibilities. (-8 I sort of think you want to have it all now, but I suspect you may have to live with RT writing your REBOL interpreter for you for a while yet... Just my opinion-- Best of luck! -jeff