X-Git-Url: https://code.kerkeslager.com/?p=fur;a=blobdiff_plain;f=main.py;h=9ec852afb955227dfc5ef8a7f0eb74f5945edb18;hp=198072e52153a52e5572842092d4cdd172788dff;hb=4f86ad3f093ca0c51e77a28b208e7751629d4948;hpb=e60f2b20f17609da9b093ac1e08d688bf87bfb4a diff --git a/main.py b/main.py index 198072e..9ec852a 100644 --- a/main.py +++ b/main.py @@ -3,12 +3,11 @@ import sys import conversion import crossplatform_ir_generation import desugaring -import generation +import c_generation import normalization import optimization import parsing import tokenization -import transformation source_path = sys.argv[1] @@ -21,18 +20,15 @@ desugared = desugaring.desugar(parsed) normalized = normalization.normalize(desugared) converted = conversion.convert(normalized) -# This is the C generation path -transformed = transformation.transform(converted) -generated = generation.generate(transformed) +crossplatform_ir = crossplatform_ir_generation.generate(converted) +optimized = optimization.optimize(crossplatform_ir) +outputted = crossplatform_ir_generation.output(optimized) +print(outputted) + +generated = c_generation.generate(optimized) assert source_path.endswith('.fur') destination_path = source_path + '.c' with open(destination_path, 'w') as f: f.write(generated) - -# This is the crossplatform IR generation path -crossplatform_ir = crossplatform_ir_generation.generate(converted) -optimized = optimization.optimize(crossplatform_ir) -outputted = crossplatform_ir_generation.output(optimized) -print(outputted)