Exemplo n.º 1
0
        static void Main(string[] args)
        {
            //Program program = new Program();
            //program.GameTest();

            Config config = new Config();

            Scheme parentScheme = new Scheme("ParentScheme");

            config.AddScheme(parentScheme);

            Scheme scheme = new Scheme("MyScheme");

            scheme.Code = File.ReadAllText("language/examples/scheme_example1.txt");

            SchemeLang.Compile(scheme, config);

            string code = scheme.CompiledScheme.GetFullCode();

            SchemeLangOptimizer.Optimize(scheme.CompiledScheme.GetFunctionByName("DoStuff"));

            string optimizedCode = scheme.CompiledScheme.GetFullCode();

            //File.WriteAllText("output.txt", code);

            Console.WriteLine(code);
            Console.Write(optimizedCode);
            Console.ReadKey();
        }
Exemplo n.º 2
0
        public void Compile(Config config)
        {
            // compile self
            if (Code != null && Code != "")
            {
                SchemeLang.Compile(this, config);
            }

            IsCompiledValid = true;

            // compile parents
            foreach (var parent in Parents)
            {
                parent.Compile(config);
            }
        }