I don't know exactly how this message got marked "unread" again, 
No, here it is, the server at Sun has decided to send it again,
which is all right, since I don't think I responded before going
home last friday.


                 Received: 
                          from mercury.Sun.COM (mercury.Sun.COM [192.9.25.1]) by 
kasey.umkc.
                          (8.9.0/8.9.2) with ESMTP id BAA31743 for  ... Wed, 6
                          Sep 2000 01:36:51 -0500 (CDT)
                 Received: 
                          from udcsd.West.Sun.COM ([129.153.51.1]) by mercury.Sun.COM
                          (8.9.3+Sun/8.9.3) with ESMTP id OAA27600; Fri, 1 Sep 2000 
14:52

Nathan Wiger wrote:
> 
> "David L. Nicol" wrote:
> >
> > No, that would be
> >
> >         dog $spot;
> 
> No, it wouldn't:
> 
>     $r = new CGI;    # CGI->new
> 
> See?
> 
> > You can have your general consensus, I'm not in his army.
> 
> Well, unfortunately I think you're doomed to fail then. You're forcing
> constraints on yourself that Perl cannot fulfill, and which I can't see
> Larry approving.
> 
> I really don't want to argue about this trivial point anymore. my($.02)
> is that your ideas are great, but if you want any realistic chance of
> getting them into Perl 6, then you have to make the syntax look like
> Perl.
> 
> -Nate



Lots and lots of human languages, like, all of them, allow WORD WORD to mean
vastly different things depending on what the words are.

I believe that "tagging" theory from natural language parsing would allow
barewords to mean all kinds of different things.


        $r = new CGI;

and

        account_t student;

are, even without semantic tags, different instances of WORD WORD.  The first
is part of a larger expression, the second is a complete WORD WORD expression.

With the introduction of semantic tags, our language knows that C<account_t> is
a defined type, so it doesn't go looking for an C<account_t> method in the C<student>
package.

I imagine that defined types would hide methods, although more complex ambiguity
resolution schemes could certainly be created.  I do not see the collision of
WORD WORD as the problem you do.


As a human being, when I am told something that does not make sense in the idiom I
have been using, I will switch idioms before giving up on finding meaning for it.

This is completely transparent to human beings, who are very good at it.  If you have
ever spent any amount of time among people who are comfortably polylingual, which sadly
is a rare treat for Americans, you will notice that they will switch between languages
in the course of a conversation.  When I was an exchange student in a country where
two non-english languages were spoken, I had to keep reminding my friends to stick to
the language that I partially knew instead of lapsing into the language that I did not
understand at all.

So that's my linguistical argument for allowing multiple syntaxes into perl (2PI - 2),
humans don't have any trouble context switching when they know two languages, why not
make a computer language that can do that trick?  Give it python it will recognize it
(if it has had that capability installed into it) and the same with C or Fortran or
anything, the same as a person who knows English, Spanish and Tagalog will not be 
confused by a sentence of good Tagalog in the middle of a conversation which is mostly
« en español ».

I think we're ready for computers that can figure out what language the user is
trying to talk to them in, in fact according to my Secret Heinlein Society Diagram
Of The Future (copyright 1952) we're somewhat behind schedule.



-- 
                          David Nicol 816.235.1187 [EMAIL PROTECTED]
       perl -e'@w=<>;for(;;){sleep print[rand@w]}' /usr/dict/words

Reply via email to