mook: re-enable stack traces for %mean hints (#273)

Co-authored-by: Alex Shelkovnykov <a@ashelkov.com>
This commit is contained in:
Edward Amsden 2024-10-11 11:34:54 -05:00 committed by GitHub
parent 0950ba65af
commit 058a05c8f7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -248,20 +248,27 @@ pub mod util {
let tape = rip(stack, 3, 1, atom)?; let tape = rip(stack, 3, 1, atom)?;
T(stack, &[LEAF, tape]) T(stack, &[LEAF, tape])
} }
Right(_cell) => { Right(cell) => {
// 'tank: { 'tank: {
// let scry = null_scry(context); let scry = null_scry(&mut context.stack);
// if let Ok(tone) = mink(context, dat, cell.head(), scry) { // if +mink didn't crash...
// if let Some(cell) = tone.cell() { if let Ok(tone) = mink(context, dat, cell.head(), scry) {
// if cell.head().raw_equals(D(0)) { if let Some(tonc) = tone.cell() {
// // XX: need to check that this is // ...and +mink didn't fail or block...
// // actually a path; if tonc.head().raw_equals(D(0)) {
// // return leaf+"mook.mean" if not // ...return $tank from $tone
// break 'tank cell.tail(); // XX: need to check that this is
// } // actually a tank;
// } // return leaf+"mook.mean" if not
// } break 'tank tonc.tail();
{ }
} else {
panic!("+mink in +mook somehow returned atom {}", tone)
}
}
// This code only called when the break statement
// above doesn't trigger
let stack = &mut context.stack; let stack = &mut context.stack;
let tape = tape(stack, "####"); let tape = tape(stack, "####");
T(stack, &[LEAF, tape]) T(stack, &[LEAF, tape])