Why Scheme? (Was RE: [CF-Devel] Has anyone had time to analyze the scripting patch submitted?)

Yann Chachkoff yann.chachkoff at MailAndNews.com
Fri May 18 01:26:31 CDT 2001


>
     
     Hello,
     
     >
     
     
     >
     
       I haven't had time to look at the scripting patch which has
     
     >
     
     already been submitted.
     
     >
     
     
     >
     
       I'm not so sure I approve of a scheme-like syntax for a
     
     >
     
     scripting language for crossfire, yet I don't want to dismiss
     
     >
     
     it out of hand out of prejudice.
     
     
I think I must explain here why I have chosen Scheme as scripting language.
When I began creating the scripting extensions, I quickly realized that 
building a new language from scratch would cost me too much time, so I decided 
to use a generic embeddable scripting tool. That tool would have to follow 
some basic rules:
 - Should be able to run under both Unix and Windows systems;
 - Should be easy to integrate into Crossfire;
 - Should not cost too much CPU time;
 - Should be somewhere a 'standard' language;

I first tried Python, but I encountered several problems; Python may be easy 
to use on the Python-side, but it is definitely not on the C side. More, 
trying to detect/configure the Python interpreter with autoconf was a hard 
thing to do. Since I found no Python expert, I had to put it aside and try 
another one.
Then I tried ScriptBasic. Easy to learn, but so ugly documented and difficult 
to compile on various platform that I had to forget it too.
And I finally encoutered Guile. I had never seen a Scheme code before, but 
what attracted me was the portability of the interpreter. After reading some 
docs, I decided to go on. After some hours of use, I realized that the Scheme 
syntax was not uglier than Python or Basic, just different. Since some other 
big OpenSource projects (FreeCraft or Gimp for example) were also using 
Scheme, I never seen this choice as a problem.

What I want now to know is:

1 - Must I continue in that way, or must I change and switch to another 
language ?
2 - If I have to change, which language should I use ? 
3 - In any case, are there some volunteers around here to help ? (there are 
still many things to do: bugfixing, Windows porting/testing, ...)

There has been some discussions about this not so long about, but no clear 
answer came out. Anyway, until the final decision, I'll continue to support 
scripting extensions (A new revision will shortly come out).

Chachkoff Y.

------------------------------------------------------------
 Get your FREE web-based e-mail and newsgroup access at:
                
     
     http://MailAndNews.com
     
     

 Create a new mailbox, or access your existing IMAP4 or
 POP3 mailbox from anywhere with just a web browser.
------------------------------------------------------------


    
    


More information about the crossfire mailing list