Michel Schinz <Michel.Schinz@epfl.ch> writes:
> >> Could you please elaborate?
> >> Here are the names of some functions in scsh and Perl which should
> >> illustrate my point:
> >> scsh | Perl
> >> ---------------+--------
> >> delete-file | unlink
> >> file-readable? | -r
> >> file-info | stat
> >> process-group | getpgrp
> >> ... and so on
> > I have to agree.
> > But in that case, if you compare scsh to ruby on this point u will
> > be disappointed as ruby tried to choose good name.
> Right. What I should do is see whether, in the case of Ruby, they went
> beyond simply fixing the names and also fixed the behaviour of some
> standard Unix functions, which scsh certainly did.
I am not sure, but ruby have done a good job in fixing some
of the ugly stuff of perl.
> I have some examples in mind but they concern Perl, and they date back
> from my last exposure to Perl, which means they are old. So I'll first
> check whether they still apply with the current version of Perl, then
> see what is done in Python and Ruby. And then rewrite this part of the
> > You just cant compare scsh with "the existing scripting langages"
> > and say that scsh is better.
> No you cannot, and therefore I did not.
Yes, but i understand it like that.
> > The only advantage i see in scheme over other langages, is its
> > powerful macro system. That's all. You should try to argument on
> > this point, but not on the other features of scsh which are already
> > present in many scripting langages.
> Macros are certainly not the only difference I see between scsh and
> other scripting languages. The regular-expressions expressed as
> s-expressions is one feature I do not find in any other
> regular-expression package, for example.
And what it brings ? what is the advantage to write regexp as
sexp over usual string syntax ?
i never see sexp and its regular syntax as an advantage of scheme
over other langage, i only accept it cos it makes possible
the powerful macro system.
> > In fact the word scripting langage is just a non-sense,
> > perl/ruby/python are no more used only for administrative quick and
> > dirty task.
> Of course Perl/Ruby/Python are used for other things than writing
> scripts. But the same apply to Scheme, and scsh *is* Scheme (with one
> minor exception), so.
> What I (and it's not just me) classify as scripting languages are
> languages which have specific features whose aim is to facilitate
> scripting. With Unix, that usually means facilities to deal with text
> files easily, for example through regular expressions, to access many
> features of the operating system, like the user database, the
> file-system, and so on, as well as networking support. And I certainly
> forget tons of other things.
you should have a look at
to refresh your memory :)
> But of course that's a rough classification, just like the
> classification of languages as "object-oriented" or "functional" is.
> You can do object-oriented or functional programming in all languages,
> they are all Turing equivalent and can express the same things.
> Now doing functional programming in C is a huge pain, because you have
> to do everything yourself. But you can do it. So what people call
> "functional languages" are not languages in which you can do
> functional programming, because that could mean all languages. Rather,
> functional languages are languages which facilitate a functional
> programming style, and that typically means those with support for
> automatic garbage collection, closures, anonymous functions, etc.
> Likewise, you can do scripting in any language. But that's a pain when
> the language (or some libraries) does not include some explicit
> support for it. So what people call scripting languages are not
> languages in which you can do scripting, or even languages in which
> you can only do scripting, but rather languages (or, once again,
> libraries) which make it easy. And that includes Perl, scsh, Tcl,
> Ruby and others.
Yoann Padioleau, INSA de Rennes, France,
Opinions expressed here are only mine. Je n'écris qu'à titre personnel.
**____ Get Free. Be Smart. Simply use Linux and Free Software. ____**