From 5fd3865f18af2ce1074c03391365004ec817adde Mon Sep 17 00:00:00 2001 From: imaqtkatt Date: Fri, 8 Mar 2024 15:28:43 -0300 Subject: [PATCH] [sc-505] Include strict and lazy results --- cspell.json | 4 ++-- tests/golden_tests.rs | 11 ++++++++--- tests/snapshots/run_file__addition.hvm.snap | 6 ++++++ tests/snapshots/run_file__adt_match.hvm.snap | 6 ++++++ .../snapshots/run_file__adt_match_wrong_tag.hvm.snap | 9 +++++++++ tests/snapshots/run_file__adt_option_and.hvm.snap | 6 ++++++ tests/snapshots/run_file__adt_wrong_tag.hvm.snap | 9 +++++++++ tests/snapshots/run_file__and.hvm.snap | 6 ++++++ tests/snapshots/run_file__bitonic_sort.hvm.snap | 6 ++++++ tests/snapshots/run_file__bitonic_sort_lam.hvm.snap | 6 ++++++ tests/snapshots/run_file__box.hvm.snap | 6 ++++++ tests/snapshots/run_file__box2.hvm.snap | 6 ++++++ tests/snapshots/run_file__callcc.hvm.snap | 6 ++++++ tests/snapshots/run_file__chars.hvm.snap | 6 ++++++ tests/snapshots/run_file__chars_forall.hvm.snap | 6 ++++++ tests/snapshots/run_file__chars_lambda.hvm.snap | 6 ++++++ tests/snapshots/run_file__def_bool_num.hvm.snap | 9 +++++++++ tests/snapshots/run_file__def_num_bool.hvm.snap | 9 +++++++++ tests/snapshots/run_file__def_tups.hvm.snap | 6 ++++++ tests/snapshots/run_file__dup_global_lam.hvm.snap | 6 ++++++ tests/snapshots/run_file__empty.hvm.snap | 6 ++++++ tests/snapshots/run_file__escape_sequences.hvm.snap | 6 ++++++ tests/snapshots/run_file__eta.hvm.snap | 6 ++++++ tests/snapshots/run_file__example.hvm.snap | 6 ++++++ tests/snapshots/run_file__exp.hvm.snap | 6 ++++++ .../run_file__extracted_match_pred.hvm.snap | 6 ++++++ .../snapshots/run_file__field_vectorization.hvm.snap | 6 ++++++ tests/snapshots/run_file__id_underscore.hvm.snap | 6 ++++++ tests/snapshots/run_file__lam_op2.hvm.snap | 6 ++++++ tests/snapshots/run_file__lam_op2_nested.hvm.snap | 6 ++++++ tests/snapshots/run_file__let_tup_readback.hvm.snap | 6 ++++++ tests/snapshots/run_file__linearize_match.hvm.snap | 6 ++++++ tests/snapshots/run_file__list_resugar.hvm.snap | 6 ++++++ tests/snapshots/run_file__list_reverse.hvm.snap | 6 ++++++ tests/snapshots/run_file__list_take.hvm.snap | 6 ++++++ tests/snapshots/run_file__list_to_tree.hvm.snap | 6 ++++++ tests/snapshots/run_file__log.hvm.snap | 8 ++++++++ tests/snapshots/run_file__match.hvm.snap | 6 ++++++ tests/snapshots/run_file__match_builtins.hvm.snap | 6 ++++++ .../run_file__match_mult_linearization.hvm.snap | 6 ++++++ .../run_file__match_num_adt_tup_parser.hvm.snap | 6 ++++++ .../run_file__match_num_explicit_bind.hvm.snap | 6 ++++++ .../run_file__match_num_num_to_char.hvm.snap | 6 ++++++ .../run_file__match_num_succ_complex.hvm.snap | 6 ++++++ tests/snapshots/run_file__match_str.hvm.snap | 6 ++++++ tests/snapshots/run_file__match_sup.hvm.snap | 6 ++++++ tests/snapshots/run_file__match_vars.hvm.snap | 6 ++++++ tests/snapshots/run_file__merge_sort.hvm.snap | 6 ++++++ tests/snapshots/run_file__names_hyphen.hvm.snap | 6 ++++++ .../run_file__names_hyphen_toplevel.hvm.snap | 11 +++++++++++ tests/snapshots/run_file__nested_let_tup.hvm.snap | 6 ++++++ .../run_file__nested_list_and_string.hvm.snap | 6 ++++++ tests/snapshots/run_file__nested_str.hvm.snap | 6 ++++++ .../run_file__num_match_missing_var.hvm.snap | 12 ++++++++++++ tests/snapshots/run_file__num_pred.hvm.snap | 6 ++++++ tests/snapshots/run_file__override_list_ctr.hvm.snap | 7 +++++++ tests/snapshots/run_file__override_str_ctr.hvm.snap | 7 +++++++ tests/snapshots/run_file__pred.hvm.snap | 6 ++++++ tests/snapshots/run_file__print.hvm.snap | 7 +++++++ tests/snapshots/run_file__queue.hvm.snap | 6 ++++++ tests/snapshots/run_file__radix_sort_ctr.hvm.snap | 6 ++++++ .../snapshots/run_file__readback_hvm1_main.hvm.snap | 8 ++++++++ .../run_file__readback_list_other_ctr.hvm.snap | 6 ++++++ .../run_file__recursive_combinator.hvm.snap | 6 ++++++ .../run_file__recursive_combinator_nested.hvm.snap | 6 ++++++ .../run_file__recursive_match_native.hvm.snap | 6 ++++++ tests/snapshots/run_file__ref_resolution.hvm.snap | 6 ++++++ .../run_file__repeated_name_truncation.hvm.snap | 6 ++++++ tests/snapshots/run_file__scopeless_discard.hvm.snap | 6 ++++++ tests/snapshots/run_file__str_backtick.hvm.snap | 6 ++++++ tests/snapshots/run_file__str_concat.hvm.snap | 6 ++++++ tests/snapshots/run_file__str_inc.hvm.snap | 6 ++++++ tests/snapshots/run_file__str_inc_eta.hvm.snap | 6 ++++++ tests/snapshots/run_file__str_len.hvm.snap | 6 ++++++ tests/snapshots/run_file__sum_tree.hvm.snap | 6 ++++++ tests/snapshots/run_file__sup_app.hvm.snap | 6 ++++++ .../snapshots/run_file__sup_reconstruction.hvm.snap | 6 ++++++ .../snapshots/run_file__superposed_is_even.hvm.snap | 6 ++++++ tests/snapshots/run_file__tagged_lam.hvm.snap | 6 ++++++ tests/snapshots/run_file__tup_list_strings.hvm.snap | 6 ++++++ .../snapshots/run_file__tup_reconstruction.hvm.snap | 6 ++++++ tests/snapshots/run_file__tuple_rots.hvm.snap | 6 ++++++ tests/snapshots/run_file__unaplied_str.hvm.snap | 6 ++++++ .../snapshots/run_file__unscoped_never_used.hvm.snap | 8 ++++++++ tests/snapshots/run_file__unused_dup_var.hvm.snap | 6 ++++++ tests/snapshots/run_file__world.hvm.snap | 6 ++++++ tests/snapshots/run_file__wrong_string.hvm.snap | 6 ++++++ 87 files changed, 552 insertions(+), 5 deletions(-) diff --git a/cspell.json b/cspell.json index 335a8e11..6648ab40 100644 --- a/cspell.json +++ b/cspell.json @@ -13,6 +13,7 @@ "chumsky", "combinators", "ctrs", + "Dall", "datatypes", "desugared", "desugars", @@ -49,9 +50,8 @@ "oprune", "oref", "postcondition", - "redex", - "redexes", "readback", + "redex", "redexes", "resugar", "resugared", diff --git a/tests/golden_tests.rs b/tests/golden_tests.rs index 34367892..3a2fe6be 100644 --- a/tests/golden_tests.rs +++ b/tests/golden_tests.rs @@ -48,7 +48,12 @@ fn run_single_golden_test( let file_path = format!("{}{}", &TESTS_PATH[1 ..], file_name); let file_path = Path::new(&file_path); - let results = run.iter().map(|x| x(&code, file_path).unwrap_or_else(|err| err.to_string())); + let mut results: HashMap<&Path, Vec> = HashMap::new(); + for fun in run { + let result = fun(&code, file_path).unwrap_or_else(|err| err.to_string()); + results.entry(file_path).or_default().push(result); + } + let results = results.into_values().map(|v| v.join("\n")).collect_vec(); let mut settings = insta::Settings::clone_current(); settings.set_prepend_module_to_snapshot(false); @@ -151,7 +156,7 @@ fn run_file() { .output() .expect("Run process"); - Ok(format_output(output)) + Ok(format!("Lazy mode:\n{}", format_output(output))) }), (&|_code, path| { let output = std::process::Command::new(env!("CARGO_BIN_EXE_hvml")) @@ -159,7 +164,7 @@ fn run_file() { .output() .expect("Run process"); - Ok(format_output(output)) + Ok(format!("Strict mode:\n{}", format_output(output))) }), ]) } diff --git a/tests/snapshots/run_file__addition.hvm.snap b/tests/snapshots/run_file__addition.hvm.snap index a28545db..265485b5 100644 --- a/tests/snapshots/run_file__addition.hvm.snap +++ b/tests/snapshots/run_file__addition.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/addition.hvm --- +Lazy mode: + +10 + +Strict mode: + 10 diff --git a/tests/snapshots/run_file__adt_match.hvm.snap b/tests/snapshots/run_file__adt_match.hvm.snap index 6a989752..7dae34ed 100644 --- a/tests/snapshots/run_file__adt_match.hvm.snap +++ b/tests/snapshots/run_file__adt_match.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/adt_match.hvm --- +Lazy mode: + +(Some 2) + +Strict mode: + (Some 2) diff --git a/tests/snapshots/run_file__adt_match_wrong_tag.hvm.snap b/tests/snapshots/run_file__adt_match_wrong_tag.hvm.snap index 09221043..1ab6c3b6 100644 --- a/tests/snapshots/run_file__adt_match_wrong_tag.hvm.snap +++ b/tests/snapshots/run_file__adt_match_wrong_tag.hvm.snap @@ -2,6 +2,15 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/adt_match_wrong_tag.hvm --- +Lazy mode: + +Readback Warning: +Unexpected tag found during Adt readback, expected '#Option', but found '#wrong_tag' +Invalid Adt Match +λa match a { (Some Some.val): #Option (#wrong_tag λb b Some.val); (None): * } + +Strict mode: + Readback Warning: Unexpected tag found during Adt readback, expected '#Option', but found '#wrong_tag' Invalid Adt Match diff --git a/tests/snapshots/run_file__adt_option_and.hvm.snap b/tests/snapshots/run_file__adt_option_and.hvm.snap index 87118776..fc3dc86d 100644 --- a/tests/snapshots/run_file__adt_option_and.hvm.snap +++ b/tests/snapshots/run_file__adt_option_and.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/adt_option_and.hvm --- +Lazy mode: + +λa λb match a { (Some c): match b { (Some d): (Some (c, d)); (None): None }; (None): None } + +Strict mode: + λa match a { (Some b): λc (match c { (Some d): λe (Some (e, d)); (None): λ* None } b); (None): λ* None } diff --git a/tests/snapshots/run_file__adt_wrong_tag.hvm.snap b/tests/snapshots/run_file__adt_wrong_tag.hvm.snap index f1508817..19e1bcf2 100644 --- a/tests/snapshots/run_file__adt_wrong_tag.hvm.snap +++ b/tests/snapshots/run_file__adt_wrong_tag.hvm.snap @@ -2,6 +2,15 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/adt_wrong_tag.hvm --- +Lazy mode: + +Readback Warning: +Unexpected tag found during Adt readback, expected '#Option', but found '#wrong_tag' +Invalid Adt Match +λa match a { (Some Some.val): #Option (#wrong_tag λb b Some.val); (None): * } + +Strict mode: + Readback Warning: Unexpected tag found during Adt readback, expected '#Option', but found '#wrong_tag' Invalid Adt Match diff --git a/tests/snapshots/run_file__and.hvm.snap b/tests/snapshots/run_file__and.hvm.snap index ca53f0af..4f22b55a 100644 --- a/tests/snapshots/run_file__and.hvm.snap +++ b/tests/snapshots/run_file__and.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/and.hvm --- +Lazy mode: + +false + +Strict mode: + false diff --git a/tests/snapshots/run_file__bitonic_sort.hvm.snap b/tests/snapshots/run_file__bitonic_sort.hvm.snap index bff521ce..0d4451d1 100644 --- a/tests/snapshots/run_file__bitonic_sort.hvm.snap +++ b/tests/snapshots/run_file__bitonic_sort.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/bitonic_sort.hvm --- +Lazy mode: + +120 + +Strict mode: + 120 diff --git a/tests/snapshots/run_file__bitonic_sort_lam.hvm.snap b/tests/snapshots/run_file__bitonic_sort_lam.hvm.snap index 31e3915a..43bb6d4a 100644 --- a/tests/snapshots/run_file__bitonic_sort_lam.hvm.snap +++ b/tests/snapshots/run_file__bitonic_sort_lam.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/bitonic_sort_lam.hvm --- +Lazy mode: + +32640 + +Strict mode: + 32640 diff --git a/tests/snapshots/run_file__box.hvm.snap b/tests/snapshots/run_file__box.hvm.snap index fc649c62..58d180f2 100644 --- a/tests/snapshots/run_file__box.hvm.snap +++ b/tests/snapshots/run_file__box.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/box.hvm --- +Lazy mode: + +(Box 10) + +Strict mode: + (Box 10) diff --git a/tests/snapshots/run_file__box2.hvm.snap b/tests/snapshots/run_file__box2.hvm.snap index 2c7beaae..b895a219 100644 --- a/tests/snapshots/run_file__box2.hvm.snap +++ b/tests/snapshots/run_file__box2.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/box2.hvm --- +Lazy mode: + +(Box 4) + +Strict mode: + (Box 4) diff --git a/tests/snapshots/run_file__callcc.hvm.snap b/tests/snapshots/run_file__callcc.hvm.snap index 9ffd5d9a..d4b24a83 100644 --- a/tests/snapshots/run_file__callcc.hvm.snap +++ b/tests/snapshots/run_file__callcc.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/callcc.hvm --- +Lazy mode: + +52 + +Strict mode: + 52 diff --git a/tests/snapshots/run_file__chars.hvm.snap b/tests/snapshots/run_file__chars.hvm.snap index 6ac7a2ff..b8826b41 100644 --- a/tests/snapshots/run_file__chars.hvm.snap +++ b/tests/snapshots/run_file__chars.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/chars.hvm --- +Lazy mode: + +"ሴ!7" + +Strict mode: + "ሴ!7" diff --git a/tests/snapshots/run_file__chars_forall.hvm.snap b/tests/snapshots/run_file__chars_forall.hvm.snap index 4b1a0b8d..d3b73004 100644 --- a/tests/snapshots/run_file__chars_forall.hvm.snap +++ b/tests/snapshots/run_file__chars_forall.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/chars_forall.hvm --- +Lazy mode: + +8704 + +Strict mode: + 8704 diff --git a/tests/snapshots/run_file__chars_lambda.hvm.snap b/tests/snapshots/run_file__chars_lambda.hvm.snap index 0a8d6b3a..0dad4773 100644 --- a/tests/snapshots/run_file__chars_lambda.hvm.snap +++ b/tests/snapshots/run_file__chars_lambda.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/chars_lambda.hvm --- +Lazy mode: + +955 + +Strict mode: + 955 diff --git a/tests/snapshots/run_file__def_bool_num.hvm.snap b/tests/snapshots/run_file__def_bool_num.hvm.snap index ff12142c..fa131680 100644 --- a/tests/snapshots/run_file__def_bool_num.hvm.snap +++ b/tests/snapshots/run_file__def_bool_num.hvm.snap @@ -2,7 +2,16 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/def_bool_num.hvm --- +Lazy mode: + In definition 'go': Non-exhaustive pattern matching. Hint: Case '+' not covered. + + +Strict mode: + +In definition 'go': + Non-exhaustive pattern matching. Hint: + Case '+' not covered. diff --git a/tests/snapshots/run_file__def_num_bool.hvm.snap b/tests/snapshots/run_file__def_num_bool.hvm.snap index 3ec53525..b5306ee0 100644 --- a/tests/snapshots/run_file__def_num_bool.hvm.snap +++ b/tests/snapshots/run_file__def_num_bool.hvm.snap @@ -2,7 +2,16 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/def_num_bool.hvm --- +Lazy mode: + In definition 'go': Non-exhaustive pattern matching. Hint: Case '+' not covered. + + +Strict mode: + +In definition 'go': + Non-exhaustive pattern matching. Hint: + Case '+' not covered. diff --git a/tests/snapshots/run_file__def_tups.hvm.snap b/tests/snapshots/run_file__def_tups.hvm.snap index befee56f..0d74fb81 100644 --- a/tests/snapshots/run_file__def_tups.hvm.snap +++ b/tests/snapshots/run_file__def_tups.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/def_tups.hvm --- +Lazy mode: + +15 + +Strict mode: + 15 diff --git a/tests/snapshots/run_file__dup_global_lam.hvm.snap b/tests/snapshots/run_file__dup_global_lam.hvm.snap index 072ad48b..ef9e21da 100644 --- a/tests/snapshots/run_file__dup_global_lam.hvm.snap +++ b/tests/snapshots/run_file__dup_global_lam.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/dup_global_lam.hvm --- +Lazy mode: + +λa a + +Strict mode: + λa a diff --git a/tests/snapshots/run_file__empty.hvm.snap b/tests/snapshots/run_file__empty.hvm.snap index 70906a49..23d2f6f0 100644 --- a/tests/snapshots/run_file__empty.hvm.snap +++ b/tests/snapshots/run_file__empty.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/empty.hvm --- +Lazy mode: +File has no 'main' definition. + + + +Strict mode: File has no 'main' definition. diff --git a/tests/snapshots/run_file__escape_sequences.hvm.snap b/tests/snapshots/run_file__escape_sequences.hvm.snap index e0ab000c..890d8e37 100644 --- a/tests/snapshots/run_file__escape_sequences.hvm.snap +++ b/tests/snapshots/run_file__escape_sequences.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/escape_sequences.hvm --- +Lazy mode: + +("\n\r\t\0\"'\u{afe}`", "\n\r\t\0\"'\u{afe}`") + +Strict mode: + ("\n\r\t\0\"'\u{afe}`", "\n\r\t\0\"'\u{afe}`") diff --git a/tests/snapshots/run_file__eta.hvm.snap b/tests/snapshots/run_file__eta.hvm.snap index 93aecc7d..6e458d74 100644 --- a/tests/snapshots/run_file__eta.hvm.snap +++ b/tests/snapshots/run_file__eta.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/eta.hvm --- +Lazy mode: + +λa a + +Strict mode: + λa a diff --git a/tests/snapshots/run_file__example.hvm.snap b/tests/snapshots/run_file__example.hvm.snap index 6ffc0b95..e5e068f6 100644 --- a/tests/snapshots/run_file__example.hvm.snap +++ b/tests/snapshots/run_file__example.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/example.hvm --- +Lazy mode: + +8 + +Strict mode: + 8 diff --git a/tests/snapshots/run_file__exp.hvm.snap b/tests/snapshots/run_file__exp.hvm.snap index a931e70c..8c0137a3 100644 --- a/tests/snapshots/run_file__exp.hvm.snap +++ b/tests/snapshots/run_file__exp.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/exp.hvm --- +Lazy mode: + +λa λb (a (a (a (a b)))) + +Strict mode: + λa λb (a (a (a (a b)))) diff --git a/tests/snapshots/run_file__extracted_match_pred.hvm.snap b/tests/snapshots/run_file__extracted_match_pred.hvm.snap index 2ea896c7..3aacf25e 100644 --- a/tests/snapshots/run_file__extracted_match_pred.hvm.snap +++ b/tests/snapshots/run_file__extracted_match_pred.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/extracted_match_pred.hvm --- +Lazy mode: + +0 + +Strict mode: + 0 diff --git a/tests/snapshots/run_file__field_vectorization.hvm.snap b/tests/snapshots/run_file__field_vectorization.hvm.snap index aadcf4a6..8505ee3f 100644 --- a/tests/snapshots/run_file__field_vectorization.hvm.snap +++ b/tests/snapshots/run_file__field_vectorization.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/field_vectorization.hvm --- +Lazy mode: + +(Cons T (Cons T (Cons F (Cons T Nil)))) + +Strict mode: + (Cons T (Cons T (Cons F (Cons T Nil)))) diff --git a/tests/snapshots/run_file__id_underscore.hvm.snap b/tests/snapshots/run_file__id_underscore.hvm.snap index a42bf161..7e996bb4 100644 --- a/tests/snapshots/run_file__id_underscore.hvm.snap +++ b/tests/snapshots/run_file__id_underscore.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/id_underscore.hvm --- +Lazy mode: + +(2, 3) + +Strict mode: + (2, 3) diff --git a/tests/snapshots/run_file__lam_op2.hvm.snap b/tests/snapshots/run_file__lam_op2.hvm.snap index 014db88c..6dadaf1d 100644 --- a/tests/snapshots/run_file__lam_op2.hvm.snap +++ b/tests/snapshots/run_file__lam_op2.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/lam_op2.hvm --- +Lazy mode: + +λa (+ a 2) + +Strict mode: + λa (+ a 2) diff --git a/tests/snapshots/run_file__lam_op2_nested.hvm.snap b/tests/snapshots/run_file__lam_op2_nested.hvm.snap index 64183549..a8dcedf5 100644 --- a/tests/snapshots/run_file__lam_op2_nested.hvm.snap +++ b/tests/snapshots/run_file__lam_op2_nested.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/lam_op2_nested.hvm --- +Lazy mode: + +λa (+ (* a a) (+ (+ a 2) 3)) + +Strict mode: + λa (+ (* a a) (+ (+ a 2) 3)) diff --git a/tests/snapshots/run_file__let_tup_readback.hvm.snap b/tests/snapshots/run_file__let_tup_readback.hvm.snap index 85d3047c..fb0b064a 100644 --- a/tests/snapshots/run_file__let_tup_readback.hvm.snap +++ b/tests/snapshots/run_file__let_tup_readback.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/let_tup_readback.hvm --- +Lazy mode: + +λa let (b, c) = a; (b c) + +Strict mode: + λa let (b, c) = a; (b c) diff --git a/tests/snapshots/run_file__linearize_match.hvm.snap b/tests/snapshots/run_file__linearize_match.hvm.snap index 878af862..0167d008 100644 --- a/tests/snapshots/run_file__linearize_match.hvm.snap +++ b/tests/snapshots/run_file__linearize_match.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/linearize_match.hvm --- +Lazy mode: + +λa match a { 0: λb b; 1+c: λd (+ c d) } + +Strict mode: + λa match a { 0: λb b; 1+c: λd (+ c d) } diff --git a/tests/snapshots/run_file__list_resugar.hvm.snap b/tests/snapshots/run_file__list_resugar.hvm.snap index 34e4ed4a..355f9af5 100644 --- a/tests/snapshots/run_file__list_resugar.hvm.snap +++ b/tests/snapshots/run_file__list_resugar.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/list_resugar.hvm --- +Lazy mode: + +[42, [λd d]] + +Strict mode: + [42, [λd d]] diff --git a/tests/snapshots/run_file__list_reverse.hvm.snap b/tests/snapshots/run_file__list_reverse.hvm.snap index 28ff606b..355dd6f2 100644 --- a/tests/snapshots/run_file__list_reverse.hvm.snap +++ b/tests/snapshots/run_file__list_reverse.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/list_reverse.hvm --- +Lazy mode: + +(cons 1 (cons 2 (cons 3 nil))) + +Strict mode: + (cons 1 (cons 2 (cons 3 nil))) diff --git a/tests/snapshots/run_file__list_take.hvm.snap b/tests/snapshots/run_file__list_take.hvm.snap index 615756cc..110530e5 100644 --- a/tests/snapshots/run_file__list_take.hvm.snap +++ b/tests/snapshots/run_file__list_take.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/list_take.hvm --- +Lazy mode: + +[3, 2] + +Strict mode: + [3, 2] diff --git a/tests/snapshots/run_file__list_to_tree.hvm.snap b/tests/snapshots/run_file__list_to_tree.hvm.snap index 291745da..b79cdddb 100644 --- a/tests/snapshots/run_file__list_to_tree.hvm.snap +++ b/tests/snapshots/run_file__list_to_tree.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/list_to_tree.hvm --- +Lazy mode: + +((1, 2), (3, (4, 5))) + +Strict mode: + ((1, 2), (3, (4, 5))) diff --git a/tests/snapshots/run_file__log.hvm.snap b/tests/snapshots/run_file__log.hvm.snap index d0e32ca0..0188ec6f 100644 --- a/tests/snapshots/run_file__log.hvm.snap +++ b/tests/snapshots/run_file__log.hvm.snap @@ -2,6 +2,14 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/log.hvm --- +Lazy mode: + +59 +(Some "Hello world") +"Hi" + +Strict mode: + 59 (Some "Hello world") "Hi" diff --git a/tests/snapshots/run_file__match.hvm.snap b/tests/snapshots/run_file__match.hvm.snap index dbc27512..8b808fdb 100644 --- a/tests/snapshots/run_file__match.hvm.snap +++ b/tests/snapshots/run_file__match.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match.hvm --- +Lazy mode: + +λ* λa a + +Strict mode: + λ* λa a diff --git a/tests/snapshots/run_file__match_builtins.hvm.snap b/tests/snapshots/run_file__match_builtins.hvm.snap index b0514cf8..2a738f04 100644 --- a/tests/snapshots/run_file__match_builtins.hvm.snap +++ b/tests/snapshots/run_file__match_builtins.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_builtins.hvm --- +Lazy mode: + +("ello", "world") + +Strict mode: + ("ello", "world") diff --git a/tests/snapshots/run_file__match_mult_linearization.hvm.snap b/tests/snapshots/run_file__match_mult_linearization.hvm.snap index 582ff27c..7bce6a30 100644 --- a/tests/snapshots/run_file__match_mult_linearization.hvm.snap +++ b/tests/snapshots/run_file__match_mult_linearization.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_mult_linearization.hvm --- +Lazy mode: + +λa match a { 0: λb λc λd (+ (+ b c) d); 1+e: λf λg λh (+ (+ (+ e f) g) h) } + +Strict mode: + λa match a { 0: λb λc λd (+ (+ b c) d); 1+e: λf λg λh (+ (+ (+ e f) g) h) } diff --git a/tests/snapshots/run_file__match_num_adt_tup_parser.hvm.snap b/tests/snapshots/run_file__match_num_adt_tup_parser.hvm.snap index c775db59..58db6534 100644 --- a/tests/snapshots/run_file__match_num_adt_tup_parser.hvm.snap +++ b/tests/snapshots/run_file__match_num_adt_tup_parser.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_num_adt_tup_parser.hvm --- +Lazy mode: + +(40, (Err ("+", *))) + +Strict mode: + (40, (Err ("+", *))) diff --git a/tests/snapshots/run_file__match_num_explicit_bind.hvm.snap b/tests/snapshots/run_file__match_num_explicit_bind.hvm.snap index 8156afe4..5c738334 100644 --- a/tests/snapshots/run_file__match_num_explicit_bind.hvm.snap +++ b/tests/snapshots/run_file__match_num_explicit_bind.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_num_explicit_bind.hvm --- +Lazy mode: + +3 + +Strict mode: + 3 diff --git a/tests/snapshots/run_file__match_num_num_to_char.hvm.snap b/tests/snapshots/run_file__match_num_num_to_char.hvm.snap index c1c5bafb..50fc22a5 100644 --- a/tests/snapshots/run_file__match_num_num_to_char.hvm.snap +++ b/tests/snapshots/run_file__match_num_num_to_char.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_num_num_to_char.hvm --- +Lazy mode: + +(([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1152921504606846975]), [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 0]) + +Strict mode: + (([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1152921504606846975]), [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 0]) diff --git a/tests/snapshots/run_file__match_num_succ_complex.hvm.snap b/tests/snapshots/run_file__match_num_succ_complex.hvm.snap index 85f6bf3e..0466129c 100644 --- a/tests/snapshots/run_file__match_num_succ_complex.hvm.snap +++ b/tests/snapshots/run_file__match_num_succ_complex.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_num_succ_complex.hvm --- +Lazy mode: + +[[5, 5, 0, 0, 0, 6], [5, 5, 0, 0, 0, 6], [5, 5, 0, 0, 0, 6]] + +Strict mode: + [[5, 5, 0, 0, 0, 6], [5, 5, 0, 0, 0, 6], [5, 5, 0, 0, 0, 6]] diff --git a/tests/snapshots/run_file__match_str.hvm.snap b/tests/snapshots/run_file__match_str.hvm.snap index 984f5b32..9178c385 100644 --- a/tests/snapshots/run_file__match_str.hvm.snap +++ b/tests/snapshots/run_file__match_str.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_str.hvm --- +Lazy mode: + +[2, 2, 1, 0, 0, 0] + +Strict mode: + [2, 2, 1, 0, 0, 0] diff --git a/tests/snapshots/run_file__match_sup.hvm.snap b/tests/snapshots/run_file__match_sup.hvm.snap index 2c839bd2..c4bab1be 100644 --- a/tests/snapshots/run_file__match_sup.hvm.snap +++ b/tests/snapshots/run_file__match_sup.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_sup.hvm --- +Lazy mode: + +#a{1 2} + +Strict mode: + #a{1 2} diff --git a/tests/snapshots/run_file__match_vars.hvm.snap b/tests/snapshots/run_file__match_vars.hvm.snap index a58d8df9..9b8f4de9 100644 --- a/tests/snapshots/run_file__match_vars.hvm.snap +++ b/tests/snapshots/run_file__match_vars.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/match_vars.hvm --- +Lazy mode: + +1 + +Strict mode: + 1 diff --git a/tests/snapshots/run_file__merge_sort.hvm.snap b/tests/snapshots/run_file__merge_sort.hvm.snap index c9ac1883..d3b1fdbd 100644 --- a/tests/snapshots/run_file__merge_sort.hvm.snap +++ b/tests/snapshots/run_file__merge_sort.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/merge_sort.hvm --- +Lazy mode: + +120 + +Strict mode: + 120 diff --git a/tests/snapshots/run_file__names_hyphen.hvm.snap b/tests/snapshots/run_file__names_hyphen.hvm.snap index c1c16fee..bae51f71 100644 --- a/tests/snapshots/run_file__names_hyphen.hvm.snap +++ b/tests/snapshots/run_file__names_hyphen.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/names_hyphen.hvm --- +Lazy mode: + +1 + +Strict mode: + 1 diff --git a/tests/snapshots/run_file__names_hyphen_toplevel.hvm.snap b/tests/snapshots/run_file__names_hyphen_toplevel.hvm.snap index 8e44cdd2..1e3fa596 100644 --- a/tests/snapshots/run_file__names_hyphen_toplevel.hvm.snap +++ b/tests/snapshots/run_file__names_hyphen_toplevel.hvm.snap @@ -2,6 +2,17 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/names_hyphen_toplevel.hvm --- +Lazy mode: +At tests/golden_tests/run_file/names_hyphen_toplevel.hvm:1:1: Names with '-' are not supported at top level. + 1 | this-is-not-allowed = 1 +At tests/golden_tests/run_file/names_hyphen_toplevel.hvm:3:6: Names with '-' are not supported at top level. + 3 | data Foo-Bar = Baz-Qux +At tests/golden_tests/run_file/names_hyphen_toplevel.hvm:3:16: Names with '-' are not supported at top level. + 3 | data Foo-Bar = Baz-Qux + + + +Strict mode: At tests/golden_tests/run_file/names_hyphen_toplevel.hvm:1:1: Names with '-' are not supported at top level.  1 | this-is-not-allowed = 1 At tests/golden_tests/run_file/names_hyphen_toplevel.hvm:3:6: Names with '-' are not supported at top level. diff --git a/tests/snapshots/run_file__nested_let_tup.hvm.snap b/tests/snapshots/run_file__nested_let_tup.hvm.snap index 6e4f5e6e..1e5de35b 100644 --- a/tests/snapshots/run_file__nested_let_tup.hvm.snap +++ b/tests/snapshots/run_file__nested_let_tup.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/nested_let_tup.hvm --- +Lazy mode: + +2 + +Strict mode: + 2 diff --git a/tests/snapshots/run_file__nested_list_and_string.hvm.snap b/tests/snapshots/run_file__nested_list_and_string.hvm.snap index 801d5204..b5d14954 100644 --- a/tests/snapshots/run_file__nested_list_and_string.hvm.snap +++ b/tests/snapshots/run_file__nested_list_and_string.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/nested_list_and_string.hvm --- +Lazy mode: + +λa [a, (*, 2), (String.cons [7, "1234", 9] (String.cons a (String.cons * "42")))] + +Strict mode: + λa [a, (*, 2), (String.cons [7, "1234", 9] (String.cons a (String.cons * "42")))] diff --git a/tests/snapshots/run_file__nested_str.hvm.snap b/tests/snapshots/run_file__nested_str.hvm.snap index 338226be..2dba54e8 100644 --- a/tests/snapshots/run_file__nested_str.hvm.snap +++ b/tests/snapshots/run_file__nested_str.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/nested_str.hvm --- +Lazy mode: + +((String.cons "a" String.nil), ((String.cons 97 (String.cons "bc" String.nil)), ((String.cons "ab" "c"), (String.cons "ab" (String.cons "cd" String.nil))))) + +Strict mode: + ((String.cons "a" String.nil), ((String.cons 97 (String.cons "bc" String.nil)), ((String.cons "ab" "c"), (String.cons "ab" (String.cons "cd" String.nil))))) diff --git a/tests/snapshots/run_file__num_match_missing_var.hvm.snap b/tests/snapshots/run_file__num_match_missing_var.hvm.snap index 5051c5a1..0b121f2f 100644 --- a/tests/snapshots/run_file__num_match_missing_var.hvm.snap +++ b/tests/snapshots/run_file__num_match_missing_var.hvm.snap @@ -2,6 +2,18 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/num_match_missing_var.hvm --- +Lazy mode: + +In definition 'if': + Non-exhaustive pattern matching. Hint: + Case '+' not covered. +In definition 'if4': + Expected a sequence of incrementing numbers ending with '1+', found '1'. + + + +Strict mode: + In definition 'if': Non-exhaustive pattern matching. Hint: Case '+' not covered. diff --git a/tests/snapshots/run_file__num_pred.hvm.snap b/tests/snapshots/run_file__num_pred.hvm.snap index 6a6c6936..97fb181a 100644 --- a/tests/snapshots/run_file__num_pred.hvm.snap +++ b/tests/snapshots/run_file__num_pred.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/num_pred.hvm --- +Lazy mode: + +42 + +Strict mode: + 42 diff --git a/tests/snapshots/run_file__override_list_ctr.hvm.snap b/tests/snapshots/run_file__override_list_ctr.hvm.snap index 9eadb563..041fb08f 100644 --- a/tests/snapshots/run_file__override_list_ctr.hvm.snap +++ b/tests/snapshots/run_file__override_list_ctr.hvm.snap @@ -2,5 +2,12 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/override_list_ctr.hvm --- +Lazy mode: +At tests/golden_tests/run_file/override_list_ctr.hvm:2:5: List.nil is a built-in constructor and should not be overridden. + 2 | = List.nil + + + +Strict mode: At tests/golden_tests/run_file/override_list_ctr.hvm:2:5: List.nil is a built-in constructor and should not be overridden.  2 | = List.nil diff --git a/tests/snapshots/run_file__override_str_ctr.hvm.snap b/tests/snapshots/run_file__override_str_ctr.hvm.snap index fb7c1517..bf2b3b94 100644 --- a/tests/snapshots/run_file__override_str_ctr.hvm.snap +++ b/tests/snapshots/run_file__override_str_ctr.hvm.snap @@ -2,5 +2,12 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/override_str_ctr.hvm --- +Lazy mode: +At tests/golden_tests/run_file/override_str_ctr.hvm:2:5: String.cons is a built-in constructor and should not be overridden. + 2 | = (String.cons any) + + + +Strict mode: At tests/golden_tests/run_file/override_str_ctr.hvm:2:5: String.cons is a built-in constructor and should not be overridden.  2 | = (String.cons any) diff --git a/tests/snapshots/run_file__pred.hvm.snap b/tests/snapshots/run_file__pred.hvm.snap index 0fe4e970..31a8d81b 100644 --- a/tests/snapshots/run_file__pred.hvm.snap +++ b/tests/snapshots/run_file__pred.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/pred.hvm --- +Lazy mode: + +2 + +Strict mode: + 2 diff --git a/tests/snapshots/run_file__print.hvm.snap b/tests/snapshots/run_file__print.hvm.snap index 04804d06..d62cde7c 100644 --- a/tests/snapshots/run_file__print.hvm.snap +++ b/tests/snapshots/run_file__print.hvm.snap @@ -2,5 +2,12 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/print.hvm --- +Lazy mode: + +hello world +"goodbye world" + +Strict mode: + hello world "goodbye world" diff --git a/tests/snapshots/run_file__queue.hvm.snap b/tests/snapshots/run_file__queue.hvm.snap index 3e30f7bc..ad1211c2 100644 --- a/tests/snapshots/run_file__queue.hvm.snap +++ b/tests/snapshots/run_file__queue.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/queue.hvm --- +Lazy mode: + +λa λ* (a 1 λb λ* (b 2 λc λ* (c 3 λ* λd d))) + +Strict mode: + λa λ* (a 1 λb λ* (b 2 λc λ* (c 3 λ* λd d))) diff --git a/tests/snapshots/run_file__radix_sort_ctr.hvm.snap b/tests/snapshots/run_file__radix_sort_ctr.hvm.snap index 151b7569..1e11871d 100644 --- a/tests/snapshots/run_file__radix_sort_ctr.hvm.snap +++ b/tests/snapshots/run_file__radix_sort_ctr.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/radix_sort_ctr.hvm --- +Lazy mode: + +120 + +Strict mode: + 120 diff --git a/tests/snapshots/run_file__readback_hvm1_main.hvm.snap b/tests/snapshots/run_file__readback_hvm1_main.hvm.snap index d51d808f..47c5990f 100644 --- a/tests/snapshots/run_file__readback_hvm1_main.hvm.snap +++ b/tests/snapshots/run_file__readback_hvm1_main.hvm.snap @@ -2,6 +2,14 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/readback_hvm1_main.hvm --- +Lazy mode: + In definition 'Main': Main definition can't be referenced inside the program. + + +Strict mode: + +In definition 'Main': + Main definition can't be referenced inside the program. diff --git a/tests/snapshots/run_file__readback_list_other_ctr.hvm.snap b/tests/snapshots/run_file__readback_list_other_ctr.hvm.snap index e696b009..876cae26 100644 --- a/tests/snapshots/run_file__readback_list_other_ctr.hvm.snap +++ b/tests/snapshots/run_file__readback_list_other_ctr.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/readback_list_other_ctr.hvm --- +Lazy mode: + +(List.cons (String.cons 97 (pair 98 "c")) (List.cons 1 (pair 2 [3, 4]))) + +Strict mode: + (List.cons (String.cons 97 (pair 98 "c")) (List.cons 1 (pair 2 [3, 4]))) diff --git a/tests/snapshots/run_file__recursive_combinator.hvm.snap b/tests/snapshots/run_file__recursive_combinator.hvm.snap index fde141c8..63cdee86 100644 --- a/tests/snapshots/run_file__recursive_combinator.hvm.snap +++ b/tests/snapshots/run_file__recursive_combinator.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/recursive_combinator.hvm --- +Lazy mode: + +0 + +Strict mode: + 0 diff --git a/tests/snapshots/run_file__recursive_combinator_nested.hvm.snap b/tests/snapshots/run_file__recursive_combinator_nested.hvm.snap index 6ef35d55..5c9172ab 100644 --- a/tests/snapshots/run_file__recursive_combinator_nested.hvm.snap +++ b/tests/snapshots/run_file__recursive_combinator_nested.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/recursive_combinator_nested.hvm --- +Lazy mode: + +#a{8 0} + +Strict mode: + #a{8 0} diff --git a/tests/snapshots/run_file__recursive_match_native.hvm.snap b/tests/snapshots/run_file__recursive_match_native.hvm.snap index 0fbf46b6..1e9c437f 100644 --- a/tests/snapshots/run_file__recursive_match_native.hvm.snap +++ b/tests/snapshots/run_file__recursive_match_native.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/recursive_match_native.hvm --- +Lazy mode: + +512 + +Strict mode: + 512 diff --git a/tests/snapshots/run_file__ref_resolution.hvm.snap b/tests/snapshots/run_file__ref_resolution.hvm.snap index a176729c..b5f19d5e 100644 --- a/tests/snapshots/run_file__ref_resolution.hvm.snap +++ b/tests/snapshots/run_file__ref_resolution.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/ref_resolution.hvm --- +Lazy mode: + +42 + +Strict mode: + 42 diff --git a/tests/snapshots/run_file__repeated_name_truncation.hvm.snap b/tests/snapshots/run_file__repeated_name_truncation.hvm.snap index 86509181..9db6a304 100644 --- a/tests/snapshots/run_file__repeated_name_truncation.hvm.snap +++ b/tests/snapshots/run_file__repeated_name_truncation.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/repeated_name_truncation.hvm --- +Lazy mode: + +λ* 2 + +Strict mode: + λ* 2 diff --git a/tests/snapshots/run_file__scopeless_discard.hvm.snap b/tests/snapshots/run_file__scopeless_discard.hvm.snap index 637443ba..17b8bb58 100644 --- a/tests/snapshots/run_file__scopeless_discard.hvm.snap +++ b/tests/snapshots/run_file__scopeless_discard.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/scopeless_discard.hvm --- +Lazy mode: + +(2, *) + +Strict mode: + (2, *) diff --git a/tests/snapshots/run_file__str_backtick.hvm.snap b/tests/snapshots/run_file__str_backtick.hvm.snap index f7d8799e..edd821a9 100644 --- a/tests/snapshots/run_file__str_backtick.hvm.snap +++ b/tests/snapshots/run_file__str_backtick.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/str_backtick.hvm --- +Lazy mode: + +"abc369*`asdf\"asdf" + +Strict mode: + "abc369*`asdf\"asdf" diff --git a/tests/snapshots/run_file__str_concat.hvm.snap b/tests/snapshots/run_file__str_concat.hvm.snap index bf68db43..4c156699 100644 --- a/tests/snapshots/run_file__str_concat.hvm.snap +++ b/tests/snapshots/run_file__str_concat.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/str_concat.hvm --- +Lazy mode: + +"hello world" + +Strict mode: + "hello world" diff --git a/tests/snapshots/run_file__str_inc.hvm.snap b/tests/snapshots/run_file__str_inc.hvm.snap index a072efd9..b27c5627 100644 --- a/tests/snapshots/run_file__str_inc.hvm.snap +++ b/tests/snapshots/run_file__str_inc.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/str_inc.hvm --- +Lazy mode: + +(11, #str λa (105, (102, (109, (109, (112, (33, (120, (112, (115, (109, (101, a)))))))))))) + +Strict mode: + (11, #str λa (105, (102, (109, (109, (112, (33, (120, (112, (115, (109, (101, a)))))))))))) diff --git a/tests/snapshots/run_file__str_inc_eta.hvm.snap b/tests/snapshots/run_file__str_inc_eta.hvm.snap index 9fe94589..dbb75847 100644 --- a/tests/snapshots/run_file__str_inc_eta.hvm.snap +++ b/tests/snapshots/run_file__str_inc_eta.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/str_inc_eta.hvm --- +Lazy mode: + +(11, #str λa (105, (102, (109, (109, (112, (33, (120, (112, (115, (109, (101, a)))))))))))) + +Strict mode: + (11, #str λa (105, (102, (109, (109, (112, (33, (120, (112, (115, (109, (101, a)))))))))))) diff --git a/tests/snapshots/run_file__str_len.hvm.snap b/tests/snapshots/run_file__str_len.hvm.snap index b1db32ec..88717d8c 100644 --- a/tests/snapshots/run_file__str_len.hvm.snap +++ b/tests/snapshots/run_file__str_len.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/str_len.hvm --- +Lazy mode: + +4 + +Strict mode: + 4 diff --git a/tests/snapshots/run_file__sum_tree.hvm.snap b/tests/snapshots/run_file__sum_tree.hvm.snap index eada5679..cdec2e62 100644 --- a/tests/snapshots/run_file__sum_tree.hvm.snap +++ b/tests/snapshots/run_file__sum_tree.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/sum_tree.hvm --- +Lazy mode: + +256 + +Strict mode: + 256 diff --git a/tests/snapshots/run_file__sup_app.hvm.snap b/tests/snapshots/run_file__sup_app.hvm.snap index 6d0ed009..034fd894 100644 --- a/tests/snapshots/run_file__sup_app.hvm.snap +++ b/tests/snapshots/run_file__sup_app.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/sup_app.hvm --- +Lazy mode: + +#id{3 3} + +Strict mode: + #id{3 3} diff --git a/tests/snapshots/run_file__sup_reconstruction.hvm.snap b/tests/snapshots/run_file__sup_reconstruction.hvm.snap index 8a767937..9fa7676b 100644 --- a/tests/snapshots/run_file__sup_reconstruction.hvm.snap +++ b/tests/snapshots/run_file__sup_reconstruction.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/sup_reconstruction.hvm --- +Lazy mode: + +λa a + +Strict mode: + λa a diff --git a/tests/snapshots/run_file__superposed_is_even.hvm.snap b/tests/snapshots/run_file__superposed_is_even.hvm.snap index 8a2d041e..4a1842f1 100644 --- a/tests/snapshots/run_file__superposed_is_even.hvm.snap +++ b/tests/snapshots/run_file__superposed_is_even.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/superposed_is_even.hvm --- +Lazy mode: + +#0{#1{T F} #2{T F}} + +Strict mode: + #0{#1{T F} #2{T F}} diff --git a/tests/snapshots/run_file__tagged_lam.hvm.snap b/tests/snapshots/run_file__tagged_lam.hvm.snap index 32bec454..e56cce42 100644 --- a/tests/snapshots/run_file__tagged_lam.hvm.snap +++ b/tests/snapshots/run_file__tagged_lam.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/tagged_lam.hvm --- +Lazy mode: + +(3, 4) + +Strict mode: + (3, 4) diff --git a/tests/snapshots/run_file__tup_list_strings.hvm.snap b/tests/snapshots/run_file__tup_list_strings.hvm.snap index 380df782..7485b054 100644 --- a/tests/snapshots/run_file__tup_list_strings.hvm.snap +++ b/tests/snapshots/run_file__tup_list_strings.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/tup_list_strings.hvm --- +Lazy mode: + +([("foo", 0), ("foo", 0), ("foo", 1)], 4) + +Strict mode: + ([("foo", 0), ("foo", 0), ("foo", 1)], 4) diff --git a/tests/snapshots/run_file__tup_reconstruction.hvm.snap b/tests/snapshots/run_file__tup_reconstruction.hvm.snap index 8e8d5cd1..246254b7 100644 --- a/tests/snapshots/run_file__tup_reconstruction.hvm.snap +++ b/tests/snapshots/run_file__tup_reconstruction.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/tup_reconstruction.hvm --- +Lazy mode: + +λa a + +Strict mode: + λa a diff --git a/tests/snapshots/run_file__tuple_rots.hvm.snap b/tests/snapshots/run_file__tuple_rots.hvm.snap index 39d020d6..1c816117 100644 --- a/tests/snapshots/run_file__tuple_rots.hvm.snap +++ b/tests/snapshots/run_file__tuple_rots.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/tuple_rots.hvm --- +Lazy mode: + +λa (a 5 6 7 8 1 2 3 4) + +Strict mode: + λa (a 5 6 7 8 1 2 3 4) diff --git a/tests/snapshots/run_file__unaplied_str.hvm.snap b/tests/snapshots/run_file__unaplied_str.hvm.snap index 6a55c841..6c0ead5b 100644 --- a/tests/snapshots/run_file__unaplied_str.hvm.snap +++ b/tests/snapshots/run_file__unaplied_str.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/unaplied_str.hvm --- +Lazy mode: + +λa λb (String.cons a (String.cons 98 (String.cons 99 (String.cons b String.nil)))) + +Strict mode: + λa λb (String.cons a (String.cons 98 (String.cons 99 (String.cons b String.nil)))) diff --git a/tests/snapshots/run_file__unscoped_never_used.hvm.snap b/tests/snapshots/run_file__unscoped_never_used.hvm.snap index d30fbc9a..a828dd78 100644 --- a/tests/snapshots/run_file__unscoped_never_used.hvm.snap +++ b/tests/snapshots/run_file__unscoped_never_used.hvm.snap @@ -2,6 +2,14 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/unscoped_never_used.hvm --- +Lazy mode: + In definition 'main': Unscoped variable from lambda 'λ$x' is never used. + + +Strict mode: + +In definition 'main': + Unscoped variable from lambda 'λ$x' is never used. diff --git a/tests/snapshots/run_file__unused_dup_var.hvm.snap b/tests/snapshots/run_file__unused_dup_var.hvm.snap index e989a1e4..d0c559ca 100644 --- a/tests/snapshots/run_file__unused_dup_var.hvm.snap +++ b/tests/snapshots/run_file__unused_dup_var.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/unused_dup_var.hvm --- +Lazy mode: + +λa (a λb b) + +Strict mode: + λa (a λb b) diff --git a/tests/snapshots/run_file__world.hvm.snap b/tests/snapshots/run_file__world.hvm.snap index 456670d1..1110d01c 100644 --- a/tests/snapshots/run_file__world.hvm.snap +++ b/tests/snapshots/run_file__world.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/world.hvm --- +Lazy mode: + +"🌎" + +Strict mode: + "🌎" diff --git a/tests/snapshots/run_file__wrong_string.hvm.snap b/tests/snapshots/run_file__wrong_string.hvm.snap index bc3fdc91..16c74b8f 100644 --- a/tests/snapshots/run_file__wrong_string.hvm.snap +++ b/tests/snapshots/run_file__wrong_string.hvm.snap @@ -2,4 +2,10 @@ source: tests/golden_tests.rs input_file: tests/golden_tests/run_file/wrong_string.hvm --- +Lazy mode: + +(String.cons (*, 4) (String.cons * String.nil)) + +Strict mode: + (String.cons (*, 4) (String.cons * String.nil))