1. Py 2.5g Update

That's right, yet another release at:

   http://www.lanset.com/dcuny/py.htm

This version mainly adds checks on parameters, so it can recover nicely if
you pass a bad format string to printf, a negative value to sqrt, use a
sequence as loop index or conditional test, and so on. Thanks for Falkon for
catching most of these.

I've also run a spell check on the documentation, because I've consistantly
proven I can't spell 'concatenation'. And I'll try to stop referring to
'associative' lists as 'associated' lists.

Finally, I fixed yet another lexer bug in Ox, so I'll be sending that as a
seperate update to Robert.

As usual, feedback is appreciated!

-- David Cuny

new topic     » topic index » view message » categorize

2. Re: Py 2.5g Update

David,

But does your spell checker know how to spell "separate" ??  :)  Took *me* a
while to figure out how to remind myself how to spell it correctly:  there's
*a rat* in "separate".

Dan
(who can't program 1/100 as well as David can spell!)

----- Original Message -----
From: "Cuny, David at DSS" <David.Cuny at DSS.CA.GOV>
To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
Sent: Friday, November 03, 2000 12:04 PM
Subject: Py 2.5g Update


> That's right, yet another release at:
>
>    http://www.lanset.com/dcuny/py.htm
>
> This version mainly adds checks on parameters, so it can recover nicely if
> you pass a bad format string to printf, a negative value to sqrt, use a
> sequence as loop index or conditional test, and so on. Thanks for Falkon
for
> catching most of these.
>
> I've also run a spell check on the documentation, because I've
consistantly
> proven I can't spell 'concatenation'. And I'll try to stop referring to
> 'associative' lists as 'associated' lists.
>
> Finally, I fixed yet another lexer bug in Ox, so I'll be sending that as a
> seperate update to Robert.
>
> As usual, feedback is appreciated!
>
> -- David Cuny

new topic     » goto parent     » topic index » view message » categorize

3. Re: Py 2.5g Update

Dan, can you tell me what "lexer" is? It's not in any of my dictionaries.

Kat

On 3 Nov 2000, at 16:28, Dan B Moyer wrote:

> David,
>
> But does your spell checker know how to spell "separate" ??  :)  Took *me* a
> while to figure out how to remind myself how to spell it correctly:  there's
> *a rat* in "separate".
>
> Dan
> (who can't program 1/100 as well as David can spell!)
>
> ----- Original Message -----
> From: "Cuny, David at DSS" <David.Cuny at DSS.CA.GOV>
> To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
> Sent: Friday, November 03, 2000 12:04 PM
> Subject: Py 2.5g Update
>
>
> > That's right, yet another release at:
> >
> >    http://www.lanset.com/dcuny/py.htm
> >
> > This version mainly adds checks on parameters, so it can recover nicely if
> > you pass a bad format string to printf, a negative value to sqrt, use a
> > sequence as loop index or conditional test, and so on. Thanks for Falkon
> for
> > catching most of these.
> >
> > I've also run a spell check on the documentation, because I've
> consistantly
> > proven I can't spell 'concatenation'. And I'll try to stop referring to
> > 'associative' lists as 'associated' lists.
> >
> > Finally, I fixed yet another lexer bug in Ox, so I'll be sending that as a
> > seperate update to Robert.
> >
> > As usual, feedback is appreciated!
> >
> > -- David Cuny
>

new topic     » goto parent     » topic index » view message » categorize

4. Re: Py 2.5g Update

Kat,

Nope, haven't the *foggiest*!  Maybe David can tell us.  But since, as I
understand it, Ox is a "grammar generator", maybe "lexer" is a
"lexicographical error"?

Dan


----- Original Message -----
From: "Kat" <gertie at PELL.NET>
To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
Sent: Friday, November 03, 2000 5:38 PM
Subject: Re: Py 2.5g Update


> Dan, can you tell me what "lexer" is? It's not in any of my dictionaries.
>
> Kat
>
> On 3 Nov 2000, at 16:28, Dan B Moyer wrote:
>
> > David,
> >
> > But does your spell checker know how to spell "separate" ??  :)  Took
*me* a
> > while to figure out how to remind myself how to spell it correctly:
there's
> > *a rat* in "separate".
> >
> > Dan
> > (who can't program 1/100 as well as David can spell!)
> >
> > ----- Original Message -----
> > From: "Cuny, David at DSS" <David.Cuny at DSS.CA.GOV>
> > To: <EUPHORIA at LISTSERV.MUOHIO.EDU>
> > Sent: Friday, November 03, 2000 12:04 PM
> > Subject: Py 2.5g Update
> >
> >
> > > That's right, yet another release at:
> > >
> > >    http://www.lanset.com/dcuny/py.htm
> > >
> > > This version mainly adds checks on parameters, so it can recover
nicely if
> > > you pass a bad format string to printf, a negative value to sqrt, use
a
> > > sequence as loop index or conditional test, and so on. Thanks for
Falkon
> > for
> > > catching most of these.
> > >
> > > I've also run a spell check on the documentation, because I've
> > consistantly
> > > proven I can't spell 'concatenation'. And I'll try to stop referring
to
> > > 'associative' lists as 'associated' lists.
> > >
> > > Finally, I fixed yet another lexer bug in Ox, so I'll be sending that
as a
> > > seperate update to Robert.
> > >
> > > As usual, feedback is appreciated!
> > >
> > > -- David Cuny
> >

new topic     » goto parent     » topic index » view message » categorize

5. Re: Py 2.5g Update

Kat wrote:

> Dan, can you tell me what "lexer" is? It's
> not in any of my dictionaries.

Darn! First I get caught for terrible spelling, and now nailed for making up
words.

There are a pair of popular Unix programs for writing new languages, called
'yacc' (yet another compiler compiler) and 'lex' (which does the
lexigraphical analysis).

I don't have a dictionary handy, so this isn't precise: 'lexigraphical' has
to do with the written word. The word  'lexer' is short for a program that
performs lexigraphical analysis. With a language like English, it would
involve looking at the roots of the word (Latin/Greek/Old English, etc.), or
how the ending shows plurality - stuff like that.

In the case of computers, it's typically more simple-minded. A 'lexer' has a
series of rules as to what various kinds of words look like, and how they
can legally be assembled. For an example, think of the Perl-type pattern
matchers:

   integer := {+|-}[0-9]*

says that an integer is composed of an optional sign, followed by one or
more characters in the set 0 through 9 (I can't recall the Perl syntax
exactly, so I'm winging it here).

The lexer in Ox is much stupider. Like any other lexer, it is responsible
for converting a string of characters into seperate words (tokens), and
assigning meaning to those tokens (identifier, number, whitespace, etc.).
The parser then looks at how those tokens are combined, and takes some
action (generates assembly code, builds an executable parse tree, etc).

But in Ox, the lexer treats the optional sign (+,-) as a seperate token:

   +12.4 -> { '+' '12.4' }

and it's up to the grammar to specify that the sign is part of a number.

The parser also adds further rules (based on context) to give meaning to
words. For example, the string of characters 'foo' represents an identifier.
But if it's followed by '(', it's probably a routine call. Context also
determines what is gramatically legal. For example, you can't legally write
this in Euphoria:

   integer i
   for i = 1 to 10 do

Although each bit is a gramatically legal 'sentance', the context of 'i'
being a declared variable conflicts with the rule that loop variables can't
be declared.

Did that clarify things, or just make them worse?

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

6. Re: Py 2.5g Update

He he . you probably mean lexiCOgraphical?

Riwal

> -----Original Message-----
> From: David Cuny [SMTP:dcuny at LANSET.COM]
> Sent: Saturday, November 04, 2000 4:04 AM
> To:   EUPHORIA at LISTSERV.MUOHIO.EDU
> Subject:      Re: Py 2.5g Update
>
> Kat wrote:
>
> > Dan, can you tell me what "lexer" is? It's
> > not in any of my dictionaries.
>
> Darn! First I get caught for terrible spelling, and now nailed for making
> up
> words.
>
> There are a pair of popular Unix programs for writing new languages,
> called
> 'yacc' (yet another compiler compiler) and 'lex' (which does the
> lexigraphical analysis).
>
> I don't have a dictionary handy, so this isn't precise: 'lexigraphical'
> has
> to do with the written word. The word  'lexer' is short for a program that
> performs lexigraphical analysis. With a language like English, it would
> involve looking at the roots of the word (Latin/Greek/Old English, etc.),
> or
> how the ending shows plurality - stuff like that.
>
> In the case of computers, it's typically more simple-minded. A 'lexer' has
> a
> series of rules as to what various kinds of words look like, and how they
> can legally be assembled. For an example, think of the Perl-type pattern
> matchers:
>
>    integer := {+|-}[0-9]*
>
> says that an integer is composed of an optional sign, followed by one or
> more characters in the set 0 through 9 (I can't recall the Perl syntax
> exactly, so I'm winging it here).
>
> The lexer in Ox is much stupider. Like any other lexer, it is responsible
> for converting a string of characters into seperate words (tokens), and
> assigning meaning to those tokens (identifier, number, whitespace, etc.).
> The parser then looks at how those tokens are combined, and takes some
> action (generates assembly code, builds an executable parse tree, etc).
>
> But in Ox, the lexer treats the optional sign (+,-) as a seperate token:
>
>    +12.4 -> { '+' '12.4' }
>
> and it's up to the grammar to specify that the sign is part of a number.
>
> The parser also adds further rules (based on context) to give meaning to
> words. For example, the string of characters 'foo' represents an
> identifier.
> But if it's followed by '(', it's probably a routine call. Context also
> determines what is gramatically legal. For example, you can't legally
> write
> this in Euphoria:
>
>    integer i
>    for i = 1 to 10 do
>
> Although each bit is a gramatically legal 'sentance', the context of 'i'
> being a declared variable conflicts with the rule that loop variables
> can't
> be declared.
>
> Did that clarify things, or just make them worse?
>
> -- David Cuny

new topic     » goto parent     » topic index » view message » categorize

7. Re: Py 2.5g Update

Raude Riwal wrote:

> He he . you probably mean lexiCOgraphical?

I'll have to take your word for it - I still can't find my dictionary! smile

-- David Cuny

new topic     » goto parent     » topic index » view message » categorize

8. Re: Py 2.5g Update

On 10 Nov 2000, at 10:00, David Cuny wrote:

> Raude Riwal wrote:
>
> > He he . you probably mean lexiCOgraphical?

lexicographical:
Of or relating to lexicography


lexicography:
The act of writing dictionaries


lexigraphical:
Not found


> I'll have to take your word for it - I still can't find my dictionary! smile

http://www.wordweb.co.uk/

I used them instead of the dictionary i wrote, cause i html-ized mine and don't
wanna fire up IE to see the html stripped atm.
Kat

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu