protected override SucoExpression deduceTypes(SucoTypeEnvironment env, SucoContext context) { var valueExpr = ValueExpression.DeduceTypes(env, context); var innerExpr = InnerExpression.DeduceTypes(env.DeclareVariable(VariableName, valueExpr.Type), context); return(new SucoLetExpression(StartIndex, EndIndex, VariableName, valueExpr, innerExpr, innerExpr.Type)); }