This page is to collect all the bits and pieces of source code and other material that I created during my studies at Eötvös Lóránd University. Expect it to be mostly in Hungarian.
Theoretical subjects
Relational Programming
Read this introduction on a relational model of programming at Advogato to get an idea of what this is all about. I've put some problems and solutions online. If you understand Hungarian, you're in luck because there's an online textbook in two parts.
Formal languages & automata
- The Turtle language family: Family of languages describing geometrical shapes using turtle graphics semantics.
- The SP programming language: A very simple toy language for writing programs solving number theory problems.
Parsers & compilers
- Simple backtracking parser: A simple backtracking parser generator, written in Lisp
- Recursive descent LL(1) parser: Another Lisp compiler generator macro, this time implementing the recursive descent strategy.
- SP compiler: A very simple compiler for the SP language (see above), that compiles directly into IA-32 assembly.
- Advanced SP compiler and interpreter: A slightly more complex compiler and interpreter for the SP language.
- LALR(1) parser generator: Completing the list of Lisp macros for creating parsers using various strategies, this last one implements the LALR(1) optimization of the LR(1) algorithm.
Practical subjects
Programming Environments
Programming assignments for the fall semester of 2005-2006:
Programming Languages/C++
The assignment was to write a solver for the Sudoku puzzle. Input format: 81 digits (separated by whitespace) describing the board row by row, 0 denoting unspecified cells. Output format: the 81 digits of the solution, or 81 zeros if an error occured (such as wrong input format, or unsolvable puzzle).
To aid testing, I also wrote a small Python script that checks solved Sudoku boards of the format described above.
Programming Languages/IA-32 Assembly
Developing Elementary Applications
This subject is about implementing programs for specific problems, as constructed using the relational model described above.
EAF I
- EAF I. 1/11: Decomposing to digits (source)
- EAF I. 2/8: Filtering a vector (source)
- EAF I. 2/8: Filtering a sequential file (source)
- EAF I. 3/9: Searching diagonals of a matrix (source)
- EAF I. 4/6: Updating a database (source)
EAF II
- EAF II. 1/2: Natural numbers (source)
- EAF II. 2/2: Bag (multiset) (source)
- EAF II. 3/5: Bounding box for regular polygons (source)
- EAF II. 4/3: Ternary tree container (source)
EAF III
- EAF III. 1/7: Knight's Tour interactive game (source)
- EAF III. 2/2: Blackjack (source)
- EAF III. 3/4: Visualization of the Heapsort algorithm (source)
- EAF III. 4/1: Simple, single-table database (source)
Blog
Mark all as read
17 June 2008 (ELTE personal) (4 comments)A mai informatika szigorlattal túlvagyok a főiskolai tárgyakon. Sőt, az anal 5-6 személyében még túl is toltam.
Sávok, here I come!