Jeff said:
    Hey now, pilgrim. You can call me guru, or you can call
    me goof ball, but don't call me Sherman! ;-)

How about `late for dinner'?

Jeff said:
    It seems to me that you could not, with out great
    difficulty, write the functional code that I provided in an
    imperative language.

I would use the technique that you used in PREPEND:  copy the
object and use the imperative commands on the copy.

Jeff said:
    I strain to imagine how to do those in Java.

It isn't hard, just verbose.  Use anonymous inner classes and
interfaces to achieve the effect of functions.  (you wanna see
the code?  It is ugly; Java sucks.)  But java makes
no claim to being `functional' it is `object oriented' whatever
*that* means.

But it is interesting that you mention Java.  Java, unlike REBOL,
has immutable string objects.  All methods on Java strings are
necessarily functional!

Jeff said:
    Does elisp meet your definition of "functional"?

The way elisp manipulates buffers and points is an abomination.
Definitely not functional or encouraging of functional style.

Jeff said:
    we've got a half complete REBOL emacs mode

Where can I get it?  Is it on the web anywhere?

Jeff said:
    what do you prefer it be called?  Procedural?

`Procedural' seems more appropriate than functional.

Jeff said:
    the message that you are bashing me for
  was just an attempt by me to give a friend of mine a quick
  and dirty run down of the many awesome features of REBOL.

I'm not trying to bash you!  I just objected to a couple of little
words in your two paragraph description:

         REBOL is a free form context sensitive first class
    functional language with prototyped based objects and cloning.
    It offers both static and lexical scoping, full polymorphism,
    is its own metalanguage, weighs in at roughly 200 KILObytes
    (yes that must sound ridiculous to people who are used to
    giant barely capable bloated language kernels like PERL)
    presently running seamlessly on 38 platforms (from palm units
    to the unixes, to windows, to amiga).  But the real cool thing
    about REBOL is its network omnipotence.  It makes it brain
    dead simple to get things done in a networked world, from FTP
    to NNTP, HTTP to SMTP and on down the line.  REBOL also
    provides a very simple abstraction of direct TCP/IP sockets,
    fully BSD capable, including razzle dazzle multiplexing.

    [rest of description elided]

The words `functional' and `lexical scoping' make REBOL sound as
if it is a Scheme or Lisp derivative.

I think it would be more accurate to say that
    `REBOL is a free form context sensitive first class
    procedural language with prototyped based objects and cloning.
    It offers a rich scoping model, full polymorphism,
    is its own metalanguage.....'

Jeff said:
      How do you feel about REBOL's referential transparency?

I don't understand what you mean.

Jeff said:
          Submit a bug report, aye?  :-)

I thought I just did :-)  But seriously, that was just nit-picking.
I expect that you guys have the memory allocation problems pretty
much under control by now.

Jeff said:
    How am I to please you?  You seem harder to please than
    most.

Ah, if only you were a shapely young blonde.....

Ok, here is what's at the top of my REBOL wish list:
    1.  Documentation of the scoping model.
    2.  Multitasking or threads
    3.  Ability to call DLL's or launch other programs.
    4.  A compiler or byte code compiler or JIT compiler.
    5.  Ability to make executables or dlls from a REBOL script.
    6.  Open source code.

John Curtis

Ignore the ad that follows this line.

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com

Reply via email to