Download these IBM resources today! e-Kit: IBM Rational Systems Development Solution
With systems teams under so much pressure to develop products faster, reduce production costs, and react to changing business needs quickly, communication and collaboration seem to get lost. Now, theres a way to improve product quality and communication.
Webcast: Asset Reuse Strategies for Success--Innovate Don't Duplicate!
Searching for, identifying, updating, using and deploying software assets can be a difficult challenge. eKit: Rational Build Forge Express
Access valuable resources to help you increase staff productivity, compress development cycles and deliver better software, fast. Download: IBM Data Studio v1.1
Effectively design, develop, deploy and manage your data, databases, and database applications throughout the data management life. eKit: Rational Asset Manager
Learn how to do more with your reusable assets, learn how Rational Asset Manager tracks and audits your assets in order to utilize them for reuse.
I had to make a project last month for the Compiler Techniques course at the university
where I study. This project was to make a simple Pascal compiler for an imaginary
virtual machine. I also work for a software company so I had to make the project
in my free time after university and work, so in some places the code is made in a
rush (you know what I mean). Anyway, this program is a nice compiler sample, and
for people who are interested, might me a good source of ideas.
The program is a multi document/view based application. It supports 3 types of files:
*.rez, a token result file that is generated after parsing the source code
*.asm, an assembler file containing virtual machine code, that is generated
by the compiler together with the binary file
*.pas, Pascal source files
For the asm and pas documents, I used the syntax coloring editor code from Adrei Stcherbachenko,
that I downloaded from CodeGuru.
This sample was made using Visual C++ v 6.0, and contains 2 projects: the compiler and the virtual
code interpreter.
I tried to modularize the compiling process so that the reusability of the classes would be
higher. For example, the CStringTokenizer class can be used for tokenizing strings and
command line parameters and can be used to make a C Lexical analyzer, etc. The
CPascalLexAnalyzer is used to tokenize the Pascal source, and the CPascalCompiler is responsible
for making syntactical and semantically verifications and for the actual compilation.
Add www.codeguru.com to your favorites Add www.codeguru.com to your browser search box IE 7 | Firefox 2.0 | Firefox 1.5.xReceive news via our XML/RSS feed