code completion

studerandr at post.ch studerandr at post.ch
Thu Jan 17 17:30:06 UTC 2002


Hallo zusammen

Bzgl. dem Mail in der Liste: Ich kenne BISON (YACC) und FLEX. Hab' mal damit gearbeitet für'n anderes Projekt. Ein Buch, das so ziemlich alle Aspekte für Flex & Yacc abdeckt gibt es bei o'reilly. Das kann man wärmstes empfehlen.

Was die Parser angeht, da hab' ich zwar noch nicht so genau 'rein geguckt, aber eigentlich müsste es doch möglich sein, die Parser-Seite von GCC zu benutzen? Also die GNU Compiler Collection hat neben Compiler für C / C++ auch solche für Chill, Fortran, Objective C, ADA, Java...

Ich kenne die Internas von GCC nicht, aber die reden da von front ends, wenn sie von einer Sprache reden. Das hört sich von aussen nach einem modularen Konzept an. Hat da mal jemand ein Blick hinein geworfen? Jedenfalls benutzen die z.T. auch den YACC resp. BISON. Der Ursprung von GCC ist ja auch dieselbe Person...
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parse.y?rev=1.241&content-type=text/x-cvsweb-markup&only_with_tag=MAIN

Lässt sich damit nix machen?

freundliche Grüsse

Andi



---------------------------snip---------------------------
C++ CODE COMPLETION

Seems it's an impatiently expected feature.
So I'll give you a short survey of what issues
we're struggling with. (Until now we held our
discussion in German and outside kdevelop-devel).

The first features the C++ code completion (CC)
will support are:
- member completion
- argument hinting/completion
- type information

About 100 more features are conceivable but
the time ... ;-)

Undoubtedly we need a parser. Therefore we
had to learn BISON (at least I had to) and even
before had to find out that we had to learn about it.
It seems that work will continue faster now but
it's still a lot of work and C++ has a very complicated
grammar with many many ambiguities.

If someone want's to help he/she(?) should first
read the FLEX manual ("man flex") and the BISON
documentation ("info bison" or GNU website).

Currently the most promising approach for the
CC parser is one big parser that creates sort of a
parse tree that is evaluated by the different aspects
of the CC part.

Furthermore we need some extension to the Class
Store. It's already persistant (thank Victor Röder and
Daniel Engelschalt) but it's yet not sufficient for all
C++ features (Namespaces, Templates(!)).
If someone's interested in working on that I can give
more detailed information.

Also there's much work to do concerning the UI.
I'll give more details when CC works acceptable
(nevertheless it really is important).

So you see it's really a LOT of work to do and I have
so many more ideas whizzing around in my head but
the time ... the damn ol' time ;-)

Help and hints is always welcomed.

regards,
Thomas Schilling




_______________________________________________
Kdevelop-devel mailing list
Kdevelop-devel at barney.cs.uni-potsdam.de
http://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel




More information about the KDevelop-devel mailing list