zero.golden 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. ********** source program **********
  2. fn main () -> Int {
  3. return 0;
  4. }
  5. ********** type checking **********
  6. --- step exp Int --->
  7. --- step exp Int --->
  8. ********** type checking complete **********
  9. fn main () -> Int {
  10. return 0;
  11. }
  12. ********** starting execution **********
  13. ********** initializing globals **********
  14. --- step exp () --->
  15. ********** calling main function **********
  16. {
  17. stack: top{main()<-1>}
  18. heap: fun<main>,
  19. env: main: fun<main>,
  20. }
  21. --- step exp main() --->
  22. {
  23. stack: top{main<-1> :: main()<0>}
  24. heap: fun<main>,
  25. env: main: fun<main>,
  26. }
  27. --- step exp main --->
  28. {
  29. stack: top{fun<main><-1> :: main()<0>}
  30. heap: fun<main>,
  31. env: main: fun<main>,
  32. }
  33. --- handle value fun<main> with main()<1>(fun<main>,) --->
  34. {
  35. stack: top{()<-1> :: main()<1>(fun<main>,)}
  36. heap: fun<main>,
  37. env: main: fun<main>,
  38. }
  39. --- step exp () --->
  40. {
  41. stack: top{()<-1> :: main()<1>(fun<main>,)}
  42. heap: fun<main>,
  43. env: main: fun<main>,
  44. }
  45. --- handle value () with main()<2>(fun<main>,(),) --->
  46. pattern_match((), ())
  47. {
  48. stack: main{return 0;<-1>} :: top{}
  49. heap: fun<main>,
  50. env: main: fun<main>,
  51. }
  52. --- step stmt return 0; --->
  53. {
  54. stack: main{0<-1> :: return 0;<0>} :: top{}
  55. heap: fun<main>,
  56. env: main: fun<main>,
  57. }
  58. --- step exp 0 --->
  59. {
  60. stack: main{0<-1> :: return 0;<0>} :: top{}
  61. heap: fun<main>,
  62. env: main: fun<main>,
  63. }
  64. --- handle value 0 with return 0;<1>(0,) --->
  65. {
  66. stack: top{0<-1>}
  67. heap: fun<main>,
  68. env: main: fun<main>,
  69. }
  70. result: 0