• user warning: Got error 28 from storage engine query: SELECT t.* FROM drupal_term_node r INNER JOIN drupal_term_data t ON r.tid = t.tid INNER JOIN drupal_vocabulary v ON t.vid = v.vid WHERE r.vid = 5369 ORDER BY v.weight, t.weight, t.name LIMIT 0, 1 in /var/www/dikutal.dk/sites/all/modules/pathauto/pathauto.module on line 142.
  • user warning: Got error 28 from storage engine query: SELECT DISTINCT t.* FROM drupal_term_node r INNER JOIN drupal_term_data t ON r.tid = t.tid INNER JOIN drupal_vocabulary v ON t.vid = v.vid LEFT JOIN drupal_forum_access fa ON t.tid = fa.tid LEFT JOIN drupal_acl acl_fa ON acl_fa.name = t.tid AND acl_fa.module = 'forum_access' LEFT JOIN drupal_acl_user aclu_fa ON aclu_fa.acl_id = acl_fa.acl_id AND aclu_fa.uid = 0 WHERE ((fa.grant_view >= 1 AND fa.rid IN (1)) OR fa.tid IS NULL OR aclu_fa.uid = 0) AND ( r.vid = 7264 )ORDER BY v.weight, t.weight, t.name in /var/www/dikutal.dk/modules/taxonomy/taxonomy.module on line 632.
Dato: 
8. April 2011 - 10:00 - 11:00

Oral defence of master's thesis: Design and implementation of the program library CPH collections

Defender: Jens Peter Svensson
Censor: Christian Heide Damm
Supervisor: Jyrki Katajainen

Time: Friday, 8 April 2011 at 10.00 - 11.00
Place: N034 at DIKU

Defence will be held in Danish

Abstract:

The purpose of this work is to describe the design and implementation of the program library CPH collections. The library is implemented in Python and consists of a subset of the C++ standard library as specified in the C++ standard. The main body of the thesis is devoted to the description and justification of the design choices made and the implementation techniques used. At the end, some ideas and suggestions for the future development of the library are also given.

The main reason for implementing the library was the presumption that 1) it is easier to learn Python than C++, 2) it is easier to write programs in Python than in C++, and 3) it is easier to perform experiments in Python than in C++. In general, it should be easier for the students to learn, and for teachers to teach, algorithms and data structures, including algorithm engineering, using Python and CPH collections than using C++ and its standard library.

The foundation stone of CPH collections was laid in the course Algorithms and data structures held in spring 2010 at our department. In this course the students were assigned to develop components for the library based on the material provided in the textbook and by the instructors. Part of the thesis work was to collect the available components written by different people in different programming styles together to form a coherent library. The details of this exercise are not addressed in the thesis, but the work done by this early generation of students is greatly appreciated.

The thesis is available online at http://www.diku.dk/forskning/performance-engineering/Jens/

PE-lab's home page: http://www.diku.dk/forskning/performance-engineering/


Warning: The table 'drupal_watchdog' is full query: INSERT INTO drupal_watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:\"%error\";s:12:\"user warning\";s:8:\"%message\";s:640:\"The table 'drupal_sessions' is full\nquery: UPDATE drupal_sessions SET uid = 0, cache = 0, hostname = '212.60.126.51', session = 'messages|a:1:{s:5:\\"error\\";a:1:{i:0;s:328:\\"user warning: Got error 28 from storage engine\\nquery: SELECT t.* FROM drupal_term_node r INNER JOIN drupal_term_data t ON r.tid = t.tid INNER JOIN drupal_vocabulary v ON t.vid = v.vid WHERE r.vid = 7264 ORDER BY v.weight, t.weight, t.name LIMIT 0, 1 in /var/www/dikutal.dk/sites/all/modules/pathauto/pathauto.module on line 142.\\";}}', timestamp = 1413976843 WHERE sid = '65cd3d76c in /var/www/dikutal.dk/includes/database.mysqli.inc on line 134