Find compiler Pascal open source

I want to find doc about how to developing Pascal language (compiler)
Who can help me ??
Who is Participating?
SoyYopConnect With a Mentor Commented:
Have you tryed Lex and Yacc?

Does not generate EXE code, but works (compiles, don't link, but runs like VB, emulating)

Supports an array of languages. You can add more functions (I mean structures) to the language if you give yourselfe a time using the lexical grammar.

Works on many platforms.

A good reference is:

WesleySaysHiConnect With a Mentor Commented:
Go to the Free Pascal Home Page:
You can get information there and make free download. Following operating systems are supported: Linux, FreeBSD, NetBSD, Mac OS X/Darwin, Mac OS classic, DOS, Win32, OS/2, BeOS, SunOS (Solaris), Netware (libc and classic), QNX and Classic Amiga.

Checkout also the Free Pascal Webring:

More compilers and information about them you can find at:

JesterTooConnect With a Mentor Commented:
Here are some  page references to many open source pascal compilers, ides, interpreters, etc.

Cloud Class® Course: CompTIA Cloud+

The CompTIA Cloud+ Basic training course will teach you about cloud concepts and models, data storage, networking, and network infrastructure.

Jaime OlivaresConnect With a Mentor Software ArchitectCommented:
You can download Borland Turbo Pascal for DOS from the Borland's Museum:,1410,20803,00.html
sonbinaryAuthor Commented:
you know...I developing a smal compiler for pascal language and I have some problem with "record type", I don't know how to define it
I had syntax for some token like begin end,,....
I want to define syntax for record type, to do that??
Main->Program Id Semi

Dec->Var Id_list Colon Type Semi

Id_list-> Id_list Comma Id|Id

Type->Simple|Id|Array Osqua Simple Csqua Of Type

Simple->Integer|Float|Num1 Dotdot Num1

Body->Begin Stmt_list End Dot

Stmt_list->Stmt_list  Stmt| Є

Stmt->(CaseStmt|AssignStmt|Exp) Semi

CaseStmt->Case Id Of BodyCase_list End

BodyCase_list->BodyCase_list BodyCase|BodyCase

BodyCase-> Num1 Colon Stmt_list

AssignStmt-> Id Set Exp

Exp-> Exp Op1 Term|Term

Term-> Term Op2 Factor|Factor Op3 Term|Factor

Factor->Id|Num1|Num2| Openbracket Exp Closebracket
fulscherConnect With a Mentor Commented:
What a pitty - it seems that I lost my copy of Niklaus Wirth's compiler construction book. I think he explains the syntax quite well there.

Too bad. Here's a suggestion:

Type -> Simple|Id|Array Osqua Simple CSqua of Type|RecordType

RecordType -> "Record" DecList "End Record" Semi

DecList -> Dec [DecList]

Is it that what you need?

I _think_ I've answered the Q...
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.