LOGO-L> Logo speed 
Author Message
 LOGO-L> Logo speed

Quote:
> I have to quibble with the ``heavy reliance on recursion'' comment.
> Logo isn't slow because of recursion.  It's been shown that a
> tail-recursive procedure call can be compiled to a simple jump.  This
> means that a tail-recursive procedure is just `syntactic sugar' for a
> goto!  That's what all the fuss about tail-recursion is about.  (Non
> tail-recursive procedure calls are more expensive but only because of
> the necessity of managing intermediate results.)

I mean, for example, the way Logo constructs functions by recursively
gathering their arguments.  Compare that with the way Forth gathers
arguments on a stack!  Forth is known for probably the fastest execution of
any language this side of assembler.  Logo the slowest.  Is there not some
reason for that difference?  I just assume it's because Logo is entirely
recursion-oriented, while Forth is entirely stack-oriented.

Quote:
> The real problem with Berkeley Logo is that it doesn't have a
> compiler.  That's a significant project, though probably hacking a
> byte-code interpreter into Berkeley Logo and writing the compiler in
> Logo would be within reach, even fun.
> I've been really tempted to do something like this.  But I've already
> got one Berkeley Logo project on my plate....(No I haven't forgotten
> about the X stuff, Brian. :-) )

With the fast processors of Pentium and PowerPC class becoming
available, it seems like even interpreted Logo can do pretty good
speed.  I tested an old MS-DOS release of Berkeley Logo (3.0.1) on my
Pentium 90MHz system the other day.  It was amazing -- and rather
embarrassing -- to see how it smoked my Amiga 4000/040.  Considering
the likelyhood of Pentium II and PowerPC processors clocked over
200MHz, I don't see much advantage to be gained from further speeding
up the Logo language engine.  I feel like what we really need are more
primitives to make wider use of the system resources.  So we can do
things like raster graphics, simple GUI dialog boxes, load images, play
sounds samples, etc.

--
   Tony Belding
    http://www.*-*-*.com/

---------------------------------------------------------------





Tue, 14 Dec 1999 03:00:00 GMT  
 LOGO-L> Logo speed

Quote:

>I mean, for example, the way Logo constructs functions by recursively
>gathering their arguments.  Compare that with the way Forth gathers
>arguments on a stack!  Forth is known for probably the fastest execution of
>any language this side of assembler.  Logo the slowest.  Is there not some
>reason for that difference?  I just assume it's because Logo is entirely
>recursion-oriented, while Forth is entirely stack-oriented.

I don't understand this distinction.  In both Logo and Forth, each argument
expression must be evaluated, and the resulting value remembered until the
procedure is called.  In both Logo and Forth, recursion is involved if and
only if the body of the called procedure includes a call to itself.  In both
Logo and Forth, if recursion is used, the procedure call stack grows.

Forth is fast because, like Java, it is compiled into an intermediate
language that is easy to interpret.  It's not the fastest language; ones
that are compiled directly into machine language (such as Object Logo!)
will beat it.

But the dichotomy of "recursion-oriented" vs. "stack-oriented" doesn't
mean anything.  You could describe Logo as *list-oriented* and compare
that to stack-oriented.  But there the difference is in memory requirements
rather than speed.

If the same compiler technology used in Forth and Java were used for a Logo
implementation, it'd be about as fast.  In practice the main difference is
that freeware Logo implementations are done by amateurs in their spare time.



Wed, 15 Dec 1999 03:00:00 GMT  
 LOGO-L> Logo speed

 I feel like what we really need are more
primitives to make wider use of the system resources.  So we can do
things like raster graphics, simple GUI dialog boxes, load images, play
sounds samples, etc.

--
   Tony Belding

[RAY CATZEL]  I think this is achieved very well by MicroWorlds, which is probably the best programming environment for younger children.  
---------------------------------------------------------------





Wed, 15 Dec 1999 03:00:00 GMT  
 LOGO-L> Logo speed

Quote:

>  I feel like what we really need are more
> primitives to make wider use of the system resources.  So we can do
> things like raster graphics, simple GUI dialog boxes, load images, play
> sounds samples, etc.

MSWLogo has these features as well.

Quote:

> --
>    Tony Belding

> [RAY CATZEL]  I think this is achieved very well by MicroWorlds, which is probably the best programming environment for younger children.
> ---------------------------------------------------------------




--
===============================================================

http://www.softronix.com/
The www page contains some very powerful educational software.
Our single most important investment is our kids.

---------------------------------------------------------------





Thu, 16 Dec 1999 03:00:00 GMT  
 LOGO-L> Logo speed


Quote:

>MSWLogo has these features as well.

Do they have NeXTstep, Linux, (or JVM, for that matter) versions available?


Fri, 17 Dec 1999 03:00:00 GMT  
 
 [ 5 post ] 

 Relevant Pages 

1. LOGO-L> logo's speed

2. LOGO-L> Berkely Logo Speed

3. LOGO-L> Apple logo/MSW Logo

4. LOGO-L> Reseach Machines Logo (RM LOGO)

5. LOGO-L> Welcome to logo-l

6. LOGO-L> Re: Dynamic scope in Logo

7. LOGO-L> INFO re SIG-LOGO

8. LOGO-L> Logo foundation site

9. LOGO-L> Logo Workshops

10. LOGO-L> Logo for MAC

11. LOGO-L> Object Logo for PC

12. LOGO-L>UCB Logo

 

 
Powered by phpBB® Forum Software