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

[REBOL] Re: [why-REBOL] Pros and Cons / what's so special

From: nitsch-lists:netcologne at: 24-Jun-2004 21:24

On Donnerstag, 24. Juni 2004 10:01, [bry--itnisk--com] wrote:
> MF> Whatever you say about rebol can be said about every other scripting > MF> language. > > Is this a variant of the old canard, all programming languages are the > same? > > > PARSE (and all that it implies) > > I'm curious what do you consider to be an 'implication' of Parse? When I > think of implication in the context of a programming language I do not > think of implied uses for parts of the language, but implied ideas about > the problem domains to which the language is applied and implications about > the nature of programming itself. >
Parse & blocks in Rebol, pattern-matching & messages in Erlang; Prolog, Lisp, Smalltalk or Fuzzy-logic are parts of C? :)
> > protocols > > this is something that I think libraries, if included in the distribution > of the > language, can give equivalency to rebol's. > that I might have to do an import statement to use that library doesn't > really bother me. >
Its about the interface. Some users of other languages now point to rebols send and say "why do we need all this setup-messages?" About protocols, they have all the same job and they do it with the same interface. Thats the difficulty with libraries, sending data through email does not look like putting data in a file.
> > cross-platform GUI system > > benefit > > > human friendly syntax > > this is a mirage, to do simple things yeah like send [bry--itnisk--com] 'hi', > my mother can use rebol, but even when it gets to the point of an automated > mailing > list the human friendly syntax is not going to be simple enough for her.
TeX was simple enough for a lot of secretaries, and prefered IIRC. You may underestimate the IQ of your mother. Maybe a communication-problem. ;)
> At > that > point it means the human friendly syntax is just another programming > language, and if that's the case it can be in the way of understanding for > someone who is used to languages in the C family for example. The lack of > true variables etc. all these things can stand in the way of understanding.
One reason for such communication-problems: did you show her variables before, and other such stuff? may trigger: I never will understand variables.. -> programming-languages look like this -> Rebol looks like a programming-language..
> As an example yesterday I had to debug some php, I've only done one major > php project in my life, translating from a large asp application, and that > was a long time ago. I do not > know the language at all, however I know the family of languages, I saw > fairly quickly that there were some things that were likely to be > syntactical errors, such as something like this do if(...){} > > I thought, what is that do doing all alone there, is that allowed? well of > course it wasn't, it should have been a do{}while(); >
Now think as mother you once had to learn that, instead of until[..]
> there were some other syntactical errors regarding concatenation, and one > logical error. >
You have done a major php-project and still not got the language? Maybe you should try rebol, the concatenation-rules may be simpler. first thing one does IIRC. ;)
> you tell someone who isn't used to Rebol about how understandable it is, > with its human friendly syntax, and then give them some clever code, for > example that > article you did on O'reilly where I remember you said you did some stuff a > particular way because people would be thinkking "WOW, how did he do that" > well all that is an argument against the human friendly syntax. >
I assume php with its c-syntax allows me to show increments deep in expressions and such and call myself clever? But to me its more about writing some code, instead of reading that of others. And then not have to think to much about concatenating. complicated code is then plugged in as protocols, no need to think about it, all reacts the same. OK, some 5-liners-demos needed to show the diferences.
> Currently I'm learning J, it has a very human unfriendly syntax. I don't > really find that any more of a problem. >
Some lines above you said non-c-syntax is a huge problem with rebol. Now some lines later you learned that much? ;))
> > reasonable size > > do you mean reasonable size in the size of the language implementation, > don't know if that matters for most things, if you mean reasonable size in > the context > of the amount of code one has to write to do things yes this is always a > benefit. >
Or amount of what one has to learn. BTW download-sizes matter today.
> > console > > HELP and SOURCE functions > > comes pre-built from the factory > > lots of languages have these last three. Does comes pre-built from the > factory have to do with there being only one implementer? There can be > Lisps that come pre-built from the factory.
Gabriele mentioned Lisps as beeing comperable. But:
> > Now, some languages may have one or more of those features, but show > > me another one that has them all (or even more than a couple of them). > > If you look at *just that list* of items, those things are so > > incredibly important to me that REBOL has, for better or worse, > > "ruined" a lot of other languages for me. > >
Lots of exclamation-marks here! Gabriele wants a combination of all this features. Is there a lisp which can do all? I mean, ok, there is, once i understand how to code emacs.. ;)
> > it is a messaging language. While it can > > compete with other programming and scripting languages (so much so > > that we're having this discussion :), they can't compete with it on > > its turf: the semantic exchange of information between people and > > machines. > > I don't know exactly what you mean by semantic exchange here, it sounds > like some more human friendly syntax, when I think of messaging language I > think of Erlang or E. Languages with support for concurrency, languages > with support for contracts between senders and receivers, in which a > message between processes itself is a datatype. I don't know, I just use > Rebol to do > stuff like, get all my emails, filter them with simple rules, change them > to xml, save to folder x, or upload following set of files. Automated > scripting stuff that I think it is well suited for because it can be run > cross-platform.
Ahem. You get messages, filter messages, convert messages, store messages, upload files (kind of messages) and do not realize you are dealing with messages? Maybe you should set up some concurrency and contracts first to feel more awe? ;) As for erlang, yes, very cool, but meant to turn a lot of computers in a single one, lets call it a "multi-machine-application". Messaging between such applications, or even humans, is a bit harder. and here they resort to rebol-style: translating to email, html etc, and having a featureless but quick tcl-style gui. Which is enough to visualize messages, its main purpose. Citing Gabriele again: "the semantic exchange of information between people and machines" I admit E i don't know yet.