Hi Folks!
There is a book in German language about GNU-Pascal available at Wikibooks. See http://de.wikibooks.org/wiki/GNU-Pascal_in_Beispielen
There is a publishing company, who is going to sell this and some other books from wikibooks. The money will be donated to the wikimedia foundation.
I do not have the time, to step through this book again and fix all those things, which might have changed or should be rewritten. If someone would like to take this job, feel free. Translators are also welcome. Without your help, this book becomes more and more outdated and not worth publishing.
Yours
Eike
Eike wrote:
Hi Folks!
There is a book in German language about GNU-Pascal available at Wikibooks. See http://de.wikibooks.org/wiki/GNU-Pascal_in_Beispielen
There is a publishing company, who is going to sell this and some other books from wikibooks. The money will be donated to the wikimedia foundation.
I do not have the time, to step through this book again and fix all those things, which might have changed or should be rewritten. If someone would like to take this job, feel free. Translators are also welcome. Without your help, this book becomes more and more outdated and not worth publishing.
I quickly looked at the book (and especially at the examples): it seems that examples are adjusted to newest GPC version. My impression is that most of the book uses just standard constructs, so there should be little need to update them. Of course, before publication it is better to run examples trough compiler (preferably trough multiple versions of the compiler)...
It seems that there are some constructs are missing: OOP, structured value constructors, ISO modules. If the goal is to have a reference book one should probably also include many builtion routines. OTOH if the goal is to introduce people to programming using GNU Pascal, then author chooses what topics to include, and the choice made looks reasonable.
Hi Folks,
can someone please point me to the file(s) with the definitions of the GPC keywords?
I would like to attempt some changes to the compiler, that would require the introduction of new keywords. ("try", "except", "finally" and "property", to be specific.) So I grepped the p-directory for "object", "abstract" and some other common keywords, but didn't find the definitions, neither in the parser.y file, nor in any of the .c or .h files.
Since this is my very first attempt to modify the compiler itself, I would also appreciate any input (beyond section 12 of the GPC Manual) and examples on the how-tos: Which files to modify, how to correctly invoke Bison etc.
Best,
Markus
Markus Gerwinski wrote:
Hi Folks,
can someone please point me to the file(s) with the definitions of the GPC keywords?
I would like to attempt some changes to the compiler, that would require the introduction of new keywords. ("try", "except", "finally" and "property", to be specific.) So I grepped the p-directory for "object", "abstract" and some other common keywords, but didn't find the definitions, neither in the parser.y file, nor in any of the .c or .h files.
Keywords are defined in predef.def. Grepping you will find a commented out section containing definitions of "try", "except", "finally" and "property". Note however that those are Delphi keywords (property is also in Object Pascal) -- giving them different meaning is not a good idea.
Since this is my very first attempt to modify the compiler itself, I would also appreciate any input (beyond section 12 of the GPC Manual) and examples on the> how-tos: Which files to modify, how to correctly invoke Bison etc.
Details depend on what you want to do. I normally just use 'make' to rebuild gpc -- 'make' will run Bison etc. if needed. If you need to do a lot of work on grammar running 'bison -v' may be helpful ('-v' flag creates detailed report of the grammar).
Waldek Hebisch wrote:
Keywords are defined in predef.def.
Thank you very much!
Grepping you will find a commented out section containing definitions of "try", "except", "finally" and "property". Note however that those are Delphi keywords (property is also in Object Pascal) -- giving them different meaning is not a good idea.
I pretty much intend to implement the Delphi syntax here. (try-statements and properties for our current, BP-style objects) I also have a few extensions in mind, but they wouldn't prevent anyone from using the usual Delphi syntax.
Details depend on what you want to do. I normally just use 'make' to rebuild gpc -- 'make' will run Bison etc. if needed. If you need to do a lot of work on grammar running 'bison -v' may be helpful ('-v' flag creates detailed report of the grammar).
Thanks again!