Complete.Org: Mailing Lists: Archives: freeciv-dev: June 2000:
[Freeciv-Dev] Re: Plans for 1.12
Home

[Freeciv-Dev] Re: Plans for 1.12

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Tomasz Wegrzanowski <maniek@xxxxxxxx>
Cc: Artur Biesiadowski <abies@xxxxxxxxx>, Freeciv Dev <freeciv-dev@xxxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: Plans for 1.12
From: Daniel Burrows <Daniel_Burrows@xxxxxxxxx>
Date: Mon, 26 Jun 2000 17:54:39 -0400

On Mon, Jun 26, 2000 at 01:50:07PM +0200, Tomasz Wegrzanowski <maniek@xxxxxxxx> 
was heard to say:
> > 2) I agree that more people know perl, but scheme is easier to learn.
> > One would have to learn freeciv interface anyway and such calls will
> > compromise most of code, with all that is left being few loop/if
> > statements
> 
> LISP-derivate easier to learn ?
> If you know C, you can start programing perl after 5-minute course.
> Show me such 5-minute tutorial for scheme.

  Yes.  Scheme is taught in many places as a *first* language.  For students
who haven't been exposed to other languages it is certainly no harder, and
having seen people try to learn C-derived languages I'd say it's much easier.
It's also worth observing that Guile has hooks for changing the syntax, but
none of the people who complain about Lisp syntax seem to be upset enough to
write a parser for something else.

  The Lisp syntax is much more simple and consistent than anything C-derived,
with Perl being maybe one of the worst offenders I've seen.

  It's not 5 minutes, but you can probably find at least one at
http://www.schemers.org.  A somewhat technical introduction is at:
ftp://ftp.cs.utexas.edu/pub/garbage/cs345/schintro-v14/schintro_toc.html

  I recently worked on a project with someone who learned Scheme overnight when
I asked if he would be able to pick it up.  Of course, he didn't know or
understand the deep structure of Scheme, or the many tricks and idioms that
are available.  If you can get those in Perl from a 5 minute course, I'd be
amazed.

> > 4) Guile is very easily embedded from C application. I don't know about
> > perl, but in most cases I've seen the opposite there - perl calling into
> > C code (like the JNI java methods). How easy is to embed perl and calls
> > single functions for evaluating things etc ? How well would perl garbage
> > collector interacts with C memory management in freeciv ? (I don't know
> > answers so maybe it is not a 'against' argument)
> 
> Guile has a garbage collector too.

  Yes, but it respects the C stack, which makes it very easy to embed.  Perl,
if it's anything like Python, will require you to clutter the code up with lots
of refcounting cruft.

> Is mzscheme free ?

  Yes.

> Where can I get one ? (I have no such thing on Debian)

  Are you sure?

bluegreen:~> apt-cache show mzscheme
Package: mzscheme
Version: 101-3
Priority: optional
Section: interpreters
Maintainer: Brent A. Fulgham <bfulgham@xxxxxxxxxx>
Depends: libc6, libc6 (>= 2.1.2)
Recommends: c-compiler
Suggests: menu (>=1.5)
Architecture: i386
Filename: dists/unstable/main/binary-i386/interpreters/mzscheme_101-3.deb
Size: 1490968
MD5sum: ef6d9a9eab035ce3181245abdefa4204
Description: Rice University PLT Scheme Interpreter
 This scheme implementation forms the foundation for the DrScheme
 programming environment.  The faculty and staff at Rice University
 developed this package to be used as a stand-alone interpreter,
 for embedding in other applications, and for use with the
 DrScheme graphical environment.
source: drscheme
installed-size: 6019

  (personally, I'm not sure whether Scheme or Python is better here, but a
   text-processing language with programming contructs hacked on is not
   something I would want to see handling the core logic of Freeciv.  Use Perl
   for its strengths, please)

  Daniel

-- 
/----------------- Daniel Burrows <Daniel_Burrows@xxxxxxxxx> ------------------\
|  If you're reading | "I've struggled with reality for thirty-five years, but |
| this, you have too |  I'm glad to say that I finally won."                   |
|   much free time.  |   -- _Harvey_                                           |
\-Evil Overlord, Inc: planning your future today. http://www.eviloverlord.com--/



[Prev in Thread] Current Thread [Next in Thread]