User Tools

Site Tools


cs330_f2016:laby

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
cs330_f2016:laby [2018/09/26 20:48]
morse
cs330_f2016:laby [2018/09/27 19:58]
morse
Line 39: Line 39:
 Remember that you will use multiple dispatch to implement different "​versions"​ of ''​parse''​ and ''​calc'',​ based on the input type. Remember that you will use multiple dispatch to implement different "​versions"​ of ''​parse''​ and ''​calc'',​ based on the input type.
  
-An important difference between the code that you will implement for this lab, and the code we went through in class, is that your code should properly abstract multiple binary AST nodes into a single class we'll call ''​BinOp''​.+An important difference between the code that you will implement for this lab, and the code we went through in class, is that your code should properly abstract multiple binary AST nodes into a single class we'll call ''​BinopNode''​.
  
-Please name your module RudInt.+Please name your module RudInt ​and submit just the one file.
  
 ===Operator Table === ===Operator Table ===
  
-Define a data-structure to contain a mapping from operator symbols to the functions that actually implement that symbol.+Define a data structure to contain a mapping from operator symbols to the functions that actually implement that symbol. ​  
 +These functions can be either built-in ones or ones that you write, so long as you preserve the semantic meaning of the operation. 
 For example: For example:
  
Line 159: Line 161:
 In order for your code to work with the solo-grader you will need to do following: In order for your code to work with the solo-grader you will need to do following:
   -Name your module ''​RudInt''​.   -Name your module ''​RudInt''​.
-  -Make sure the function stored in your binop are native Julia functions. 
   -Make sure the ''​julia''​ binary is in your executable path (like you did for ''​racket''​ previously)   -Make sure the ''​julia''​ binary is in your executable path (like you did for ''​racket''​ previously)
   -Make sure the path for the Error and Lexer files are on you Julia path. To do this you can add ''​push!(LOAD_PATH,​pwd())''​ into your ''​~/​.julia/​config/​startup.jl''​ file, then just make sure to run the autograder from the same directory in which you have RudInt, Lexer, and Error.   -Make sure the path for the Error and Lexer files are on you Julia path. To do this you can add ''​push!(LOAD_PATH,​pwd())''​ into your ''​~/​.julia/​config/​startup.jl''​ file, then just make sure to run the autograder from the same directory in which you have RudInt, Lexer, and Error.
cs330_f2016/laby.txt · Last modified: 2021/06/30 23:42 (external edit)