CS118 Programming Languages

Department of Computer Science

Course Software

  • The hyper programming environment is in my home directory.

    You get a copy of it on linux by:

    % cd ~
    % cp -r ~mckeeman/src/cpp/hyper .
    

    Then you can move the directory you get to wherever is convenient for you to work. The files USEME and README give you the information you need to get going.

    Note: The hyper programming environment could run on windows, but that would be a lot of work (for you). One of the CS48 students ported hyper to the Apple OSX environment.

    The Structure of Hyper (Note: the presentation must be viewed in internet explorer. I apologize.)


  • The tiny compiler is in my home directory.

    You get a copy of it on linux by:

    % cd ~
    % cp -r ~mckeeman/src/m/compiler .
    

    To assess the size of the files, run

    % wc -l lexer.m parser.m x86emit.m
    % wc -l *Init*.m
    
    You will discover about 500 lines of code.

    You can test the tiny compiler by

    % cd compiler
    % matlab
    >> compiler_test
    
    You can test the components of the tiny compiler with lexer_test and parser_test.

    You can get the grammar of the tiny language by

    >> help parser
    


  • The C lexer is in my home directory. See ~mckeeman/src/c/clex.

  • The gem implementation is in my home directory. See ~mckeeman/src/c/gem. There is a README and a makefile.

A mouse-exercise game

A checkers game


Created: Tuesday, March 27, 2001
Last modified: Tue Apr 1 16:09:46 EST 2003
email: McKeeman{at}cs{dot}dartmouth{dot}edu