On Sat, 31 Aug 2002, Leopold Toetsch wrote:

> > ... make the barrier to running languages/perl6 as low as possible,
> 
> > By default, traditional yacc puts its output files in y.tab.[ch].  Thus
> > my imcc/Makefile currently has
> > 
> >     $(YACC) -d -v imcc.y
> >     mv y.tab.c imcparser.c
> >     mv y.tab.h imcparser.h
> > 
 
> Ack, is see no problem too use these funny y.tab files (I used these 
> some ~15 years ago, where I had them in DOS, brrr)

Well, according to the bison info page, the intermediate file name is
different on some platforms (there's a list in the info page, but I don't
recall it exactly, nor do I recall if it mentioned VMS.)

> So the first question actually is, is there a platform, parrot will 
> support, where there is/will be.. no bison.

Yes.  Solaris doesn't necessarily ship with bison.  Oh, the user can add
it in later, but that's the sort of dependency I was looking to eliminate
when I mentioned "lowering the barrier".

> And second, you did ask last time already: We don't need stack expansion 
> or whatever fancy features, imcc - as already Melvin said - is parsing a 
> simple language.
> 
> Where are your portability issues?

How do you write a makefile that works on DOS, Unix, and VMS, with either
bison or yacc?  It's not the imcc.y file that's not portable, it's the
Makefile.

> > Thus what I'd really like to do here is generate two different makefile
> > fragments, depending on whether or not the user is using bison or (yacc or
> > byacc). With the current substitution-driven makefile.in system, it's not
> > obvious to me how best to do that.  Anyone have any suggestions?
> 
> I'm not totally convinced, to actually look at, what a user is using 
> (bison vs yacc), but, what IMHO matters is, what tool is available + 
> working on this platform. There could be some dependencies for 
> installation + of course your proposed workarounds for incompatiblities)

I don't understand that paragraph.  The issue I was asking was "How do I
write the Makefile to call that tool?"

> imcc does (and will) need e.g. Parrot_dlopen and _dlsym, to figure out, 
>   which op might take which argument(s). This constraint is IMHO more 
> critical (WRT building) then your concerns, which must all be solved too 
> of course, yes.

No, it's not more critical, in my opinion.  imcc simply doesn't build for
me now.  The Makefile commands are wrong.  That prevents me from easily
testing anything in the perl6 directory.

-- 
    Andy Dougherty              [EMAIL PROTECTED]
    Dept. of Physics
    Lafayette College, Easton PA 18042

Reply via email to