about summary refs log tree commit diff stats
path: root/js/scripting-lang/baba-yaga-c/tests
diff options
context:
space:
mode:
Diffstat (limited to 'js/scripting-lang/baba-yaga-c/tests')
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/01_lexer_basic.txt25
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/02_arithmetic_operations.txt31
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/03_comparison_operators.txt33
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/04_logical_operators.txt35
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/05_io_operations.txt63
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/06_function_definitions.txt32
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/07_case_expressions.txt47
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/08_first_class_functions.txt51
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/09_tables.txt50
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/10_standard_library.txt40
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/11_edge_cases.txt50
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/12_advanced_tables.txt85
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/13_standard_library_complete.txt97
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/14_error_handling.txt65
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/15_performance_stress.txt131
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/16_function_composition.txt59
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/17_table_enhancements.txt234
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_minimal.txt31
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_step1.txt41
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/18_each_combinator.txt22
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/18_each_combinator_basic.txt30
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/18_each_combinator_minimal.txt62
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/19_embedded_functions.txt101
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/19_embedded_functions_simple.txt101
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/20_via_operator.txt31
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt98
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements_fixed.txt98
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/22_parser_limitations.txt115
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/23_minus_operator_spacing.txt51
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/integration_01_basic_features.txt37
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/integration_02_pattern_matching.txt64
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/integration_03_functional_programming.txt68
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/integration_04_mini_case_multi_param.txt21
-rw-r--r--js/scripting-lang/baba-yaga-c/tests/repl_demo.txt180
34 files changed, 0 insertions, 2279 deletions
diff --git a/js/scripting-lang/baba-yaga-c/tests/01_lexer_basic.txt b/js/scripting-lang/baba-yaga-c/tests/01_lexer_basic.txt
deleted file mode 100644
index 90693f1..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/01_lexer_basic.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Unit Test: Basic Lexer Functionality */
-/* Tests: Numbers, identifiers, operators, keywords */
-
-/* Test numbers */
-x : 42;
-y : 3.14;
-z : 0;
-
-/* Test identifiers */
-name : "test";
-flag : true;
-value : false;
-
-/* Test basic operators */
-sum : x + y;
-diff : x - y;
-prod : x * y;
-quot : x / y;
-
-/* Test keywords */
-result : when x is
-    42 then "correct"
-    _  then "wrong";
-
-..out "Lexer basic test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/02_arithmetic_operations.txt b/js/scripting-lang/baba-yaga-c/tests/02_arithmetic_operations.txt
deleted file mode 100644
index d4c0648..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/02_arithmetic_operations.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Unit Test: Arithmetic Operations */
-/* Tests: All arithmetic operators and precedence */
-
-/* Basic arithmetic */
-a : 10;
-b : 3;
-sum : a + b;
-diff : a - b;
-product : a * b;
-quotient : a / b;
-moduloResult : a % b;
-powerResult : a ^ b;
-
-/* Test results */
-..assert sum = 13;
-..assert diff = 7;
-..assert product = 30;
-..assert quotient = 3.3333333333333335;
-..assert moduloResult = 1;
-..assert powerResult = 1000;
-
-/* Complex expressions with parentheses */
-complex1 : (5 + 3) * 2;
-complex2 : ((10 - 2) * 3) + 1;
-complex3 : (2 ^ 3) % 5;
-
-..assert complex1 = 16;
-..assert complex2 = 25;
-..assert complex3 = 3;
-
-..out "Arithmetic operations test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/03_comparison_operators.txt b/js/scripting-lang/baba-yaga-c/tests/03_comparison_operators.txt
deleted file mode 100644
index f122a84..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/03_comparison_operators.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Unit Test: Comparison Operators */
-/* Tests: All comparison operators */
-
-/* Basic comparisons */
-less : 3 < 5;
-greater : 10 > 5;
-equal : 5 = 5;
-not_equal : 3 != 5;
-less_equal : 5 <= 5;
-greater_equal : 5 >= 3;
-
-/* Test results */
-..assert less = true;
-..assert greater = true;
-..assert equal = true;
-..assert not_equal = true;
-..assert less_equal = true;
-..assert greater_equal = true;
-
-/* Edge cases */
-zero_less : 0 < 1;
-zero_equal : 0 = 0;
-zero_greater : 0 > -1;
-same_less : 5 < 5;
-same_greater : 5 > 5;
-
-..assert zero_less = true;
-..assert zero_equal = true;
-..assert zero_greater = true;
-..assert same_less = false;
-..assert same_greater = false;
-
-..out "Comparison operators test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/04_logical_operators.txt b/js/scripting-lang/baba-yaga-c/tests/04_logical_operators.txt
deleted file mode 100644
index 591e04b..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/04_logical_operators.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Unit Test: Logical Operators */
-/* Tests: All logical operators */
-
-/* Basic logical operations */
-and_true : 1 and 1;
-and_false : 1 and 0;
-or_true : 0 or 1;
-or_false : 0 or 0;
-xor_true : 1 xor 0;
-xor_false : 1 xor 1;
-not_true : not 0;
-not_false : not 1;
-
-/* Test results */
-..assert and_true = true;
-..assert and_false = false;
-..assert or_true = true;
-..assert or_false = false;
-..assert xor_true = true;
-..assert xor_false = false;
-..assert not_true = true;
-..assert not_false = false;
-
-/* Complex logical expressions */
-complex1 : 1 and 1 and 1;
-complex2 : 1 or 0 or 0;
-complex3 : not (1 and 0);
-complex4 : (1 and 1) or (0 and 1);
-
-..assert complex1 = true;
-..assert complex2 = true;
-..assert complex3 = true;
-..assert complex4 = true;
-
-..out "Logical operators test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/05_io_operations.txt b/js/scripting-lang/baba-yaga-c/tests/05_io_operations.txt
deleted file mode 100644
index 6d05dfe..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/05_io_operations.txt
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Unit Test: IO Operations */
-/* Tests: ..out, ..assert, ..listen, ..emit operations */
-
-/* Test basic output */
-..out "Testing IO operations";
-
-/* Test assertions */
-x : 5;
-y : 3;
-sum : x + y;
-
-..assert x = 5;
-..assert y = 3;
-..assert sum = 8;
-..assert x > 3;
-..assert y < 10;
-..assert sum != 0;
-
-/* Test string comparisons */
-..assert "hello" = "hello";
-..assert "world" != "hello";
-
-/* Test complex assertions */
-..assert (x + y) = 8;
-..assert (x * y) = 15;
-..assert (x > y) = true;
-
-/* Test ..listen functionality */
-state : ..listen;
-..assert state.status = "placeholder";
-..assert state.message = "State not available in standalone mode";
-
-/* Test ..listen in when expression */
-result : when ..listen is
-    { status: "placeholder" } then "Placeholder detected"
-    { status: "active" } then "Active state detected"
-    _ then "Unknown state";
-..assert result = "Placeholder detected";
-
-/* Test ..emit with different data types */
-..emit "String value";
-..emit 42;
-..emit true;
-..emit { key: "value", number: 123 };
-
-/* Test ..emit with computed expressions */
-computed_table : { a: 10, b: 20 };
-computed_sum : computed_table.a + computed_table.b;
-..emit computed_sum;
-
-/* Test ..emit with conditional logic */
-condition : 10 > 5;
-message : when condition is
-    true then "Condition is true"
-    false then "Condition is false";
-..emit message;
-
-/* Test that ..emit doesn't interfere with ..out */
-..out "This should appear via ..out";
-..emit "This should appear via ..emit";
-..out "Another ..out message";
-
-..out "IO operations test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/06_function_definitions.txt b/js/scripting-lang/baba-yaga-c/tests/06_function_definitions.txt
deleted file mode 100644
index b0e591f..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/06_function_definitions.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Unit Test: Function Definitions */
-/* Tests: Function syntax, parameters, calls */
-
-/* Basic function definitions */
-add_func : x y -> x + y;
-multiply_func : x y -> x * y;
-double_func : x -> x * 2;
-square_func : x -> x * x;
-identity_func : x -> x;
-
-/* Test function calls */
-result1 : add_func 3 4;
-result2 : multiply_func 5 6;
-result3 : double_func 8;
-result4 : square_func 4;
-result5 : identity_func 42;
-
-/* Test results */
-..assert result1 = 7;
-..assert result2 = 30;
-..assert result3 = 16;
-..assert result4 = 16;
-..assert result5 = 42;
-
-/* Test function calls with parentheses */
-result6 : add_func @(3 + 2) @(4 + 1);
-result7 : multiply_func @(double_func 3) @(square_func 2);
-
-..assert result6 = 10;
-..assert result7 = 24;
-
-..out "Function definitions test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/07_case_expressions.txt b/js/scripting-lang/baba-yaga-c/tests/07_case_expressions.txt
deleted file mode 100644
index ccc447c..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/07_case_expressions.txt
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Unit Test: Case Expressions */
-/* Tests: Pattern matching, wildcards, nested cases */
-
-/* Basic case expressions */
-factorial : n -> 
-  when n is
-    0 then 1
-    _ then n * (@factorial (n - 1));
-
-grade : score -> 
-  when score is
-    score >= 90 then "A"
-    score >= 80 then "B"
-    score >= 70 then "C"
-    _  then "F";
-
-/* Test case expressions */
-fact5 : factorial 5;
-grade1 : grade 95;
-grade2 : grade 85;
-grade3 : grade 65;
-
-/* Test results */
-..assert fact5 = 120;
-..assert grade1 = "A";  /* 95 >= 90, so matches first case */
-..assert grade2 = "B";  /* 85 >= 80, so matches second case */
-..assert grade3 = "F";  /* 65 < 70, so falls through to wildcard */
-
-/* Multi-parameter case expressions */
-compare : x y -> 
-  when x y is
-    0 0 then "both zero"
-    0 _ then "x is zero"
-    _ 0 then "y is zero"
-    _ _ then "neither zero";
-
-test1 : compare 0 0;
-test2 : compare 0 5;
-test3 : compare 5 0;
-test4 : compare 5 5;
-
-..assert test1 = "both zero";
-..assert test2 = "x is zero";
-..assert test3 = "y is zero";
-..assert test4 = "neither zero";
-
-..out "Case expressions test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/08_first_class_functions.txt b/js/scripting-lang/baba-yaga-c/tests/08_first_class_functions.txt
deleted file mode 100644
index 75fda40..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/08_first_class_functions.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Unit Test: First-Class Functions */
-/* Tests: Function references, higher-order functions */
-
-/* Basic functions */
-double : x -> x * 2;
-square : x -> x * x;
-add1 : x -> x + 1;
-
-/* Function references */
-double_ref : @double;
-square_ref : @square;
-add1_ref : @add1;
-
-/* Test function references */
-result1 : double_ref 5;
-result2 : square_ref 3;
-result3 : add1_ref 10;
-
-..assert result1 = 10;
-..assert result2 = 9;
-..assert result3 = 11;
-
-/* Higher-order functions using standard library */
-composed : compose @double @square 3;
-piped : pipe @double @square 2;
-applied : apply @double 7;
-
-..assert composed = 18;
-..assert piped = 16;
-..assert applied = 14;
-
-/* Function references in case expressions */
-getFunction : type -> 
-  when type is
-    "double" then @double
-    "square" then @square
-    _        then @add1;
-
-func1 : getFunction "double";
-func2 : getFunction "square";
-func3 : getFunction "unknown";
-
-result4 : func1 4;
-result5 : func2 4;
-result6 : func3 4;
-
-..assert result4 = 8;
-..assert result5 = 16;
-..assert result6 = 5;
-
-..out "First-class functions test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/09_tables.txt b/js/scripting-lang/baba-yaga-c/tests/09_tables.txt
deleted file mode 100644
index 3845903..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/09_tables.txt
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Unit Test: Tables */
-/* Tests: Table literals, access, mixed types */
-
-/* Empty table */
-empty : {};
-
-/* Array-like table */
-numbers : {1, 2, 3, 4, 5};
-
-/* Key-value table */
-person : {name: "Alice", age: 30, active: true};
-
-/* Mixed table */
-mixed : {1, name: "Bob", 2, active: false};
-
-/* Test array access */
-first : numbers[1];
-second : numbers[2];
-last : numbers[5];
-
-..assert first = 1;
-..assert second = 2;
-..assert last = 5;
-
-/* Test object access */
-name : person.name;
-age : person.age;
-active : person.active;
-
-..assert name = "Alice";
-..assert age = 30;
-..assert active = true;
-
-/* Test mixed table access */
-first_mixed : mixed[1];
-name_mixed : mixed.name;
-second_mixed : mixed[2];
-
-..assert first_mixed = 1;
-..assert name_mixed = "Bob";
-..assert second_mixed = 2;
-
-/* Test bracket notation */
-name_bracket : person["name"];
-age_bracket : person["age"];
-
-..assert name_bracket = "Alice";
-..assert age_bracket = 30;
-
-..out "Tables test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/10_standard_library.txt b/js/scripting-lang/baba-yaga-c/tests/10_standard_library.txt
deleted file mode 100644
index 221d5ca..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/10_standard_library.txt
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Unit Test: Standard Library */
-/* Tests: All built-in higher-order functions */
-
-/* Basic functions for testing */
-double_func : x -> x * 2;
-square_func : x -> x * x;
-add_func : x y -> x + y;
-isPositive : x -> x > 0;
-
-/* Map function */
-mapped1 : map @double_func 5;
-mapped2 : map @square_func 3;
-
-..assert mapped1 = 10;
-..assert mapped2 = 9;
-
-/* Compose function */
-composed : compose @double_func @square_func 3;
-..assert composed = 18;
-
-/* Pipe function */
-piped : pipe @double_func @square_func 2;
-..assert piped = 16;
-
-/* Apply function */
-applied : apply @double_func 7;
-..assert applied = 14;
-
-/* Reduce and Fold functions */
-reduced : reduce @add_func 0 5;
-folded : fold @add_func 0 5;
-
-..assert reduced = 5;
-..assert folded = 5;
-
-/* Curry function */
-curried : curry @add_func 3 4;
-..assert curried = 7;
-
-..out "Standard library test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/11_edge_cases.txt b/js/scripting-lang/baba-yaga-c/tests/11_edge_cases.txt
deleted file mode 100644
index bff51ef..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/11_edge_cases.txt
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Unit Test: Edge Cases and Error Conditions */
-/* Tests: Unary minus, complex expressions */
-
-/* Test unary minus operations */
-negative1 : -5;
-negative2 : -3.14;
-negative3 : -0;
-
-..assert negative1 = -5;
-..assert negative2 = -3.14;
-..assert negative3 = 0;
-
-/* Test complex unary minus expressions */
-complex_negative1 : -(-5);
-complex_negative2 : -(-(-3));
-complex_negative3 : (-5) + 3;
-
-..assert complex_negative1 = 5;
-..assert complex_negative2 = -3;
-..assert complex_negative3 = -2;
-
-/* Test unary minus in function calls */
-abs : x -> when x is
-    x < 0 then -x
-    _ then x;
-
-abs1 : abs (-5);
-abs2 : abs 5;
-
-..assert abs1 = 5;
-..assert abs2 = 5;
-
-/* Test complex nested expressions */
-nested1 : (1 + 2) * (3 - 4);
-nested2 : ((5 + 3) * 2) - 1;
-nested3 : -((2 + 3) * 4);
-
-..assert nested1 = -3;
-..assert nested2 = 15;
-..assert nested3 = -20;
-
-/* Test unary minus with function references */
-myNegate : x -> -x;
-negated1 : myNegate 5;
-negated2 : myNegate (-3);
-
-..assert negated1 = -5;
-..assert negated2 = 3;
-
-..out "Edge cases test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/12_advanced_tables.txt b/js/scripting-lang/baba-yaga-c/tests/12_advanced_tables.txt
deleted file mode 100644
index 3b2a326..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/12_advanced_tables.txt
+++ /dev/null
@@ -1,85 +0,0 @@
-/* Unit Test: Advanced Table Features */
-/* Tests: Nested tables, mixed types, array-like entries */
-
-/* Nested tables */
-nested_table : {
-    outer: {
-        inner: {
-            value: 42
-        }
-    }
-};
-
-/* Test nested access */
-nested_value1 : nested_table.outer.inner.value;
-..assert nested_value1 = 42;
-
-/* Tables with mixed types */
-mixed_advanced : {
-    1: "first",
-    name: "test",
-    nested: {
-        value: 100
-    }
-};
-
-/* Test mixed access */
-first : mixed_advanced[1];
-name : mixed_advanced.name;
-nested_value2 : mixed_advanced.nested.value;
-
-..assert first = "first";
-..assert name = "test";
-..assert nested_value2 = 100;
-
-/* Tables with boolean keys */
-bool_table : {
-    true: "yes",
-    false: "no"
-};
-
-/* Test boolean key access */
-yes : bool_table[true];
-no : bool_table[false];
-
-..assert yes = "yes";
-..assert no = "no";
-
-/* Tables with array-like entries and key-value pairs */
-comma_table : {
-    1, 2, 3,
-    key: "value",
-    4, 5
-};
-
-/* Test comma table access */
-first_comma : comma_table[1];
-second_comma : comma_table[2];
-key_comma : comma_table.key;
-fourth_comma : comma_table[4];
-
-..assert first_comma = 1;
-..assert second_comma = 2;
-..assert key_comma = "value";
-..assert fourth_comma = 4;
-
-/* Tables with numeric and string keys */
-mixed_keys : {
-    1: "one",
-    two: 2,
-    3: "three",
-    four: 4
-};
-
-/* Test mixed key access */
-one : mixed_keys[1];
-two : mixed_keys.two;
-three : mixed_keys[3];
-four : mixed_keys.four;
-
-..assert one = "one";
-..assert two = 2;
-..assert three = "three";
-..assert four = 4;
-
-..out "Advanced tables test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/13_standard_library_complete.txt b/js/scripting-lang/baba-yaga-c/tests/13_standard_library_complete.txt
deleted file mode 100644
index 451dc0a..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/13_standard_library_complete.txt
+++ /dev/null
@@ -1,97 +0,0 @@
-/* Unit Test: Complete Standard Library */
-/* Tests: All built-in higher-order functions including reduce, fold, curry */
-
-/* Basic functions for testing */
-double_func : x -> x * 2;
-square_func : x -> x * x;
-add_func : x y -> x + y;
-isPositive : x -> x > 0;
-isEven : x -> x % 2 = 0;
-
-/* Map function */
-mapped1 : map @double_func 5;
-mapped2 : map @square_func 3;
-
-..assert mapped1 = 10;
-..assert mapped2 = 9;
-
-/* Compose function */
-composed : compose @double_func @square_func 3;
-..assert composed = 18;
-
-/* Pipe function */
-piped : pipe @double_func @square_func 2;
-..assert piped = 16;
-
-/* Apply function */
-applied : apply @double_func 7;
-..assert applied = 14;
-
-/* Filter function */
-filtered1 : filter @isPositive 5;
-filtered2 : filter @isPositive (-3);
-
-..assert filtered1 = 5;
-..assert filtered2 = 0;
-
-/* Reduce function */
-reduced : reduce @add_func 0 5;
-..assert reduced = 5;
-
-/* Fold function */
-folded : fold @add_func 0 5;
-..assert folded = 5;
-
-/* Curry function */
-curried : curry @add_func 3 4;
-..assert curried = 7;
-
-/* Test partial application */
-compose_partial : compose @double_func @square_func;
-compose_result : compose_partial 3;
-..assert compose_result = 18;
-
-pipe_partial : pipe @double_func @square_func;
-pipe_result : pipe_partial 2;
-..assert pipe_result = 16;
-
-/* Test with negative numbers */
-negate_func : x -> -x;
-negative_compose : compose @double_func @negate_func 5;
-negative_pipe : pipe @negate_func @double_func 5;
-
-..assert negative_compose = -10;
-..assert negative_pipe = -10;
-
-/* Test with complex functions */
-complex_func : x -> x * x + 1;
-complex_compose : compose @double_func @complex_func 3;
-complex_pipe : pipe @complex_func @double_func 3;
-
-..assert complex_compose = 20;
-..assert complex_pipe = 20;
-
-/* Test filter with complex predicates */
-isLarge : x -> x > 10;
-filtered_large : filter @isLarge 15;
-filtered_small : filter @isLarge 5;
-
-..assert filtered_large = 15;
-..assert filtered_small = 0;
-
-/* Test reduce with different initial values */
-multiply_func : x y -> x * y;
-reduced_sum : reduce @add_func 10 5;
-reduced_mult : reduce @multiply_func 1 5;
-
-..assert reduced_sum = 15;
-..assert reduced_mult = 5;
-
-/* Test fold with different initial values */
-folded_sum : fold @add_func 10 5;
-folded_mult : fold @multiply_func 1 5;
-
-..assert folded_sum = 15;
-..assert folded_mult = 5;
-
-..out "Complete standard library test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/14_error_handling.txt b/js/scripting-lang/baba-yaga-c/tests/14_error_handling.txt
deleted file mode 100644
index 09e414d..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/14_error_handling.txt
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Unit Test: Error Handling and Edge Cases */
-/* Tests: Error detection and handling */
-
-/* Test valid operations first to ensure basic functionality */
-valid_test : 5 + 3;
-..assert valid_test = 8;
-
-/* Test division by zero handling */
-/* This should be handled gracefully */
-safe_div : x y -> when y is
-    0 then "division by zero"
-    _ then x / y;
-
-div_result1 : safe_div 10 2;
-div_result2 : safe_div 10 0;
-
-..assert div_result1 = 5;
-..assert div_result2 = "division by zero";
-
-/* Test edge cases with proper handling */
-edge_case1 : when 0 is
-    0 then "zero"
-    _ then "other";
-
-edge_case2 : when "" is
-    "" then "empty string"
-    _  then "other";
-
-edge_case3 : when false is
-    false then "false"
-    _     then "other";
-
-..assert edge_case1 = "zero";
-..assert edge_case2 = "empty string";
-..assert edge_case3 = "false";
-
-/* Test complex error scenarios */
-complex_error_handling : input -> when input is
-    input < 0 then "negative"
-    input = 0 then "zero"
-    input > 100 then "too large"
-    _ then "valid";
-
-complex_result1 : complex_error_handling (-5);
-complex_result2 : complex_error_handling 0;
-complex_result3 : complex_error_handling 150;
-complex_result4 : complex_error_handling 50;
-
-..assert complex_result1 = "negative";
-..assert complex_result2 = "zero";
-..assert complex_result3 = "too large";
-..assert complex_result4 = "valid";
-
-/* Test safe arithmetic operations */
-safe_add : x y -> when y is
-    0 then x
-    _ then x + y;
-
-safe_result1 : safe_add 5 3;
-safe_result2 : safe_add 5 0;
-
-..assert safe_result1 = 8;
-..assert safe_result2 = 5;
-
-..out "Error handling test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/15_performance_stress.txt b/js/scripting-lang/baba-yaga-c/tests/15_performance_stress.txt
deleted file mode 100644
index 4ea961b..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/15_performance_stress.txt
+++ /dev/null
@@ -1,131 +0,0 @@
-/* Unit Test: Performance and Stress Testing */
-/* Tests: Large computations, nested functions, complex expressions */
-
-/* Test large arithmetic computations */
-sum1 : 0 + 1;
-sum2 : sum1 + 2;
-sum3 : sum2 + 3;
-sum4 : sum3 + 4;
-large_sum : sum4 + 5;
-
-..assert large_sum = 15;
-
-/* Test nested function calls */
-nested_func1 : x -> x + 1;
-nested_func2 : x -> nested_func1 x;
-nested_func3 : x -> nested_func2 x;
-nested_func4 : x -> nested_func3 x;
-nested_func5 : x -> nested_func4 x;
-
-deep_nested : nested_func5 10;
-..assert deep_nested = 11;
-
-/* Test complex mathematical expressions */
-complex_math1 : (1 + 2) * (3 + 4) - (5 + 6);
-complex_math2 : ((2 ^ 3) + (4 * 5)) / (6 - 2);
-complex_math3 : -((1 + 2 + 3) * (4 + 5 + 6));
-
-..assert complex_math1 = 10;
-..assert complex_math2 = 7;
-..assert complex_math3 = -90;
-
-/* Test large table operations */
-table1 : {};
-table2 : {1: "one", 2: "two", 3: "three", 4: "four", 5: "five"};
-large_table : {table2, 6: "six", 7: "seven", 8: "eight"};
-
-table_size : 8;
-..assert table_size = 8;
-
-/* Test recursive-like patterns with functions */
-accumulate : n -> when n is
-    0 then 0
-    _ then n + accumulate (n - 1);
-
-sum_10 : accumulate 10;
-..assert sum_10 = 55;
-
-/* Test complex case expressions */
-complex_case : x -> when x is
-    x < 0 then "negative"
-    x = 0 then "zero"
-    x < 10 then "small"
-    x < 100 then "medium"
-    x < 1000 then "large"
-    _ then "huge";
-
-case_test1 : complex_case (-5);
-case_test2 : complex_case 0;
-case_test3 : complex_case 5;
-case_test4 : complex_case 50;
-case_test5 : complex_case 500;
-case_test6 : complex_case 5000;
-
-..assert case_test1 = "negative";
-..assert case_test2 = "zero";
-..assert case_test3 = "small";
-..assert case_test4 = "medium";
-..assert case_test5 = "large";
-..assert case_test6 = "huge";
-
-/* Test standard library with complex operations */
-double : x -> x * 2;
-square : x -> x * x;
-myAdd : x y -> x + y;
-
-complex_std1 : compose @double @square 3;
-complex_std2 : pipe @square @double 4;
-complex_std3 : curry @myAdd 5 3;
-
-..assert complex_std1 = 18;
-..assert complex_std2 = 32;
-..assert complex_std3 = 8;
-
-/* Test table with computed keys and nested structures */
-computed_table : {
-    (1 + 1): "two",
-    (2 * 3): "six",
-    (10 - 5): "five",
-    nested: {
-        (2 + 2): "four",
-        deep: {
-            (3 * 3): "nine"
-        }
-    }
-};
-
-computed_test1 : computed_table[2];
-computed_test2 : computed_table[6];
-computed_test3 : computed_table[5];
-computed_test4 : computed_table.nested[4];
-computed_test5 : computed_table.nested.deep[9];
-
-..assert computed_test1 = "two";
-..assert computed_test2 = "six";
-..assert computed_test3 = "five";
-..assert computed_test4 = "four";
-..assert computed_test5 = "nine";
-
-/* Test logical operations with complex expressions */
-complex_logic1 : (5 > 3) and (10 < 20) and (2 + 2 = 4);
-complex_logic2 : (1 > 5) or (10 = 10) or (3 < 2);
-complex_logic3 : not ((5 > 3) and (10 < 5));
-
-..assert complex_logic1 = true;
-..assert complex_logic2 = true;
-..assert complex_logic3 = true;
-
-/* Test function composition with multiple functions */
-f1 : x -> x + 1;
-f2 : x -> x * 2;
-f3 : x -> x - 1;
-f4 : x -> x / 2;
-
-/* Test simple compositions that should cancel each other out */
-composed1 : compose @f1 @f3 10;  /* f1(f3(10)) = f1(9) = 10 */
-composed2 : pipe @f3 @f1 10;     /* f3(f1(10)) = f3(11) = 10 */
-
-..assert composed1 = 10;
-..assert composed2 = 10;
-
-..out "Performance and stress test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/16_function_composition.txt b/js/scripting-lang/baba-yaga-c/tests/16_function_composition.txt
deleted file mode 100644
index 6b1b13f..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/16_function_composition.txt
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Function Composition Test Suite */
-
-/* Test basic function definitions */
-double : x -> x * 2;
-add1 : x -> x + 1;
-square : x -> x * x;
-
-/* Test 1: Basic composition with compose */
-result1 : compose @double @add1 5;
-..out result1;
-
-/* Test 2: Multiple composition with compose */
-result2 : compose @double (compose @add1 @square) 3;
-..out result2;
-
-/* Test 3: Function references */
-ref1 : @double;
-..out ref1;
-
-/* Test 4: Function references in composition */
-result3 : compose @double @add1 5;
-..out result3;
-
-/* Test 5: Pipe function (binary) */
-result4 : pipe @double @add1 5;
-..out result4;
-
-/* Test 6: Compose function (binary) */
-result5 : compose @double @add1 2;
-..out result5;
-
-/* Test 7: Multiple composition with pipe */
-result6 : pipe @square (pipe @add1 @double) 2;
-..out result6;
-
-/* Test 8: Backward compatibility - arithmetic */
-x : 10;
-result7 : x + 5;
-..out result7;
-
-/* Test 9: Backward compatibility - function application */
-result8 : double x;
-..out result8;
-
-/* Test 10: Backward compatibility - nested application */
-result9 : double (add1 x);
-..out result9;
-
-/* Test 11: Backward compatibility - unary operators */
-result10 : -x;
-..out result10;
-
-/* Test 12: Backward compatibility - logical operators */
-result11 : not true;
-..out result11;
-
-/* Test 13: Complex composition chain */
-result12 : compose @square (compose @add1 (compose @double @add1)) 3;
-..out result12; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements.txt b/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements.txt
deleted file mode 100644
index d935153..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements.txt
+++ /dev/null
@@ -1,234 +0,0 @@
-/* Unit Test: Table Enhancements */
-/* Tests: Enhanced combinators, t namespace, each combinator, embedded functions */
-
-/* ===== ENHANCED COMBINATORS ===== */
-
-/* Enhanced map with tables */
-numbers : {1, 2, 3, 4, 5};
-double : x -> x * 2;
-
-/* Test map with single table */
-doubled : map @double numbers;
-/* Note: Using dot notation for array-like tables */
-first : doubled[1];
-second : doubled[2];
-third : doubled[3];
-fourth : doubled[4];
-fifth : doubled[5];
-..assert first = 2;
-..assert second = 4;
-..assert third = 6;
-..assert fourth = 8;
-..assert fifth = 10;
-
-/* Test map with key-value table */
-person : {name: "Alice", age: 30, active: true};
-add_ten : x -> x + 10;
-
-mapped_person : map @add_ten person;
-/* Note: This will add 10 to all values, including strings */
-name_result : mapped_person.name;
-age_result : mapped_person.age;
-active_result : mapped_person.active;
-..assert name_result = "Alice10";
-..assert age_result = 40;
-..assert active_result = 11;
-
-/* Enhanced filter with tables */
-is_even : x -> x % 2 = 0;
-evens : filter @is_even numbers;
-even_2 : evens[2];
-even_4 : evens[4];
-/* Note: Keys 1, 3, 5 don't exist in filtered result */
-..assert even_2 = 2;
-..assert even_4 = 4;
-
-/* Enhanced reduce with tables */
-sum : x y -> x + y;
-total : reduce @sum 0 numbers;
-..assert total = 15;
-
-/* ===== T NAMESPACE OPERATIONS ===== */
-
-/* t.map */
-t_doubled : t.map @double numbers;
-t_first : t_doubled[1];
-t_second : t_doubled[2];
-t_third : t_doubled[3];
-..assert t_first = 2;
-..assert t_second = 4;
-..assert t_third = 6;
-
-/* t.filter */
-t_evens : t.filter @is_even numbers;
-t_even_2 : t_evens[2];
-t_even_4 : t_evens[4];
-/* Note: Keys 1, 3, 5 don't exist in filtered result */
-..assert t_even_2 = 2;
-..assert t_even_4 = 4;
-
-/* t.reduce */
-t_total : t.reduce @sum 0 numbers;
-..assert t_total = 15;
-
-/* t.set - immutable update */
-updated_person : t.set person "age" 31;
-..assert updated_person.age = 31;
-..assert person.age = 30; /* Original unchanged */
-
-/* t.delete - immutable deletion */
-person_without_age : t.delete person "age";
-..assert person_without_age.name = "Alice";
-..assert person_without_age.active = true;
-/* Note: age key doesn't exist in person_without_age */
-..assert person.age = 30; /* Original unchanged */
-
-/* t.merge - immutable merge */
-person1 : {name: "Alice", age: 30};
-person2 : {age: 31, city: "NYC"};
-merged : t.merge person1 person2;
-..assert merged.name = "Alice";
-..assert merged.age = 31;
-..assert merged.city = "NYC";
-
-/* t.length */
-length : t.length person;
-..assert length = 3;
-
-/* t.has */
-has_name : t.has person "name";
-has_email : t.has person "email";
-..assert has_name = true;
-..assert has_email = false;
-
-/* t.get */
-name_value : t.get person "name" "unknown";
-email_value : t.get person "email" "unknown";
-..assert name_value = "Alice";
-..assert email_value = "unknown";
-
-/* ===== EACH COMBINATOR ===== */
-
-/* each with table and scalar */
-each_add : each @add numbers 10;
-each_1 : each_add[1];
-each_2 : each_add[2];
-each_3 : each_add[3];
-..assert each_1 = 11;
-..assert each_2 = 12;
-..assert each_3 = 13;
-
-/* each with two tables */
-table1 : {a: 1, b: 2, c: 3};
-table2 : {a: 10, b: 20, c: 30};
-each_sum : each @add table1 table2;
-..assert each_sum.a = 11;
-..assert each_sum.b = 22;
-..assert each_sum.c = 33;
-
-/* each with scalar and table */
-each_add_scalar : each @add 10 numbers;
-scalar_1 : each_add_scalar[1];
-scalar_2 : each_add_scalar[2];
-scalar_3 : each_add_scalar[3];
-..assert scalar_1 = 11;
-..assert scalar_2 = 12;
-..assert scalar_3 = 13;
-
-/* each with partial application */
-add_to_ten : each @add 10;
-partial_result : add_to_ten numbers;
-partial_1 : partial_result[1];
-partial_2 : partial_result[2];
-partial_3 : partial_result[3];
-..assert partial_1 = 11;
-..assert partial_2 = 12;
-..assert partial_3 = 13;
-
-/* each with different operations */
-each_multiply : each @multiply numbers 2;
-mult_1 : each_multiply[1];
-mult_2 : each_multiply[2];
-mult_3 : each_multiply[3];
-..assert mult_1 = 2;
-..assert mult_2 = 4;
-..assert mult_3 = 6;
-
-/* each with comparison */
-each_greater : each @greaterThan numbers 3;
-greater_1 : each_greater[1];
-greater_2 : each_greater[2];
-greater_3 : each_greater[3];
-greater_4 : each_greater[4];
-greater_5 : each_greater[5];
-..assert greater_1 = false;
-..assert greater_2 = false;
-..assert greater_3 = false;
-..assert greater_4 = true;
-..assert greater_5 = true;
-
-/* ===== EMBEDDED FUNCTIONS ===== */
-
-/* Table with embedded arrow functions */
-calculator : {
-    add: x y -> x + y,
-    multiply: x y -> x * y,
-    double: x -> x * 2
-};
-
-/* Test embedded function calls */
-add_result : calculator.add 5 3;
-multiply_result : calculator.multiply 4 6;
-double_result : calculator.double 7;
-..assert add_result = 8;
-..assert multiply_result = 24;
-..assert double_result = 14;
-
-/* Table with embedded when expressions */
-classifier : {
-    classify: x -> when x is
-        0 then "zero"
-        1 then "one"
-        _ then "other"
-};
-
-/* Test embedded when expressions */
-zero_class : classifier.classify 0;
-one_class : classifier.classify 1;
-other_class : classifier.classify 42;
-..assert zero_class = "zero";
-..assert one_class = "one";
-..assert other_class = "other";
-
-/* Table with mixed content */
-mixed_table : {
-    name: "Alice",
-    age: 30,
-    add: x y -> x + y,
-    is_adult: x -> x >= 18
-};
-
-/* Test mixed table */
-mixed_name : mixed_table.name;
-mixed_age : mixed_table.age;
-mixed_sum : mixed_table.add 5 3;
-mixed_adult_check : mixed_table.is_adult 25;
-..assert mixed_name = "Alice";
-..assert mixed_age = 30;
-..assert mixed_sum = 8;
-..assert mixed_adult_check = true;
-
-/* ===== ERROR HANDLING ===== */
-
-/* Test error handling for invalid inputs */
-empty_table : {};
-
-/* These should not cause errors */
-empty_length : t.length empty_table;
-..assert empty_length = 0;
-
-/* Test safe operations */
-safe_get : t.get empty_table "nonexistent" "default";
-..assert safe_get = "default";
-
-..out "Table enhancements test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_minimal.txt b/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_minimal.txt
deleted file mode 100644
index bdb1c96..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_minimal.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Minimal Unit Test: Table Enhancements */
-
-/* Enhanced map with tables */
-numbers : {1, 2, 3, 4, 5};
-double : x -> x * 2;
-
-/* Test map with single table */
-doubled : map @double numbers;
-first : doubled[1];
-second : doubled[2];
-..assert first = 2;
-..assert second = 4;
-
-/* Test t.map */
-t_doubled : t.map @double numbers;
-t_first : t_doubled[1];
-..assert t_first = 2;
-
-/* Test each */
-each_add : each @add numbers 10;
-each_1 : each_add[1];
-..assert each_1 = 11;
-
-/* Test embedded functions */
-calculator : {
-    add: x y -> x + y
-};
-add_result : calculator.add 5 3;
-..assert add_result = 8;
-
-..out "Minimal table enhancements test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_step1.txt b/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_step1.txt
deleted file mode 100644
index 79dae16..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/17_table_enhancements_step1.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Step 1: Enhanced map with tables */
-
-numbers : {1, 2, 3, 4, 5};
-double : x -> x * 2;
-
-/* Test map with single table */
-doubled : map @double numbers;
-first : doubled[1];
-second : doubled[2];
-third : doubled[3];
-fourth : doubled[4];
-fifth : doubled[5];
-..assert first = 2;
-..assert second = 4;
-..assert third = 6;
-..assert fourth = 8;
-..assert fifth = 10;
-
-/* Test map with key-value table */
-person : {name: "Alice", age: 30, active: true};
-add_ten : x -> x + 10;
-
-mapped_person : map @add_ten person;
-/* Note: This will add 10 to all values, including strings */
-name_result : mapped_person.name;
-age_result : mapped_person.age;
-active_result : mapped_person.active;
-..assert name_result = "Alice10";
-..assert age_result = 40;
-..assert active_result = 11;
-
-/* Enhanced filter with tables */
-is_even : x -> x % 2 = 0;
-evens : filter @is_even numbers;
-even_2 : evens[2];
-even_4 : evens[4];
-/* Note: Keys 1, 3, 5 don't exist in filtered result */
-..assert even_2 = 2;
-..assert even_4 = 4;
-
-..out "Step 3 completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/18_each_combinator.txt b/js/scripting-lang/baba-yaga-c/tests/18_each_combinator.txt
deleted file mode 100644
index 45c941a..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/18_each_combinator.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Simple each test */
-
-numbers : {1, 2, 3, 4, 5};
-
-/* each with table and scalar */
-each_add : each @add numbers 10;
-each_1 : each_add[1];
-each_2 : each_add[2];
-each_3 : each_add[3];
-..assert each_1 = 11;
-..assert each_2 = 12;
-..assert each_3 = 13;
-
-/* each with two tables */
-table1 : {a: 1, b: 2, c: 3};
-table2 : {a: 10, b: 20, c: 30};
-each_sum : each @add table1 table2;
-..assert each_sum.a = 11;
-..assert each_sum.b = 22;
-..assert each_sum.c = 33;
-
-..out "Simple each test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/18_each_combinator_basic.txt b/js/scripting-lang/baba-yaga-c/tests/18_each_combinator_basic.txt
deleted file mode 100644
index d926013..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/18_each_combinator_basic.txt
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Basic Unit Test: Each Combinator */
-
-/* Test data */
-numbers : {1, 2, 3, 4, 5};
-table1 : {a: 1, b: 2, c: 3};
-table2 : {a: 10, b: 20, c: 30};
-
-/* each with table and scalar */
-each_add : each @add numbers 10;
-each_1 : each_add[1];
-each_2 : each_add[2];
-each_3 : each_add[3];
-..assert each_1 = 11;
-..assert each_2 = 12;
-..assert each_3 = 13;
-
-/* each with two tables */
-each_sum : each @add table1 table2;
-..assert each_sum.a = 11;
-..assert each_sum.b = 22;
-..assert each_sum.c = 33;
-
-/* each with empty table */
-empty_table : {};
-empty_result : each @add empty_table 10;
-/* Check that empty_result is an empty object by checking its length */
-empty_length : t.length empty_result;
-..assert empty_length = 0;
-
-..out "Basic each combinator test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/18_each_combinator_minimal.txt b/js/scripting-lang/baba-yaga-c/tests/18_each_combinator_minimal.txt
deleted file mode 100644
index 1cd6516..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/18_each_combinator_minimal.txt
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Minimal Unit Test: Each Combinator */
-
-/* Test data */
-numbers : {1, 2, 3, 4, 5};
-table1 : {a: 1, b: 2, c: 3};
-table2 : {a: 10, b: 20, c: 30};
-
-/* each with table and scalar */
-each_add : each @add numbers 10;
-each_1 : each_add[1];
-each_2 : each_add[2];
-each_3 : each_add[3];
-..assert each_1 = 11;
-..assert each_2 = 12;
-..assert each_3 = 13;
-
-/* each with two tables */
-each_sum : each @add table1 table2;
-..assert each_sum.a = 11;
-..assert each_sum.b = 22;
-..assert each_sum.c = 33;
-
-/* each with scalar and table */
-each_add_scalar : each @add 10 numbers;
-scalar_1 : each_add_scalar[1];
-scalar_2 : each_add_scalar[2];
-scalar_3 : each_add_scalar[3];
-..assert scalar_1 = 11;
-..assert scalar_2 = 12;
-..assert scalar_3 = 13;
-
-/* each with partial application */
-add_to_ten : each @add 10;
-partial_result : add_to_ten numbers;
-partial_1 : partial_result[1];
-partial_2 : partial_result[2];
-partial_3 : partial_result[3];
-..assert partial_1 = 11;
-..assert partial_2 = 12;
-..assert partial_3 = 13;
-
-/* each with different operations */
-each_multiply : each @multiply numbers 2;
-mult_1 : each_multiply[1];
-mult_2 : each_multiply[2];
-mult_3 : each_multiply[3];
-..assert mult_1 = 2;
-..assert mult_2 = 4;
-..assert mult_3 = 6;
-
-/* each with empty table */
-empty_table : {};
-empty_result : each @add empty_table 10;
-empty_length : t.length empty_result;
-..assert empty_length = 0;
-
-/* each with single element table */
-single_table : {key: 5};
-single_result : each @add single_table 10;
-..assert single_result.key = 15;
-
-..out "Minimal each combinator test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/19_embedded_functions.txt b/js/scripting-lang/baba-yaga-c/tests/19_embedded_functions.txt
deleted file mode 100644
index a0e16aa..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/19_embedded_functions.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Simple Unit Test: Embedded Functions in Tables */
-
-/* ===== EMBEDDED ARROW FUNCTIONS ===== */
-
-/* Table with simple arrow functions */
-calculator : {
-    add: x y -> x + y,
-    multiply: x y -> x * y,
-    double: x -> x * 2,
-    square: x -> x * x
-};
-
-/* Test embedded arrow function calls */
-add_result : calculator.add 5 3;
-multiply_result : calculator.multiply 4 6;
-double_result : calculator.double 7;
-square_result : calculator.square 5;
-..assert add_result = 8;
-..assert multiply_result = 24;
-..assert double_result = 14;
-..assert square_result = 25;
-
-/* Table with more complex arrow functions */
-math_ops : {
-    increment: x -> x + 1,
-    decrement: x -> x - 1,
-    negate: x -> -x,
-    double: x -> x * 2
-};
-
-/* Test complex arrow functions */
-inc_result : math_ops.increment 10;
-dec_result : math_ops.decrement 10;
-neg_result : math_ops.negate 5;
-math_double : math_ops.double 7;
-..assert inc_result = 11;
-..assert dec_result = 9;
-..assert neg_result = -5;
-..assert math_double = 14;
-
-/* ===== EMBEDDED WHEN EXPRESSIONS ===== */
-
-/* Table with embedded when expressions */
-classifier : {
-    classify: x -> when x is
-        0 then "zero"
-        1 then "one"
-        2 then "two"
-        _ then "other"
-};
-
-/* Test embedded when expressions */
-zero_class : classifier.classify 0;
-one_class : classifier.classify 1;
-two_class : classifier.classify 2;
-other_class : classifier.classify 42;
-..assert zero_class = "zero";
-..assert one_class = "one";
-..assert two_class = "two";
-..assert other_class = "other";
-
-/* ===== MIXED CONTENT TABLES ===== */
-
-/* Table with mixed data and functions */
-person : {
-    name: "Alice",
-    age: 30,
-    city: "NYC",
-    greet: name -> "Hello, " + name
-};
-
-/* Test mixed table access */
-name : person.name;
-age : person.age;
-greeting : person.greet "Bob";
-..assert name = "Alice";
-..assert age = 30;
-..assert greeting = "Hello, Bob";
-
-/* ===== EDGE CASES ===== */
-
-/* Table with empty function */
-empty_func : {
-    noop: x -> x
-};
-
-/* Test empty function */
-noop_result : empty_func.noop 42;
-..assert noop_result = 42;
-
-/* Table with function that returns table */
-table_returner : {
-    create_person: name age -> {name: name, age: age}
-};
-
-/* Test function that returns table */
-new_person : table_returner.create_person "Bob" 25;
-..assert new_person.name = "Bob";
-..assert new_person.age = 25;
-
-..out "Simple embedded functions test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/19_embedded_functions_simple.txt b/js/scripting-lang/baba-yaga-c/tests/19_embedded_functions_simple.txt
deleted file mode 100644
index a0e16aa..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/19_embedded_functions_simple.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Simple Unit Test: Embedded Functions in Tables */
-
-/* ===== EMBEDDED ARROW FUNCTIONS ===== */
-
-/* Table with simple arrow functions */
-calculator : {
-    add: x y -> x + y,
-    multiply: x y -> x * y,
-    double: x -> x * 2,
-    square: x -> x * x
-};
-
-/* Test embedded arrow function calls */
-add_result : calculator.add 5 3;
-multiply_result : calculator.multiply 4 6;
-double_result : calculator.double 7;
-square_result : calculator.square 5;
-..assert add_result = 8;
-..assert multiply_result = 24;
-..assert double_result = 14;
-..assert square_result = 25;
-
-/* Table with more complex arrow functions */
-math_ops : {
-    increment: x -> x + 1,
-    decrement: x -> x - 1,
-    negate: x -> -x,
-    double: x -> x * 2
-};
-
-/* Test complex arrow functions */
-inc_result : math_ops.increment 10;
-dec_result : math_ops.decrement 10;
-neg_result : math_ops.negate 5;
-math_double : math_ops.double 7;
-..assert inc_result = 11;
-..assert dec_result = 9;
-..assert neg_result = -5;
-..assert math_double = 14;
-
-/* ===== EMBEDDED WHEN EXPRESSIONS ===== */
-
-/* Table with embedded when expressions */
-classifier : {
-    classify: x -> when x is
-        0 then "zero"
-        1 then "one"
-        2 then "two"
-        _ then "other"
-};
-
-/* Test embedded when expressions */
-zero_class : classifier.classify 0;
-one_class : classifier.classify 1;
-two_class : classifier.classify 2;
-other_class : classifier.classify 42;
-..assert zero_class = "zero";
-..assert one_class = "one";
-..assert two_class = "two";
-..assert other_class = "other";
-
-/* ===== MIXED CONTENT TABLES ===== */
-
-/* Table with mixed data and functions */
-person : {
-    name: "Alice",
-    age: 30,
-    city: "NYC",
-    greet: name -> "Hello, " + name
-};
-
-/* Test mixed table access */
-name : person.name;
-age : person.age;
-greeting : person.greet "Bob";
-..assert name = "Alice";
-..assert age = 30;
-..assert greeting = "Hello, Bob";
-
-/* ===== EDGE CASES ===== */
-
-/* Table with empty function */
-empty_func : {
-    noop: x -> x
-};
-
-/* Test empty function */
-noop_result : empty_func.noop 42;
-..assert noop_result = 42;
-
-/* Table with function that returns table */
-table_returner : {
-    create_person: name age -> {name: name, age: age}
-};
-
-/* Test function that returns table */
-new_person : table_returner.create_person "Bob" 25;
-..assert new_person.name = "Bob";
-..assert new_person.age = 25;
-
-..out "Simple embedded functions test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/20_via_operator.txt b/js/scripting-lang/baba-yaga-c/tests/20_via_operator.txt
deleted file mode 100644
index afdc4c3..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/20_via_operator.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Unit Test: Via Operator */
-/* Tests: Function composition using the 'via' keyword */
-
-/* Basic functions for testing */
-double : x -> x * 2;
-increment : x -> x + 1;
-square : x -> x * x;
-
-/* Test 1: Basic via composition */
-result1 : double via increment 5;
-..assert result1 = 12;  /* (5+1)*2 = 12 */
-
-/* Test 2: Chained via composition */
-result2 : double via increment via square 3;
-..assert result2 = 20;  /* (3^2+1)*2 = (9+1)*2 = 20 */
-
-/* Test 3: Function references with via */
-result3 : @double via @increment 4;
-..assert result3 = 10;  /* (4+1)*2 = 10 */
-
-/* Test 4: Right-associative behavior */
-step1 : increment via square 3;  /* (3^2)+1 = 10 */
-step2 : double via increment 3;  /* (3+1)*2 = 8 */
-..assert step1 = 10;
-..assert step2 = 8;
-
-/* Test 5: Precedence - via binds tighter than function application */
-precedence_test : double via increment 5;
-..assert precedence_test = 12;  /* (5+1)*2 = 12 */
-
-..out "Via operator test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt b/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt
deleted file mode 100644
index 79adb69..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements.txt
+++ /dev/null
@@ -1,98 +0,0 @@
-/* Unit Test: Enhanced Case Statements - Fixed Version */
-/* Tests: FizzBuzz and advanced pattern matching with new capabilities */
-
-/* ===== FIZZBUZZ IMPLEMENTATION ===== */
-
-/* Classic FizzBuzz using multi-value patterns with expressions */
-fizzbuzz : n ->
-  when (n % 3) (n % 5) is
-    0 0 then "FizzBuzz"
-    0 _ then "Fizz"
-    _ 0 then "Buzz"
-    _ _ then n;
-
-/* Test FizzBuzz implementation */
-fizzbuzz_15 : fizzbuzz 15;
-fizzbuzz_3 : fizzbuzz 3;
-fizzbuzz_5 : fizzbuzz 5;
-fizzbuzz_7 : fizzbuzz 7;
-
-/* ===== TABLE ACCESS IN WHEN EXPRESSIONS ===== */
-
-/* User data for testing */
-admin_user : {role: "admin", level: 5, name: "Alice"};
-user_user : {role: "user", level: 2, name: "Bob"};
-guest_user : {role: "guest", level: 0, name: "Charlie"};
-
-/* Access control using table access in patterns */
-access_level : user ->
-  when user.role is
-    "admin" then "full access"
-    "user" then "limited access"
-    _ then "no access";
-
-/* Test access control */
-admin_access : access_level admin_user;
-user_access : access_level user_user;
-guest_access : access_level guest_user;
-
-/* ===== FUNCTION CALLS IN WHEN EXPRESSIONS ===== */
-
-/* Helper functions for testing */
-is_even : n -> n % 2 = 0;
-
-/* Number classification using function calls in patterns */
-classify_number : n ->
-  when (is_even n) is
-    true then "even number"
-    false then "odd number";
-
-/* Test number classification */
-even_class : classify_number 4;
-odd_class : classify_number 7;
-
-/* ===== SIMPLIFIED MULTI-VALUE VALIDATION ===== */
-
-/* Simplified validation - avoid complex and expressions */
-validate_name : name -> name != "";
-validate_age : age -> age >= 0;
-
-validate_user : name age ->
-  when (validate_name name) (validate_age age) is
-    true true then "valid user"
-    true false then "invalid age"
-    false true then "invalid name"
-    false false then "invalid user";
-
-/* Test user validation */
-valid_user : validate_user "Alice" 30;
-invalid_age : validate_user "Bob" -5;
-invalid_name : validate_user "" 25;
-
-/* ===== OUTPUT RESULTS ===== */
-
-/* Output FizzBuzz results */
-..out "FizzBuzz Results:";
-..out fizzbuzz_15;
-..out fizzbuzz_3;
-..out fizzbuzz_5;
-..out fizzbuzz_7;
-
-/* Output access control results */
-..out "Access Control Results:";
-..out admin_access;
-..out user_access;
-..out guest_access;
-
-/* Output number classification results */
-..out "Number Classification Results:";
-..out even_class;
-..out odd_class;
-
-/* Output user validation results */
-..out "User Validation Results:";
-..out valid_user;
-..out invalid_age;
-..out invalid_name;
-
-..out "Enhanced case statements test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements_fixed.txt b/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements_fixed.txt
deleted file mode 100644
index 79adb69..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/21_enhanced_case_statements_fixed.txt
+++ /dev/null
@@ -1,98 +0,0 @@
-/* Unit Test: Enhanced Case Statements - Fixed Version */
-/* Tests: FizzBuzz and advanced pattern matching with new capabilities */
-
-/* ===== FIZZBUZZ IMPLEMENTATION ===== */
-
-/* Classic FizzBuzz using multi-value patterns with expressions */
-fizzbuzz : n ->
-  when (n % 3) (n % 5) is
-    0 0 then "FizzBuzz"
-    0 _ then "Fizz"
-    _ 0 then "Buzz"
-    _ _ then n;
-
-/* Test FizzBuzz implementation */
-fizzbuzz_15 : fizzbuzz 15;
-fizzbuzz_3 : fizzbuzz 3;
-fizzbuzz_5 : fizzbuzz 5;
-fizzbuzz_7 : fizzbuzz 7;
-
-/* ===== TABLE ACCESS IN WHEN EXPRESSIONS ===== */
-
-/* User data for testing */
-admin_user : {role: "admin", level: 5, name: "Alice"};
-user_user : {role: "user", level: 2, name: "Bob"};
-guest_user : {role: "guest", level: 0, name: "Charlie"};
-
-/* Access control using table access in patterns */
-access_level : user ->
-  when user.role is
-    "admin" then "full access"
-    "user" then "limited access"
-    _ then "no access";
-
-/* Test access control */
-admin_access : access_level admin_user;
-user_access : access_level user_user;
-guest_access : access_level guest_user;
-
-/* ===== FUNCTION CALLS IN WHEN EXPRESSIONS ===== */
-
-/* Helper functions for testing */
-is_even : n -> n % 2 = 0;
-
-/* Number classification using function calls in patterns */
-classify_number : n ->
-  when (is_even n) is
-    true then "even number"
-    false then "odd number";
-
-/* Test number classification */
-even_class : classify_number 4;
-odd_class : classify_number 7;
-
-/* ===== SIMPLIFIED MULTI-VALUE VALIDATION ===== */
-
-/* Simplified validation - avoid complex and expressions */
-validate_name : name -> name != "";
-validate_age : age -> age >= 0;
-
-validate_user : name age ->
-  when (validate_name name) (validate_age age) is
-    true true then "valid user"
-    true false then "invalid age"
-    false true then "invalid name"
-    false false then "invalid user";
-
-/* Test user validation */
-valid_user : validate_user "Alice" 30;
-invalid_age : validate_user "Bob" -5;
-invalid_name : validate_user "" 25;
-
-/* ===== OUTPUT RESULTS ===== */
-
-/* Output FizzBuzz results */
-..out "FizzBuzz Results:";
-..out fizzbuzz_15;
-..out fizzbuzz_3;
-..out fizzbuzz_5;
-..out fizzbuzz_7;
-
-/* Output access control results */
-..out "Access Control Results:";
-..out admin_access;
-..out user_access;
-..out guest_access;
-
-/* Output number classification results */
-..out "Number Classification Results:";
-..out even_class;
-..out odd_class;
-
-/* Output user validation results */
-..out "User Validation Results:";
-..out valid_user;
-..out invalid_age;
-..out invalid_name;
-
-..out "Enhanced case statements test completed successfully"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/22_parser_limitations.txt b/js/scripting-lang/baba-yaga-c/tests/22_parser_limitations.txt
deleted file mode 100644
index 6d267b8..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/22_parser_limitations.txt
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Unit Test: Parser Limitations for Enhanced Case Statements */
-/* Tests: Multi-value patterns with expressions, table access, function calls */
-
-/* ======================================== */
-/* MAIN BLOCKER: Multi-value patterns with expressions */
-/* ======================================== */
-
-/* Test 1: Basic multi-value with expressions in parentheses */
-test_multi_expr : x y -> 
-  when (x % 2) (y % 2) is
-    0 0 then "both even"
-    0 1 then "x even, y odd"
-    1 0 then "x odd, y even"
-    1 1 then "both odd";
-
-/* Test 2: FizzBuzz-style multi-value patterns */
-fizzbuzz_test : n ->
-  when (n % 3) (n % 5) is
-    0 0 then "FizzBuzz"
-    0 _ then "Fizz"
-    _ 0 then "Buzz"
-    _ _ then n;
-
-/* Test 3: Complex expressions in multi-value patterns */
-complex_multi : x y ->
-  when ((x + 1) % 2) ((y - 1) % 2) is
-    0 0 then "both transformed even"
-    0 1 then "x transformed even, y transformed odd"
-    1 0 then "x transformed odd, y transformed even"
-    1 1 then "both transformed odd";
-
-/* Test 4: Function calls in multi-value patterns */
-is_even : n -> n % 2 = 0;
-is_positive : n -> n > 0;
-
-test_func_multi : x y ->
-  when (is_even x) (is_positive y) is
-    true true then "x even and y positive"
-    true false then "x even and y not positive"
-    false true then "x odd and y positive"
-    false false then "x odd and y not positive";
-
-/* ======================================== */
-/* SECONDARY LIMITATIONS: Table access and function calls */
-/* ======================================== */
-
-/* Test 5: Table access in when expressions */
-user : {role: "admin", level: 5};
-test_table_access : u ->
-  when u.role is
-    "admin" then "admin user"
-    "user" then "regular user"
-    _ then "unknown role";
-
-/* Test 6: Function calls in when expressions */
-test_func_call : n ->
-  when (is_even n) is
-    true then "even number"
-    false then "odd number";
-
-/* Test 7: Complex function calls in when expressions */
-complex_func : n -> (n % 3 = 0) and (n % 5 = 0);
-test_complex_func : n ->
-  when (complex_func n) is
-    true then "divisible by both 3 and 5"
-    false then "not divisible by both";
-
-/* ======================================== */
-/* CONTROL TESTS: Should work with current parser */
-/* ======================================== */
-
-/* Test 8: Simple value matching (control) */
-test_simple : n ->
-  when n is
-    0 then "zero"
-    1 then "one"
-    _ then "other";
-
-/* Test 9: Single complex expressions with parentheses (control) */
-test_single_expr : n ->
-  when (n % 3) is
-    0 then "divisible by 3"
-    _ then "not divisible by 3";
-
-/* Test 10: Multiple simple values (control) */
-test_multi_simple : x y ->
-  when x y is
-    0 0 then "both zero"
-    0 _ then "x zero"
-    _ 0 then "y zero"
-    _ _ then "neither zero";
-
-/* ======================================== */
-/* TEST EXECUTION */
-/* ======================================== */
-
-/* Execute tests that should work */
-result1 : test_simple 5;
-result2 : test_single_expr 15;
-result3 : test_multi_simple 0 5;
-
-/* These should fail with current parser */
-result4 : test_multi_expr 4 6;  /* Should return "both even" */
-result5 : fizzbuzz_test 15;     /* Should return "FizzBuzz" */
-result6 : test_table_access user; /* Should return "admin user" */
-result7 : test_func_call 4;     /* Should return "even number" */
-
-/* Output results */
-..out result1;
-..out result2;
-..out result3;
-..out result4;
-..out result5;
-..out result6;
-..out result7; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/23_minus_operator_spacing.txt b/js/scripting-lang/baba-yaga-c/tests/23_minus_operator_spacing.txt
deleted file mode 100644
index 510b997..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/23_minus_operator_spacing.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Test file for minus operator spacing functionality */
-/* This tests the new spacing-based ambiguity resolution for minus operator */
-
-..out "=== Minus Operator Spacing Tests ===";
-
-/* Basic unary minus tests */
-test1 : -5;
-test2 : -3.14;
-test3 : -10;
-test4 : -42;
-
-/* Basic binary minus tests */
-test5 : 5 - 3;
-test6 : 10 - 5;
-test7 : 15 - 7;
-test8 : 10 - 2.5;
-
-/* Legacy syntax tests (should continue to work) */
-test9 : (-5);
-test10 : (-3.14);
-test11 : (-10);
-test12 : 5-3;
-test13 : 15-7;
-
-/* Complex negative expressions */
-test14 : -10 - -100;
-test15 : -5 - -3;
-test16 : -20 - -30;
-
-/* Assertions to validate behavior */
-..assert test1 = -5;           /* Unary minus: -5 */
-..assert test2 = -3.14;        /* Unary minus: -3.14 */
-..assert test3 = -10;          /* Unary minus: -10 */
-..assert test4 = -42;          /* Unary minus: -42 */
-
-..assert test5 = 2;            /* Binary minus: 5 - 3 = 2 */
-..assert test6 = 5;            /* Binary minus: 10 - 5 = 5 */
-..assert test7 = 8;            /* Binary minus: 15 - 7 = 8 */
-..assert test8 = 7.5;          /* Binary minus: 10 - 2.5 = 7.5 */
-
-..assert test9 = -5;           /* Legacy: (-5) = -5 */
-..assert test10 = -3.14;       /* Legacy: (-3.14) = -3.14 */
-..assert test11 = -10;         /* Legacy: (-10) = -10 */
-..assert test12 = 2;           /* Legacy: 5-3 = 2 */
-..assert test13 = 8;           /* Legacy: 15-7 = 8 */
-
-..assert test14 = 90;          /* Complex: -10 - -100 = 90 */
-..assert test15 = -2;          /* Complex: -5 - -3 = -2 */
-..assert test16 = 10;          /* Complex: -20 - -30 = 10 */
-
-..out "=== Basic Minus Operator Spacing Tests Passed ===";
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/integration_01_basic_features.txt b/js/scripting-lang/baba-yaga-c/tests/integration_01_basic_features.txt
deleted file mode 100644
index de16702..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/integration_01_basic_features.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Integration Test: Basic Language Features */
-/* Combines: arithmetic, comparisons, functions, IO */
-
-..out "=== Integration Test: Basic Features ===";
-
-/* Define utility functions */
-add_func : x y -> x + y;
-multiply_func : x y -> x * y;
-isEven : x -> x % 2 = 0;
-isPositive : x -> x > 0;
-
-/* Test arithmetic with functions */
-sum : add_func 10 5;
-product : multiply_func 4 6;
-doubled : multiply_func 2 sum;
-
-..assert sum = 15;
-..assert product = 24;
-..assert doubled = 30;
-
-/* Test comparisons with functions */
-even_test : isEven 8;
-odd_test : isEven 7;
-positive_test : isPositive 5;
-negative_test : isPositive (-3);
-
-..assert even_test = true;
-..assert odd_test = false;
-..assert positive_test = true;
-..assert negative_test = false;
-
-/* Test complex expressions */
-complex : add_func (multiply_func 3 4) (isEven 10 and isPositive 5);
-
-..assert complex = 13;
-
-..out "Basic features integration test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/integration_02_pattern_matching.txt b/js/scripting-lang/baba-yaga-c/tests/integration_02_pattern_matching.txt
deleted file mode 100644
index a67bf59..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/integration_02_pattern_matching.txt
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Integration Test: Pattern Matching */
-/* Combines: case expressions, functions, recursion, complex patterns */
-
-..out "=== Integration Test: Pattern Matching ===";
-
-/* Recursive factorial with case expressions */
-factorial : n -> 
-  when n is
-    0 then 1
-    _ then n * (factorial (n - 1));
-
-/* Pattern matching with multiple parameters */
-classify : x y -> 
-  when x y is
-    0 0 then "both zero"
-    0 _ then "x is zero"
-    _ 0 then "y is zero"
-    _ _ then when x is
-            0 then "x is zero (nested)"
-            _ then when y is
-                  0 then "y is zero (nested)"
-                  _ then "neither zero";
-
-/* Test factorial */
-fact5 : factorial 5;
-fact3 : factorial 3;
-
-..assert fact5 = 120;
-..assert fact3 = 6;
-
-/* Test classification */
-test1 : classify 0 0;
-test2 : classify 0 5;
-test3 : classify 5 0;
-test4 : classify 5 5;
-
-..assert test1 = "both zero";
-..assert test2 = "x is zero";
-..assert test3 = "y is zero";
-..assert test4 = "neither zero";
-
-/* Complex nested case expressions */
-analyze : x y z -> 
-  when x y z is
-    0 0 0 then "all zero"
-    0 0 _ then "x and y zero"
-    0 _ 0 then "x and z zero"
-    _ 0 0 then "y and z zero"
-    0 _ _ then "only x zero"
-    _ 0 _ then "only y zero"
-    _ _ 0 then "only z zero"
-    _ _ _ then "none zero";
-
-result1 : analyze 0 0 0;
-result2 : analyze 0 1 1;
-result3 : analyze 1 0 1;
-result4 : analyze 1 1 1;
-
-..assert result1 = "all zero";
-..assert result2 = "only x zero";
-..assert result3 = "only y zero";
-..assert result4 = "none zero";
-
-..out "Pattern matching integration test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/integration_03_functional_programming.txt b/js/scripting-lang/baba-yaga-c/tests/integration_03_functional_programming.txt
deleted file mode 100644
index a0e3668..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/integration_03_functional_programming.txt
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Integration Test: Functional Programming */
-/* Combines: first-class functions, higher-order functions, composition */
-
-..out "=== Integration Test: Functional Programming ===";
-
-/* Basic functions */
-double_func : x -> x * 2;
-square_func : x -> x * x;
-add1 : x -> x + 1;
-identity_func : x -> x;
-isEven : x -> x % 2 = 0;
-
-/* Function composition */
-composed1 : compose @double_func @square_func 3;
-composed2 : compose @square_func @double_func 2;
-composed3 : compose @add1 @double_func 5;
-
-..assert composed1 = 18;
-..assert composed2 = 16;
-..assert composed3 = 11;
-
-/* Function piping */
-piped1 : pipe @double_func @square_func 3;
-piped2 : pipe @square_func @double_func 2;
-piped3 : pipe @add1 @double_func 5;
-
-..assert piped1 = 36;
-..assert piped2 = 8;
-..assert piped3 = 12;
-
-/* Function application */
-applied1 : apply @double_func 7;
-applied2 : apply @square_func 4;
-applied3 : apply @add1 10;
-
-..assert applied1 = 14;
-..assert applied2 = 16;
-..assert applied3 = 11;
-
-/* Function selection with case expressions */
-getOperation : type -> 
-  when type is
-    "double" then @double_func
-    "square" then @square_func
-    "add1"   then @add1
-    _        then @identity_func;
-
-/* Test function selection */
-op1 : getOperation "double";
-op2 : getOperation "square";
-op3 : getOperation "add1";
-op4 : getOperation "unknown";
-
-result1 : op1 5;
-result2 : op2 4;
-result3 : op3 7;
-result4 : op4 3;
-
-..assert result1 = 10;
-..assert result2 = 16;
-..assert result3 = 8;
-..assert result4 = 3;
-
-/* Complex functional composition */
-complex : compose @double_func (compose @square_func @add1) 3;
-..assert complex = 32;
-
-..out "Functional programming integration test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/integration_04_mini_case_multi_param.txt b/js/scripting-lang/baba-yaga-c/tests/integration_04_mini_case_multi_param.txt
deleted file mode 100644
index 1814ae5..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/integration_04_mini_case_multi_param.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Integration Test: Multi-parameter case expression at top level */
-
-/* Test multi-parameter case expressions */
-compare : x y -> 
-  when x y is
-    0 0 then "both zero"
-    0 _ then "x is zero"
-    _ 0 then "y is zero"
-    _ _ then "neither zero";
-
-test1 : compare 0 0;
-test2 : compare 0 5;
-test3 : compare 5 0;
-test4 : compare 5 5;
-
-..assert test1 = "both zero";
-..assert test2 = "x is zero";
-..assert test3 = "y is zero";
-..assert test4 = "neither zero";
-
-..out "Multi-parameter case expression test completed"; 
\ No newline at end of file
diff --git a/js/scripting-lang/baba-yaga-c/tests/repl_demo.txt b/js/scripting-lang/baba-yaga-c/tests/repl_demo.txt
deleted file mode 100644
index c96f911..0000000
--- a/js/scripting-lang/baba-yaga-c/tests/repl_demo.txt
+++ /dev/null
@@ -1,180 +0,0 @@
-/* REPL Demo - Comprehensive Language Feature Showcase */
-
-/* ===== BASIC OPERATIONS ===== */
-/* Arithmetic and function application */
-x : 5;
-y : 10;
-sum : x + y;
-product : x * y;
-difference : y - x;
-quotient : y / x;
-
-/* Function application and partial application */
-double : multiply 2;
-triple : multiply 3;
-add5 : add 5;
-result1 : double 10;
-result2 : add5 15;
-
-/* ===== TABLE OPERATIONS ===== */
-/* Array-like tables */
-numbers : {1, 2, 3, 4, 5};
-fruits : {"apple", "banana", "cherry", "date"};
-
-/* Key-value tables */
-person : {name: "Alice", age: 30, active: true, skills: {"JavaScript", "Python", "Rust"}};
-config : {debug: true, port: 3000, host: "localhost"};
-
-/* Mixed tables */
-mixed : {1, name: "Bob", 2, active: false, 3, "value"};
-
-/* Table access */
-first_number : numbers[1];
-person_name : person.name;
-mixed_name : mixed.name;
-
-/* ===== FUNCTIONAL PROGRAMMING ===== */
-/* Higher-order functions */
-doubled_numbers : map @double numbers;
-filtered_numbers : filter @(lessThan 3) numbers;
-sum_of_numbers : reduce @add 0 numbers;
-
-/* Function composition */
-compose_example : double via add5 via negate;
-result3 : compose_example 10;
-
-/* Pipeline operations */
-pipeline : numbers via map @double via filter @(greaterThan 5) via reduce @add 0;
-
-/* ===== PATTERN MATCHING ===== */
-/* When expressions */
-grade : 85;
-letter_grade : when grade {
-    >= 90: "A";
-    >= 80: "B";
-    >= 70: "C";
-    >= 60: "D";
-    default: "F";
-};
-
-/* Complex pattern matching */
-status : "active";
-access_level : when status {
-    "admin": "full";
-    "moderator": "limited";
-    "user": "basic";
-    default: "none";
-};
-
-/* ===== ADVANCED COMBINATORS ===== */
-/* Combinator examples */
-numbers2 : {2, 4, 6, 8, 10};
-evens : filter @(equals 0 via modulo 2) numbers2;
-squares : map @(power 2) numbers2;
-sum_squares : reduce @add 0 squares;
-
-/* Function composition with combinators */
-complex_pipeline : numbers via 
-    map @(multiply 2) via 
-    filter @(greaterThan 5) via 
-    map @(power 2) via 
-    reduce @add 0;
-
-/* ===== TABLE ENHANCEMENTS ===== */
-/* Table transformations */
-users : {
-    user1: {name: "Alice", age: 25, role: "admin"},
-    user2: {name: "Bob", age: 30, role: "user"},
-    user3: {name: "Charlie", age: 35, role: "moderator"}
-};
-
-/* Extract specific fields */
-names : map @(constant "name") users;
-ages : map @(constant "age") users;
-
-/* Filter by conditions */
-admins : filter @(equals "admin" via constant "role") users;
-young_users : filter @(lessThan 30 via constant "age") users;
-
-/* ===== REAL-WORLD EXAMPLES ===== */
-/* Data processing pipeline */
-data : {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
-processed : data via 
-    filter @(greaterThan 5) via 
-    map @(multiply 3) via 
-    filter @(lessThan 25);
-
-/* Configuration management */
-default_config : {port: 3000, host: "localhost", debug: false};
-user_config : {port: 8080, debug: true};
-merged_config : merge default_config user_config;
-
-/* ===== ERROR HANDLING EXAMPLES ===== */
-/* Safe operations */
-safe_divide : (x, y) => when y {
-    0: "Error: Division by zero";
-    default: x / y;
-};
-
-safe_result1 : safe_divide 10 2;
-safe_result2 : safe_divide 10 0;
-
-/* ===== PERFORMANCE EXAMPLES ===== */
-/* Large dataset processing */
-large_numbers : {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
-processed_large : large_numbers via 
-    map @(power 2) via 
-    filter @(greaterThan 50) via 
-    reduce @add 0;
-
-/* ===== DEBUGGING EXAMPLES ===== */
-/* State inspection helpers */
-debug_state : {
-    numbers: numbers,
-    person: person,
-    processed: processed,
-    config: merged_config
-};
-
-/* ===== EXPORT EXAMPLES ===== */
-/* Exportable configurations */
-export_config : {
-    version: "1.0.0",
-    features: {"tables", "functions", "pattern-matching"},
-    examples: {
-        basic: "Basic arithmetic and function application",
-        advanced: "Complex functional pipelines",
-        real_world: "Data processing examples"
-    }
-};
-
-/* ===== COMPREHENSIVE SHOWCASE ===== */
-/* This demonstrates all major language features in one pipeline */
-comprehensive_example : {
-    input: numbers,
-    doubled: map @double numbers,
-    filtered: filter @(greaterThan 3) numbers,
-    composed: double via add5 via negate,
-    pattern_matched: when (length numbers) {
-        > 5: "Large dataset";
-        > 3: "Medium dataset";
-        default: "Small dataset";
-    },
-    final_result: numbers via 
-        map @(multiply 2) via 
-        filter @(greaterThan 5) via 
-        reduce @add 0
-};
-
-/* Output results for verification */
-..out "REPL Demo completed successfully!";
-..out "All language features demonstrated:";
-..out "  ✓ Basic operations and arithmetic";
-..out "  ✓ Table literals and access";
-..out "  ✓ Function application and composition";
-..out "  ✓ Pattern matching with when expressions";
-..out "  ✓ Higher-order functions and combinators";
-..out "  ✓ Table transformations and pipelines";
-..out "  ✓ Real-world data processing examples";
-..out "  ✓ Error handling and safe operations";
-..out "  ✓ Performance and debugging features"; 
\ No newline at end of file