Re: CUP/LEX has limitations

glen herrmannsfeldt <gah@ugcs.caltech.edu>
30 Jun 2005 10:01:03 -0400

          From comp.compilers

Related articles
CUP/LEX has limitations girishsharma@lucent.com (Sharma, Girish \(Girish\)) (2005-06-23)
Re: CUP/LEX has limitations snicol@apk.net (Scott Nicol) (2005-06-24)
Re: CUP/LEX has limitations jones@cs.ua.edu (Joel Jones) (2005-06-26)
Re: CUP/LEX has limitations snicol@apk.net (Scott Nicol) (2005-06-26)
Re: CUP/LEX has limitations alpanad@gmail.com (2005-06-30)
Re: CUP/LEX has limitations gah@ugcs.caltech.edu (glen herrmannsfeldt) (2005-06-30)
Re: CUP/LEX has limitations snicol@apk.net (Scott Nicol) (2005-07-02)
Re: CUP/LEX has limitations Martin.Ward@durham.ac.uk (Martin Ward) (2005-07-03)
Re: CUP/LEX has limitations pohjalai@cc.helsinki.fi (A Pietu Pohjalainen) (2005-07-22)
| List of all articles for this month |
From: glen herrmannsfeldt <gah@ugcs.caltech.edu>
Newsgroups: comp.compilers
Date: 30 Jun 2005 10:01:03 -0400
Organization: Compilers Central
References: 05-06-115 05-06-118
Keywords: Java, architecture
Posted-Date: 30 Jun 2005 10:01:03 EDT

Scott Nicol wrote:


> Sharma, Girish (Girish) wrote:


>>Presently i am using CUPLEX parsers for my java application. My cup
>>file code is increased to 5500 lines and now its crashing and not
>>compiling giving "code too large " error because CUP/LEX uses 16-bit
>>unicode character set whaich gives limit only 0-65535 and my parser is
>>exceeding this limit.


> I haven't used CUP/LEX, but I'm quite familiar with the "code too
> large" error in Java. Java has a limit of 64k code per method (you,
> like I, might be wondering what was being smoked when that decision
> was made).


OO programming techniques are supposed to generate small methods,
such that 64K shouldn't be a problem. I agree, though, for machine
generated code it could be too small. I think there was supposed to
be a way around the limit, but it might be that it wasn't implemented (yet).


IBM's z/OS, for a 64 bit architecture, currently limits code to below
the 2GB line. There has been discussion on that limit, but I don't know
that anyone has a convincing case. That is total, not per method.


Note also that Java restricts subscripts to int, which as a signed 32
bit datatype. That might be changed, though, but it seems a restriction
that wasn't necessary.


-- glen



Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.