CS
7100 Fall
2025
Prasad
Assignment 4
(For pacing yourself: November 25, 11:59pm)
Object-Oriented
languages frequently
allow overloading of
methods. This feature
allows a class
to have multiple methods of the
same name, provided
they have
distinct signatures.
A method's
signature is typically
the method
name plus the types of its
parameters. Since we do
not have
types in our current language, we
might overload based
simply on the
method name and number of
parameters. For
example, a class
might have two initialize methods, one with no
parameters for use
when initialization with
a default field value
is desired,
and another with one parameter
for use when a
particular field
value is desired.
Extend the Interpreter
for OOPL by
modifying the interpreter code in
myOOPLInterp.scm
to allow overloading
based on the
number of method parameters. .
What
to develop?
Create a well-tested solution
in a file named myOverload.rkt.
In order to better grasp the changes you made, comment out the
code you are modifying rather than deleting it.
Include test
calls and outcomes in your solution so as to make it clear
that you are exercising the necessary constructs, and these calls are
run when you make changes to the code (regresion
testing).
What to turn in?
(OPTIONAL)
You may turn-in your single runnable Racket file myOverload.rkt with
test calls and expected outcomes (showing it works) on Pilot under
Dropbox > Assignment 4.