Students Page
updated Sept 2002

Opportunities

For the next few years, I will have support for several graduate students. The support is provided by the NSF's grants CCR-0110496 and CCR-0218224. The project aims at the implementation of a compiler back-end for a generic functional logic language and to its deployment in the Pakcs compiler/interpreter of Curry.

Students interested in this project should submit (plain text and PDF are preferable) a recent transcript, curriculum vitae, names of 3 references and a cover letter highlighting both any previous experience or background in declarative programming and specific interests in the project. Local students are encouraged to begin with a visit to room FAB 115-14, which hosts the students currently involved in this project and ask about their activities.

MS students supported by the project are expected to complete a thesis on some aspect of the research. MS students supported by the project generally take 12 credits per term. Of these, 6 credits are given for research work and 6 credits are for courses to be applied toward graduation requirements. Check the Graduate Handbook for the details on graduation requirements. Support is provided for several consecutive terms contingent to satisfactory performance. Either 6 or 9 credits among those given for research work are counted for a thesis.

I teach two graduate courses related to this project. One course, in functional logic programming, gives an initial background and a context to the research. The other course, in software design and architecture, teaches some advanced techniques heavily employed in the current implementation. Real life compilers are very complicated software artifacts. Students involved in the project and students seeking support are encouraged to take these courses.

Past experience shows that an informal initial involvement, e.g., in the form of a particular assignment in a course or a small programming task, is a modest investment (on both sides) that often leads to the right decision on whether or not to get involved in this project. Successful students are fully vested shareholders in the project. They are exposed to leading edge research in modern programming language design and implementation. They learn advanced techniques in software development, build professional references, and create a portfolio of publications that will give them an edge, after graduation, in a job search and/or the pursuing of an advanced degree. They significantly contribute to a fun and supporting group of people in which the shared vision of a challenging goal and the individual effort to achieve it are well balanced.

Advising

My office hours are available from the CS office and are included in the syllabus of my current course(s), accessible from the teaching page. To request an appointment send e-mail to antoy@cs.pdx.edu with the times in which you are not available. You should always precede a meeting with an agenda and a brief description of your problem, if any. In this way, I will suggest what you should bring to the meeting and I will come prepared to solve your problem. Confidential information can be e-mailed encrypted using my public key. Quarterly forms that conform to the Graduate Handbook can be left in my mailbox together with the list of completed courses and an e-mail address for feedback.

Graduate students and professors are no smarter than undergrads.
They're just older.