NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.35k stars 14.31k forks source link

Package request: lfortran #305403

Open 11raob opened 7 months ago

11raob commented 7 months ago

LFORTRAN

Metadata


Add a :+1: reaction to issues you find important.

11raob commented 7 months ago

LFortran is a modern open-source (BSD licensed) interactive Fortran compiler built on top of LLVM. It can execute user’s code interactively to allow exploratory work (much like Python, MATLAB or Julia) as well as compile to binaries with the goal to run user’s code on modern architectures such as multi-core CPUs and GPUs.

11raob commented 7 months ago

Full Fortran 2018 parser LFortran can parse any Fortran 2018 syntax to AST (Abstract Syntax Tree) and format it back as Fortran source code (lfortran fmt).

11raob commented 7 months ago

Interactive, Jupyter support LFortran can be used as a Jupyter kernel, allowing Python/Julia-style rapid prototyping and an exploratory workflow (conda install jupyter lfortran). It can also be used from the command-line with an interactive prompt (REPL).

11raob commented 7 months ago

Create executables It can create executables just like other Fortran compilers.

11raob commented 7 months ago

Runs on Linux, Mac, Windows and WebAssembly All four platforms are regularly tested by our CI.

11raob commented 7 months ago

UNDER DEVELOPMENT

11raob commented 7 months ago

Full Fortran 2018 support The parser can now parse all of Fortran 2018 syntax to AST. A smaller subset can be transformed into ASR and even smaller subset compiled via LLVM to machine code. We are now working on extending the subset that LFortran can fully compile until we reach full Fortran 2018 support.