aboutsummaryrefslogtreecommitdiffhomepage
path: root/samples/rosetta
diff options
context:
space:
mode:
Diffstat (limited to 'samples/rosetta')
-rw-r--r--samples/rosetta/ackermann_function.bruijn (renamed from samples/rosetta/ackermann-function.bruijn)0
-rw-r--r--samples/rosetta/binary_search.bruijn2
-rw-r--r--samples/rosetta/halt_and_catch_fire.bruijn4
-rw-r--r--samples/rosetta/prime_decomposition.bruijn11
-rw-r--r--samples/rosetta/test_a_function.bruijn2
5 files changed, 16 insertions, 3 deletions
diff --git a/samples/rosetta/ackermann-function.bruijn b/samples/rosetta/ackermann_function.bruijn
index c0689f1..c0689f1 100644
--- a/samples/rosetta/ackermann-function.bruijn
+++ b/samples/rosetta/ackermann_function.bruijn
diff --git a/samples/rosetta/binary_search.bruijn b/samples/rosetta/binary_search.bruijn
index 87f01ba..d1cddc1 100644
--- a/samples/rosetta/binary_search.bruijn
+++ b/samples/rosetta/binary_search.bruijn
@@ -1,6 +1,6 @@
:import std/Combinator .
-:import std/Math .
:import std/List .
+:import std/Math .
:import std/Option .
binary-search [y [[[[[2 <? 3 none go]]]]] (+0) --(∀0) 0]
diff --git a/samples/rosetta/halt_and_catch_fire.bruijn b/samples/rosetta/halt_and_catch_fire.bruijn
index e053451..163ec11 100644
--- a/samples/rosetta/halt_and_catch_fire.bruijn
+++ b/samples/rosetta/halt_and_catch_fire.bruijn
@@ -1,3 +1,5 @@
-:test ([[0]]) ([[1]])
+# invalid test
+# :test ([[0]]) ([[1]])
+# or infinite loop
main [[0 0] [0 0]]
diff --git a/samples/rosetta/prime_decomposition.bruijn b/samples/rosetta/prime_decomposition.bruijn
new file mode 100644
index 0000000..0287889
--- /dev/null
+++ b/samples/rosetta/prime_decomposition.bruijn
@@ -0,0 +1,11 @@
+:import std/Combinator .
+:import std/List .
+:import std/Math .
+
+factors \divs primes
+ divs y [[&[[&[[3 ⋅ 3 >? 4 case-1 (=?0 case-2 case-3)]] (quot-rem 2 1)]]]]
+ case-1 4 >? (+1) {}4 empty
+ case-2 3 : (5 1 (3 : 2))
+ case-3 5 4 2
+
+main [factors <$> ({ (+42) → (+50) })]
diff --git a/samples/rosetta/test_a_function.bruijn b/samples/rosetta/test_a_function.bruijn
index dc76eeb..f4c05b2 100644
--- a/samples/rosetta/test_a_function.bruijn
+++ b/samples/rosetta/test_a_function.bruijn
@@ -3,4 +3,4 @@
main [<~>0 =? 0]
:test (main "tacocat") ([[1]])
-:test (main "bruijn") ([[1]])
+:test (main "bruijn") ([[0]])