(dates covered: 4/1/99 - 3/31/00)


Timothy J. Hickey, Computer Science


  1. List courses taught throughout the year, (title, number, enrollments, hours per week). For team-taught courses, please provide details of your specific responsibilities. Please discuss, if applicable, new courses created, new pedagogical materials and techniques, and supervision of teaching assistants. You may wish to attach course syllabi and relevant course materials.

    Courses taught

    This year I taught a total of 363 students in 2 large lecture courses, 2 TYP courses, 5 independent studies, and 3 Summer Odyssey internships.

    SCHEDULE: AUTUMN 1999 MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY 9:00 CS2a CS2a CS2a 9:30 CS2a CS2a CS2a 10:00 TYP Math TYP Math TYP Math 10:30 TYP Math TYP Math TYP Math 11:00 OH 11:30 OH 12:00 12:30 1:00 OH 1:30 OH OH 2:00 OH 2:30 OH 3:00 OH 3:30 4:00 4:30 SCHEDULE: SPRING 2000 MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY 9:00 CS155 CS155 CS155 9:30 CS155 CS155 CS155 10:00 TYP Math TYP Math TYP Math 10:30 TYP Math TYP Math TYP Math 11:00 OH 11:30 OH 12:00 12:30 1:00 OH 1:30 OH OH 2:00 OH 2:30 3:00 3:30 4:00 4:30

    New Pedagogical Materials

  2. Please describe your involvement in the direction of reading courses, theses, dissertations, and other student research projects (undergraduate and graduate).


  1. List publications that have appeared from March, 1999 to the March, 2000. In the creative arts, please list and describe artistic creations, performances or exhibitions.

    1. "Interval Constraint Plotting for Interactive Visual Exploration of Implicitly Defined Relations"
      by Timothy J. Hickey, Zhe Qiu, and Maarten H. van Emden,
      in the special issue on Reliable Geometric Computations, in
      Reliable Computing, Vol 6., No. 1, 2000.

    2. "Reflecting Java into Scheme" (.ps.gz 182K)
      by Ken Anderson and Timothy J. Hickey
      in Cointe, P., Nantes, France (Ed.) Meta-Level Architectures and Reflection
      Second International Conference, Reflection 99,
      Saint-Malo, France, July 19-21, 1999 Proceedings, Springer-Verlag,
      Lecture Notes in Computer Science, v. 1616, 1999/2000.

    3. Analytic Constraint Solving and Interval Arithmetic (.ps.gz, 106K)
      by Timothy J. Hickey
      in Proceedings of the 27th Annual ACM SIGACT-SIGPLAN Symposium
      on Principles of Programming Languages
      (POPL'00), Jan. 2000.
      An early version is available as Brandeis CS Tech. Report CS-99-203, July, 1999. (.ps.gz, 59K)

    4. "Metalevel Constraint Solving in CLIP", (.ps.gz, 77K),
      by Timothy J. Hickey
      in the Proceedings of PADL'00, Jan. 2000.
      Springer-Verlag, "Lecture Notes in Computer Science", vol. 1753, 2000.
      An earlier version of this paper is available as Brandeis CS Tech. Report CS-99-204, August, 1999. (.ps.gz, 72K),

    5. Validated Constraint Contraction, (.ps.gz, 16K), T. Hickey, D. Wittenberg,
      Joxan Jaffar (Ed.): Principles and Practice of Constraint Programming - CP'99, 5th International Conference, Alexandria, Virginia, USA, October 11-14, 1999, Proceedings. Lecture Notes in Computer Science, Vol. 1713, Springer, 1999, ISBN 3-540-66626-5 , pp. 482-483 .

  2. List manuscript(s) submitted or accepted for publication, specifying journal or publisher and anticipated publication date. For artistic work, please provide information about forthcoming exhibitions or performances.

    1. Constraint-Based Termination Analysis for Cyclic Rule Activation in Active Databases (.ps.gz 96K)
      by Saumya Debray and Timothy Hickey, January 2000.
      submitted to Deductive and Object-Oriented Database Conference, Sagiv, CL2000

    2. Interval Arithmetic: from Principles to Implementation (.ps.gz 96K)
      by Timothy J. Hickey, Qu. Ju, and Maarten H. van Emden
      Brandeis CS Tech. Report CS-99-202, July, 1999.
      submitted to JACM on 12 June 1999.

    3. Validated Constraint Compilation (.ps.gz 72K)
      by Timothy J. Hickey and David Wittenberg
      Brandeis CS Tech. Report CS-99-201, 17 pp., April, 1999.

  3. For ongoing work, please describe progress made since the last activities report (e.g. chapters completed). Be as specific as possible.

    1. The Silk Scheme System -- We have made considerable progress in developing the Silk Scheme system (Silk 4.0), which is the successor to JLIB2 and Silk3. The underlying Scheme engine was completely redesigned by Peter Norvig, and debugged by Ken Anderson, who also added Generics. I developed the concept of "Java Literals" by extending some of Ken's ideas on syntax, and I built a Scheme->Java compiler for Silk. I am currently developing a high level library (JLIB) for writing GUIs and will use this library in the CS2a course (nicely combining research with teaching), and I am developing a suite of applications showing the benefits of Silk as an alternative to Java. This language could potentially have a major impact on the way client-side programs are written. We will be making our first major release in April.

    2. Interval Arithmetic Constraints -- I am currently building a new Silk-based version of IAsolver (the constraint solving applet which was initially released in 1997 and has become recognized at several major numerical web sites). Also, I have begun developing new high level libraries for the declarative construction of non-linear constraint solvers. I expect to have a new release of this software (and a paper) in the next month or two.

    3. Faculty Website -- The faculty website has now been accessed by about 40 faculty members (which is no mean feat since they must find the site and give the proper username and password) and now hosts the faculty handbook and the proposed handbook as well as several reports. My goal is to encourage faculty to post committee reports at the site and more importantly to use the site as a way of communicating about sensitive and important issues.


Please detail your participation in Departmental and University activities:
  1. Departmental: Service on committees, administrative tasks, etc.
    1. Undergraduate Advising Head
  2. University: Involvement in student activities, panel presentations, fund-raising, etc.
    1. Faculty Communication Committee (lead development of the Faculty Website)
    2. Provost and Dean's Advisory Committee
    3. Faculty Wien Oversight Committee
    4. Faculty Committee on Student Affairs (chair)
    5. CS Department Liason to the Admissions Department (went to Open House)
    6. CS Department Liason to the Pscyhological Counseling Center (no duties!)


    Please list grant applications, renewals, and awards from March, 1999 to the present. Include granting agency, title of project, period of grant, and total amount.


  1. Please list awards and honors received since March, 1999.


  1. List any inventions, patent applications, patents, copyright, software, maskworks, and any other intellectual property that is or may be patentable which you have conceived or reduced to practice, individually or jointly with others, during the course of your appointment, employment, or participation in Brandeis activities.

    1. CLIP 1.0 -- a CLP(Intervals) extension of GNU prolog.
      Distributed under GNU LGPL licence.

    2. Silk 4.0 -- a Java-based Dialect of Scheme
      Distributed under ZLIB/PNG opensource licence.
      Codeveloped with Ken Anderson at BBN and Peter Norvig at NASA Ames
      Latest release: Silk 4.0.16 (3/11/2000)


  1. List and/or describe lectures given, involvement in professional societies, legislative testimony, etc. If none, indicate non-applicable.


  1. List courses taught at other institutions for which you received payment (March, 1999 to present). Please provide name of institution, term, course(s) taught, days and hours per week. If none, indicate non-applicable.


  2. List any and all other employment, and/or consultant arrangements, that you have outside of Brandeis (March, 1999 to present). Please provide name of company, corporation or institution. Please append summaries of relevant parts of contracts, letters of appointment or consulting agreements. Do any of these arrangements provide present or future equity interest possibilities to you and do you receive any research support from any of these organizations? If none, indicate non-applicable.


  3. List management or fiduciary activities in which you have a role as an officer, director, trustee, supervisor, or founder with respect to any organization or group. If none, indicate non-applicable.


  4. List any inventions, patent applications, patents, copyright, software, maskworks, and any other intellectual property which you have conceived or reduced to practice, individually or jointly with others, which has been developed outside of Brandeis University and which has been developed during the course of your appointment, employment, or participation in Brandeis activities.



  1. Please reflect upon what you hope to achieve in the coming year in terms of your ongoing work, new project you hope to begin, your teaching, professional development, and/or your role in the Brandeis community.

    1. Curriculum Development -- I am actively developing software, tutorials, sample programs, and other course materials for the CS2a course, Introduction to Computers. This course is designed to teach novice programmers to develop sophisticated web-based programs with complex graphical user interfaces that run on almost all platforms (Mac, PC, Linux).

    2. The Silk Scheme Project -- I am developing a high level alternative to Java (along with two codevelopers -- Ken Anderson at BBN, and Peter Norvig at NASA Ames). Over the coming year I intend to study the problem of applying high-level semantics-based optimizations to Silk, which is a high-level language together with an extensive collection of libraries for graphics, networking, cryptography, etc. We have moved the Silk project to the Opensource domain sourceforge.net where it can be accessed and "debugged" by other developers.

    3. Interval Arithmetic Constraints -- Over the past year I have published three papers on the theoretical foundations of Interval Arithmetic Constraints and I've submitted three others. Over the next year, I will be exploring the application of these methods to solving large systems of non-linear constraints as well as looking at applications in other numerical domains such as ODEs and PDEs. The goal will be to determine whether these methods are potentially competitive with more classical approaches which are either less rigorous or less declarative or both.

    Please feel free to provide any other information relevant to your 1999-00 activities and contributions to the University.


This file is available on line at http://www.cs.brandeis.edu/~tim/Activity/99-00.html