Skip to content

Explore adding Julia #136

Description

@leon0399

Why Julia

Julia is designed for high-performance scientific computing with JIT compilation via LLVM. It claims to solve the "two-language problem" — write like Python, run like C. The linpack benchmark would be a particularly interesting comparison given Julia's strength in numerical computing.

Key considerations

  • JIT-compiled — first run includes compilation time, need to account for warmup
  • Strong in numerical/linear algebra workloads (linpack will be telling)
  • Dynamic typing with optional type annotations
  • Package manager is built-in (Pkg)

Implementation

Implement all 7 benchmark algorithms following the reference implementations (PHP, C++, Python):

  • collatz/MaxSequence
  • linpack/Linpack
  • mandelbrot/Simple
  • primes/Atkin
  • primes/Simple
  • recursion/Tak
  • treap/Naive

Setup:

  • Create langs/julia/benchmark.yml
  • Create docker/julia/Dockerfile
  • Update README.md implementation table

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions