Naja, Parser schreibt man oft nicht von Hand sondern verwendet Tools (sog. Compiler Compiler). Ob's da was für Delphi gibt weiss ich nicht. Ich denke einen ObjectPascal Parser müsste es eigentlich OpenSource schon geben, hast du schon danach gesucht?
Ansonsten such mal nach der EBNF von Delphi. Für Pascal sieht sie so aus:
www.lrz-muenchen.de/...ard/Pascal-EBNF.html
Die Grammatik für Delphi 2010 dürfte einiges komplexer aussehen.
Oft wird nebst Parser auch ein Tokenizer verwendet, um den Quelltext erst mal grob auseinanderzunehmen, bspw. Zahlen, Ausdrücke usw.. Der Parser muss dann nicht mehr Zeichen für Zeichen durchgehen sondern "nur" noch die Tokens. Es gibt einiges an Literatur, was Parser-Typen angeht. Es gibt z.B. Top-Down, Bottom-Up Parser, mit/ohne Lookahead.