{"push_id":1277418727,"size":13,"distinct_size":13,"ref":"refs/heads/master","head":"85d3adbe7d43d9be78ee52deaab15fc324d6bd00","before":"8273be743acdd6a91f0437093a702a85f095df9f","commits":[{"sha":"2564276334f8bd9ebdc37aca1337acaa05d8f862","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Don't check the last scope when determining which variables to exclude","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/2564276334f8bd9ebdc37aca1337acaa05d8f862"},{"sha":"9c2b79144751a12fc283b0da2721236ce94aa8fb","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Just trim the length of an array when deleting the last element","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/9c2b79144751a12fc283b0da2721236ce94aa8fb"},{"sha":"7eb1dadb8f5cfac65b00bd6b671424badf76c628","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Stupid workarounds for bugs to expedite self-hosting","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/7eb1dadb8f5cfac65b00bd6b671424badf76c628"},{"sha":"0f885da17a86f980d0bc84f4ba9d02bcd8eabc25","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Workaround for self-hosting","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/0f885da17a86f980d0bc84f4ba9d02bcd8eabc25"},{"sha":"a904df6b63a91cca63a96898b42fafc2e95519f7","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Handle \"break\" in bare blocks and proc's, as well as in control\nstructures like while.\n\nThe two are very different:\n\n * In while etc. it may in general be safe to simply jump to\n   the end of the control structure.\n\n * For blocks/proc's, the break is lexical: It returns to the\n end of the expression where the block is defined. This means\n potentially exiting through multiple stack frames. We handle\n that by storing the stack frame, which is already done to\n handle *return* in similar circumstances. By iterating up\n through the stack frames and comparing the value left in\n %ebp with the stack pointer we've saved, we get \"early warning\"\n and can stop moving up the stack just when we've gotten to\n the point where the return address at the top of the stack\n will be the location right after the call linked to the block.\n\nOr that's the theory anyway - it works for my current test cases.","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/a904df6b63a91cca63a96898b42fafc2e95519f7"},{"sha":"7131c50183f3ef467d6a0e6dac26298e8555595c","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Stupid parser bug workarounds for self-hosting","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/7131c50183f3ef467d6a0e6dac26298e8555595c"},{"sha":"2caa56aea88ed9a893328195a6d78d5577e79d65","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Break out parsing of method names; move parse_require to take into account 'require's as part of more complex expressions","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/2caa56aea88ed9a893328195a6d78d5577e79d65"},{"sha":"f75d48ebe1cfbef020e9272a7d96eecf2606128b","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Propagate requests for globals etc.","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/f75d48ebe1cfbef020e9272a7d96eecf2606128b"},{"sha":"5d5219389f4db5eb9f3c8314616bb2f5f962107c","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Add break to keyword list","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/5d5219389f4db5eb9f3c8314616bb2f5f962107c"},{"sha":"d12c9590e9665e8dff64898e14ba2241dee2bf3f","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Expand yield and use __closure__; correct handling of __closure__ in env; workaround for a bug where variables are too agressively rewritten","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/d12c9590e9665e8dff64898e14ba2241dee2bf3f"},{"sha":"b6e10947b7672d4419017315e3626a8f01f3e28a","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Workaround for issues w/default initializers","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/b6e10947b7672d4419017315e3626a8f01f3e28a"},{"sha":"a85e2609d1569e62b72ad1fa9313c67734e05a30","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Handling the finer (uglier) aspects of Ruby whitespace and parentheses","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/a85e2609d1569e62b72ad1fa9313c67734e05a30"},{"sha":"85d3adbe7d43d9be78ee52deaab15fc324d6bd00","author":{"name":"Vidar Hokstad","email":"23484a26d3611118739f728caa0bfbc2e166c8d6@hokstad.com"},"message":"Extensive expansion of the self-tests to drive towards selfhosting","distinct":true,"url":"https://api.github.com/repos/vidarh/writing-a-compiler-in-ruby/commits/85d3adbe7d43d9be78ee52deaab15fc324d6bd00"}]}
{"actor":{"display_login":"vidarh"}}