[Bluej-discuss] first languages
Davin McCall
davmac at bluej.org
Mon Oct 15 02:49:44 BST 2007
I worry that this is whole thread is going to turn into a flame-war, but:
Aryeh M. Friedman wrote:
>> Syntax from hell? All functions, whether built-in or user-defined,
>> are invoked using the exact same syntax rule.
>>
> That is semantics not syntax.... I am sure one can call APL or the
> sendmail config file semantically clean but try to read it!
>
>
I think the original statement was correct; functions are invoked using
a syntax rule. The semantics of that rule imply a function call.
From what I've seen of it - which admittedly isn't much - Scheme syntax
is quite straightforward. There are two things that I don't like about
it: too many brackets, and the prefix notation - but in both cases it's
probably more a matter of what I'm used to. The prefix notation, while
not being familiar for mathematical operations like +,-,* etc, is at
least consistent with the idea that these operators are really functions
just like any other function, and it also removes the problem of
precedence which I suspect beginning students stumble on quite a bit
(though more often with the logical operators than the arithmetic ones,
perhaps).
So, I don't think Scheme has the "syntax from hell". C++ on the other
hand... :-)
A question to other list members, do students get confused when
transitioning from Scheme to Java about the change from prefix to infix
notation?
> If a lang needs an ide just to be writable (parens in LISP) it is not a
> beginners lang ;-)
>
I think you can avoid nesting too many brackets in various ways, so that
it's visually clear without an IDE. You can also use indentation to make
things clearer even with Scheme and Lisp.
(I should make it clear: I don't *like* Scheme. I would never choose to
write in it myself. But, as a language to illustrate some basic
programming concepts, I'm not convinced it's a bad choice. Also, I'm not
a CS teacher. I have been a CS student.).
Davin.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.bluej.org/pipermail/bluej-discuss/attachments/20071015/92e93058/attachment.html
More information about the bluej-discuss
mailing list