package interpreter;

public class InteractiveLispInterpreter extends LispInterpreter {

    public static final String PROMPT = "~ ";

    @Override
    protected void prompt() {
        environment.getOutput().print(environment.decoratePrompt(PROMPT));
        environment.getOutput().flush();
    }

    @Override
    protected void evaluateAndPrintNextSExpression() {
        environment.getOutput().println();
        super.evaluateAndPrintNextSExpression();
    }

    @Override
    protected void applyFinishingTouches() {
        environment.getOutput().println(environment.decoratePrompt(""));
        environment.getOutput().flush();
    }

}
