Initial commit: Pi calculation benchmark with 34 languages
- Added implementations for: bash, brainfuck, c, cpp, crystal, csharp, d, dart, elixir, erlang, fortran, go, haskell, java, javascript, julia, kotlin, objective-c, scala, typescript, lua, nim, odin, perl, php, python, r, ruby, rust, swift, zig, assembly, vimscript, wolfram - All implementations use Machin's formula: π/4 = 4*arctan(1/5) - arctan(1/239) - Build system with ./build.sh, test system with ./test.sh - Performance testing with ./run_all.sh - Comprehensive README.md explaining performance differences - Test framework verifies correctness against known π values
This commit is contained in:
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Elixir Build Script
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
cd "$SCRIPT_DIR"
|
||||
|
||||
echo "=== Elixir Build ==="
|
||||
echo ""
|
||||
|
||||
# Elixir är ett interpreterat språk, ingen kompilering behövs
|
||||
# Skapa wrapper script
|
||||
|
||||
mkdir -p bin
|
||||
cat > bin/print_hej << 'EOF'
|
||||
#!/bin/bash
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
cd "$SCRIPT_DIR"
|
||||
elixir src/print_hej.exs "$@"
|
||||
EOF
|
||||
chmod +x bin/print_hej
|
||||
|
||||
echo "✓ Ingen kompilering behövs för Elixir"
|
||||
echo " Använder Elixir interpreter"
|
||||
echo ""
|
||||
echo "Wrapper script skapad: bin/print_hej"
|
||||
echo ""
|
||||
echo "För att köra:"
|
||||
echo " ./bin/print_hej [decimaler]"
|
||||
Executable
+19
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Elixir Test Script
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
||||
cd "$SCRIPT_DIR"
|
||||
|
||||
echo "=== Elixir Test ==="
|
||||
echo ""
|
||||
|
||||
# Testa pi-beräkning med olika antal decimaler
|
||||
for decimals in 1 2 5 10 100; do
|
||||
result=$(./bin/print_hej $decimals 2>/dev/null)
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "✓ $decimals decimaler: $result"
|
||||
else
|
||||
echo "✗ $decimals decimaler misslyckades"
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user