diff --git a/fibonacci/fish/code.fish b/fibonacci/fish/code.fish new file mode 100755 index 00000000..52a953bc --- /dev/null +++ b/fibonacci/fish/code.fish @@ -0,0 +1,18 @@ +#!/usr/bin/env fish + +function fibonacci + if test $argv[1] -eq 0 + echo 0 + else if test $argv[1] -eq 1 + echo 1 + else + echo (fibonacci (math $argv[1] - 1)) + (fibonacci (math $argv[1] - 2)) + end +end + +set -l u (math $argv[1] - 1) +set -l r 0 +for i in (seq 0 $u) + set r (math $r + (fibonacci $i)) +end +echo $r diff --git a/loops/fish/code.fish b/loops/fish/code.fish new file mode 100755 index 00000000..2c84071e --- /dev/null +++ b/loops/fish/code.fish @@ -0,0 +1,16 @@ +#!/usr/bin/env fish + +set -l u (math $argv[1]) +set -l r (math (random) % 10000) +set -l a +for i in (seq 10000) + set -a a 0 +end + +for i in (seq 10000) + for j in (seq 100000) + set a[$i] (math $a[$i] + $j % $u) + end + set a[$i] (math $a[$i] + $r) +end +echo $a[$r] diff --git a/run.sh b/run.sh index 6f8430ee..d0fcc49b 100755 --- a/run.sh +++ b/run.sh @@ -54,3 +54,4 @@ run "AWK" "awk -f ./awk/code.awk 40" run "MAWK" "mawk -f ./awk/code.awk 40" run "Clojure" "java -cp clojure/classes:$(clojure -Spath) code 40" run "Babashka" "bb -cp clojure -m code 40" +run "Fish" "./fish/code.fish 40"