-
Notifications
You must be signed in to change notification settings - Fork 11
Programming tasks instructions
A programming task in Compiler project consists of the description and the source code. The source code is provided by mentors. The code has the interface part, the implementation part. To solve a programming problem one needs to set up his environment first. The student should also obtain a GitHub account if he/she doesn't have one yet. When all this is in place the student forks master branch of ILab-Compiler/tasks repository.
The ILab-Compiler/tasks repository holds the source code for all programming task. Each task lives in a separate folder named task<number of task>.
Typical source tree structure is the following:
task_n
-task.sln // Solution for Visual Studio (YES, if you want you can implement task on Windows)
-Makefile // Makefile that builds the task's sources
--sources //
----UnitTest // These three folders hold code, that can be useful for you or for the mentors
----Utils // but you can ignore them for now
----Tools //
----Task // The task sources
------iface.h // The interface of the task, this file should be changed to implement solution
------impl.cc // The implementation of the task should be put here. The unit test code is also in this file
------impl.h // When the task involves implementaiton of a templated class the interface should be kept consize while the implementation goes here
After you forked this code and pulled it to your local machine. You can start by building it and running the resulting binary. This binary is supposed to be in the bin
folder. Run bin/utestd
for debug purposes. The bin/utest
is compiled with porimizations but lacks debug info.