COS341 - Compiler Construction
Access to Campus
Note that access to campus is only possible once you have registered and you have an activated student card.
2016 Exam Perusals
Exam perusals for the Nov/Dec 2016 exams will take place 7 Feb 09:30 to 12:30 and 8 Feb 09:30 to 12:30, in IT 4-66.
Study-Scope for the Written Test #1
Dear COS341 Students, STUDY-SCOPE for the first Written Test (Exam-Opportunity #1) are the FIRST TWO CHAPTERS of our Mogensen-textbook: 1. Lexical Analysis, 2. Syntax Analysis. DATE and ROOM of the examination will be announced later, in a separate communication. PREPARATION ADVICE: * The exam will be 'closed book', * Many 'DO'-questions will be asked, in which you have to demonstrate your ability to 'work something out'.
Assessment Scheme approved by Head of Department
Dear students of COS341, The Head of CS Department has approved the following assessment scheme, which is herewith stated as official part of the COS341 'study guide': CALCULATION OF FINAL MARK: ADD: Semester Project #1: 10 Semester Project #2: 10 Semester Project #3: 10 Exam-Opportunity #1: 24 Exam-Opportunity #2: 23 Exam-Opportunity #3: 23 = 100 Total Marks (max.) ADDITIONAL CONDITIONS: Each project must be attempted and demonstrated, and each exam event must be attempted, too. In other words: It is not allowed to 'skip' any project, and it is also not allowed to 'skip' any written test. ALSO NOTE: "Aegrotat events" for ill students (with valid proof letter from Hospital) will be arranged if needed, whereby proven medical illness is the ONLY acceptable reason for absence from an examination event. (NO other "reasons" are acceptable.)
THURSDAY 23 February: Special Arrangement
COS341 SPECIAL ARRANGEMENT for TOMORROW = Thursday 23 February! As I have been invited to a Logic Seminar at UNISA (with professor Spreen from Germany), there will be NO lecture this Thursday. However, as a replacement, I herewith request that all COS341 students must please WATCH the following three Education VIDEOS on "YouTube" (in preparation for the second chapter of our book): 1. ==> https://www.youtube.com/watch?v=AlSB2_CehbM (5 minutes) 2. ==> https://www.youtube.com/watch?v=Jx30Dz89dHY (19 minutes) 3. ==> https://www.youtube.com/watch?v=9XKUcm8au4U (13 minutes) All together these three education videos are almost as long as our usual in-class lecture. We will see each other again week, for the discussion of Chapter #2 of our book.
Where do we stand?
RECAPITULATION: In the COS341 lecturers we have now finished the discussion of Chapter #1, including: Regular Expressions, Regular Languages, NFA, DFA, Miminimsation, the recognition strategies "First Match" versus "Longest Match". If students have not already done so, then students should please thoroughly study all the pages of Chapter #1 by the end of this week. Additional study material ---if needed--- can be found in the Library of the University of Pretoria, as well as on the Internet.
Freedom of Method in the Semester Projects
For clarification: In all COS341 semester projects, students are free to apply any suitable method of implementation, as long as NO PLAGIARISM is being committed, [remember: proper CITATIONS]. When I am marking your projects, I will only black-box-test whether or not your software code "does the job" from an Input-Output perspective.
Assignment specification 1b is released
The tasks for part 1b of project 1 are now released, too. For 1b, you continue to work with the same project partner as in 1a. (Only for the following Project 2 you will get a new project partner). HAPPY CODING :)
Assignment specification 1a is released
The TASK SPECIFICATION for assignment (project) 1A is herewith released: See file section at the bottom of the COS341 web page. Your PROJECT PARTNER for assignment 1 has already been allocated to you (during the lecture). Please START CODING (with your partner) as swiftly as possible. The other half (1B) of the project specification will soon be released, too. SOFTWARE DEMO DATES will be communicated later in a separate announcement. PLAGIARISM is FORBIDDEN! And now ==> Happy Coding :)
Topics of the three forthcoming Programming Projects
The TOPICS of the three forthcoming programming projects will be as follows: 1. Lexical analysis (Scanner) and Syntax analysis (Parser), 2. Scope analysis and Type checking (Static Semantics), 3. Intermediate Code Generation and Optimisation. All practical projects will be done in teams (pairs) of two students, whereby for each project you will get a new team partner who had not yet been your team partner previously. Project specifications (and Software Demo dates) will be released soon.
Details about Assessment
COS341 follows a "continuous" assessment scheme in which there is NO distinction between "semester mark" and "exam mark". Instead, all marks are collected and added, up to a maximal final mark of 100. In more details, we will have: * THREE WRITTEN TESTS, each of which will cover approximately 65 pages of the textbook, * THREE PROGRAMMING ASSIGNMENTS, each of which will cover an important 'chunk' in the software system of a compiler. In a follow-up announcement (soon), I will tell you exactly how these three written tests and the three programming assignments will 'add up' to the final maximum of 100.
Class Representatives, and "WhatsApp" Group
The following two students have been elected as the COS341 Class Representatives: 1. Dewald de Jager (male), 2. Nikki Constancon (female). At the right-hand-side of the COS341 web page you can find the links to their e-mail addresses, if you need to contact any of them. Moreover: the class representatives are inviting all other COS341 students to join the COS341 "WhatsApp" group with their mobile telephones.
Special event, Tuesday 14 February
Students of COS341 are cordially invited to a special seminar by professor Valentin Goranko (University of Stockholm, Sweden) on the topic of LOGIC. Date: Tuesday 14th February, Time: 13.00h afternoon, Room: IT-4-66.
Errors made by students when designing Finite Automata
Students of COS341 are advised to download and to read the following paper: "Errors made by students when designing Finite Automata" ==> https://www.researchgate.net/profile/Wynand_Van_Staden2/publication/280076428_Errors_made_by_students_when_designing_Finite_Automata/links/562f225f08aef25a244460fd.pdf Knowledge of this paper might be helpful for you when you start your own practical COS341 projects on this topic.
1st Lecture: Wednesday 8 February
1st Lecture of COS341: Wednesday the 8th of February, 7:30h, in IT-4-3. I will explain the 'modalities' of the course for the remainder of this semester. All registered students MUST attend.
The following book is prescribed for COS341 this year: * Torben MOGENSEN, "Introduction to Compiler Design", Springer. Obtaining access to this book is the students' own responsibility.
For students with PRIVATE PROBLEMS
Any student with PRIVATE PROBLEMS, such as (for example): - Psychological issues or anxieties, - Grievance in the family, - Addictions of whatever type, - Financial shortages or debt, are encouraged to VISIT Sipho DLAMINI for private consultation and advice. Sipho DLAMINI can be found in the INFORMATICS department: IT Building, 5th floor.
THIS WEB PAGE IS THE STUDY GUIDE for COS341: COMPILER CONSTRUCTION. Please carefully take note of all further announcements which will appear on this web page! In COS341 we follow ...Show Long Description
There are no tutors assigned.
There are no teaching assistants assigned.
There are no Afrikaans class representatives.
H.o.D Office times
The dates and times are as follows:
- 3 February 12:30-13:30
- 10 February 12:30-13:30
- 13 February 08:00-09:00
- 17 February 12:30-13:30
- 20 February 08:00-09:00
- 27 February 08:00-09:00
- 6 March 08:00-09:00
- 10 March 12:30-13:30
- 13 March 08:00-09:00
- 17 March 12:30-13:30
- 24 March 12:30-13:30
- 27 March 08:00-09:00
- 31 March 12:30-13:30
Active Fitch Fork Assignments
No bookings available
No lab bookings available
Active Team Allocations
No team allocations available
No individual bids
No team bids
No individual bids