about summary refs log blame commit diff stats
path: root/cpp/.traces/brace_conversion_and_run
blob: 8250e7a4554c8a1bfe71d9c9cda0802a0855134d (plain) (tree)
1
2
3
4
5
6
7
8
                       

                                                                                   
                       

                                                                                   

                        


                                                                                   
                        
                                                                                   
                       


                                                                                   
                       


                                                                                   
                        

                       

                                                                                   
                             
                        
                                    






                                  

                                                                   
                       
                                                   
                          
                                   
                        
                              
                                   
                        
                              
                                   



                        
                              
                                   


                           
                                   





                        
                              
                                   



                        
                              
                                   
                         
                               
                                   



                        
                              
                                   


                           
                                   





                        
                               
                                   



                        
                              
                                   
                         
                               
                                   



                        
                              
                                   


                           
                                   





                        
                               
                                   



                        
                              
                                   
                         
                               
                                   



                        
                              
                                   


                           
                                   





                        
                                
                                   



                        
                              
                                   
                         
                               
                                   



                        
                              
                                   



                               
                                   

                        
                                
parse/0: instruction: 1
parse/0:   ingredient: {name: "5", value: 0, type: 0, properties: ["5": "literal"]}
parse/0:   product: {name: "1", value: 0, type: 1, properties: ["1": "integer"]}
parse/0: instruction: 1
parse/0:   ingredient: {name: "1", value: 0, type: 0, properties: ["1": "literal"]}
parse/0:   product: {name: "2", value: 0, type: 1, properties: ["2": "integer"]}
parse/0: label: {
parse/0: instruction: 13
parse/0:   ingredient: {name: "1", value: 0, type: 1, properties: ["1": "integer"]}
parse/0:   ingredient: {name: "1", value: 0, type: 0, properties: ["1": "literal"]}
parse/0:   product: {name: "3", value: 0, type: 3, properties: ["3": "boolean"]}
parse/0: instruction: 31
parse/0:   ingredient: {name: "3", value: 0, type: 3, properties: ["3": "boolean"]}
parse/0: instruction: 4
parse/0:   ingredient: {name: "2", value: 0, type: 1, properties: ["2": "integer"]}
parse/0:   ingredient: {name: "1", value: 0, type: 1, properties: ["1": "integer"]}
parse/0:   product: {name: "2", value: 0, type: 1, properties: ["2": "integer"]}
parse/0: instruction: 3
parse/0:   ingredient: {name: "1", value: 0, type: 1, properties: ["1": "integer"]}
parse/0:   ingredient: {name: "1", value: 0, type: 0, properties: ["1": "literal"]}
parse/0:   product: {name: "1", value: 0, type: 1, properties: ["1": "integer"]}
parse/0: instruction: 33
parse/0: label: }
parse/0: instruction: 1
parse/0:   ingredient: {name: "2", value: 0, type: 1, properties: ["2": "integer"]}
parse/0:   product: {name: "4", value: 0, type: 1, properties: ["4": "integer"]}
brace/0: 1000: push (open, 2)
brace/0: push (close, 8)
after-brace/0: recipe test-factorial
after-brace/0: copy ...
after-brace/0: copy ...
after-brace/0: equal ...
after-brace/0: jump-if 3, 3:offset
after-brace/0: multiply ...
after-brace/0: subtract ...
after-brace/0: jump -5:offset
after-brace/0: 7: {name: "", value: -5, type: , properties: ["": ]}
after-brace/0: 7: {name: "", value: -5, type: , properties: ["": ]}
after-brace/0: copy ...
new/0: routine allocated memory from 1000 to 101000
schedule/0: test-factorial
run/0: instruction test-factorial/0
run/0: ingredient 0 is 5
mem/0: storing 5 in location 1
run/0: instruction test-factorial/1
run/0: ingredient 0 is 1
mem/0: storing 1 in location 2
run/0: instruction test-factorial/3
run/0: ingredient 0 is 1
mem/0: location 1 is 5
run/0: ingredient 1 is 1
run/0: product 0 is 0
mem/0: storing 0 in location 3
run/0: instruction test-factorial/4
mem/0: location 3 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction test-factorial/5
run/0: ingredient 0 is 2
mem/0: location 2 is 1
run/0: ingredient 1 is 1
mem/0: location 1 is 5
run/0: ingredient 1 is 5
run/0: product 0 is 5
mem/0: storing 5 in location 2
run/0: instruction test-factorial/6
run/0: ingredient 0 is 1
mem/0: location 1 is 5
run/0: ingredient 1 is 1
run/0: product 0 is 4
mem/0: storing 4 in location 1
run/0: instruction test-factorial/7
run/0: ingredient 0 is -5
run/0: jumping to instruction 3
run/0: instruction test-factorial/3
run/0: ingredient 0 is 1
mem/0: location 1 is 4
run/0: ingredient 1 is 1
run/0: product 0 is 0
mem/0: storing 0 in location 3
run/0: instruction test-factorial/4
mem/0: location 3 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction test-factorial/5
run/0: ingredient 0 is 2
mem/0: location 2 is 5
run/0: ingredient 1 is 1
mem/0: location 1 is 4
run/0: ingredient 1 is 4
run/0: product 0 is 20
mem/0: storing 20 in location 2
run/0: instruction test-factorial/6
run/0: ingredient 0 is 1
mem/0: location 1 is 4
run/0: ingredient 1 is 1
run/0: product 0 is 3
mem/0: storing 3 in location 1
run/0: instruction test-factorial/7
run/0: ingredient 0 is -5
run/0: jumping to instruction 3
run/0: instruction test-factorial/3
run/0: ingredient 0 is 1
mem/0: location 1 is 3
run/0: ingredient 1 is 1
run/0: product 0 is 0
mem/0: storing 0 in location 3
run/0: instruction test-factorial/4
mem/0: location 3 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction test-factorial/5
run/0: ingredient 0 is 2
mem/0: location 2 is 20
run/0: ingredient 1 is 1
mem/0: location 1 is 3
run/0: ingredient 1 is 3
run/0: product 0 is 60
mem/0: storing 60 in location 2
run/0: instruction test-factorial/6
run/0: ingredient 0 is 1
mem/0: location 1 is 3
run/0: ingredient 1 is 1
run/0: product 0 is 2
mem/0: storing 2 in location 1
run/0: instruction test-factorial/7
run/0: ingredient 0 is -5
run/0: jumping to instruction 3
run/0: instruction test-factorial/3
run/0: ingredient 0 is 1
mem/0: location 1 is 2
run/0: ingredient 1 is 1
run/0: product 0 is 0
mem/0: storing 0 in location 3
run/0: instruction test-factorial/4
mem/0: location 3 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction test-factorial/5
run/0: ingredient 0 is 2
mem/0: location 2 is 60
run/0: ingredient 1 is 1
mem/0: location 1 is 2
run/0: ingredient 1 is 2
run/0: product 0 is 120
mem/0: storing 120 in location 2
run/0: instruction test-factorial/6
run/0: ingredient 0 is 1
mem/0: location 1 is 2
run/0: ingredient 1 is 1
run/0: product 0 is 1
mem/0: storing 1 in location 1
run/0: instruction test-factorial/7
run/0: ingredient 0 is -5
run/0: jumping to instruction 3
run/0: instruction test-factorial/3
run/0: ingredient 0 is 1
mem/0: location 1 is 1
run/0: ingredient 1 is 1
run/0: product 0 is 1
mem/0: storing 1 in location 3
run/0: instruction test-factorial/4
mem/0: location 3 is 1
run/0: ingredient 0 is 1
run/0: ingredient 1 is 
run/0: jumping to instruction 8
run/0: instruction test-factorial/9
run/0: ingredient 0 is 2
mem/0: location 2 is 120
mem/0: storing 120 in location 4