-def normalize_function_call_expression(counter, expression):
- assert isinstance(expression, parsing.FurFunctionCallExpression)
+def normalize_integer_literal_expression(counter, expression):
+ return (
+ counter,
+ (),
+ NormalIntegerLiteralExpression(integer=expression.integer),
+ )
+
+def normalize_lambda_expression(counter, expression):
+ variable = '${}'.format(counter)
+
+ _, statement_list = normalize_statement_list(
+ 0,
+ expression.statement_list,
+ )
+
+ return (
+ counter + 1,
+ (
+ NormalVariableInitializationStatement(
+ variable=variable,
+ expression=NormalLambdaExpression(
+ name=expression.name,
+ argument_name_list=expression.argument_name_list,
+ statement_list=statement_list,
+ ),
+ ),
+ ),
+ NormalVariableExpression(variable=variable),
+ )
+
+NormalListConstructExpression = collections.namedtuple(
+ 'NormalListConstructExpression',
+ [
+ 'allocate',
+ ],
+)
+
+def normalize_list_literal_expression(counter, expression):
+ list_variable = '${}'.format(counter)
+ counter += 1