Chapel (programming language)
| Chapel | |
|---|---|
| Paradigm | Object-oriented Partitioned global address space Parallel programming |
| Designed by | David Callahan, Hans Zima, Brad Chamberlain, John Plevyak |
| Developer | Hewlett Packard Enterprise (previously Cray Inc.) |
| First appeared | 2009 |
| Stable release | 2.6.0
/ September 18, 2025 |
| Typing discipline | Static, inferred |
| Platform | Multiplatform, including Amazon Web Services, HPE Cray EX |
| OS | Mac OS, Linux, POSIX, Windows (with Cygwin), NetBSD |
| License | Apache License 2.0 |
| Filename extensions | .chpl |
| Website | chapel-lang |
| Influenced by | |
| Ada, C#, C, Fortran, C++, Java, HPF, ZPL, Cray MTA / XMT extensions to C and Fortran. | |
Chapel (originally the Cascade High Productivity Language or CHPL) is a parallel programming language created by Cray as part of the Cray Cascade project, a participant in DARPA's High Productivity Computing Systems (HPCS) program. It was developed as an open source project, under version 2 of the Apache license.
The Chapel compiler is written in C and C++ (C++14). The backend (i.e. the optimizer) is LLVM, written in C++. Python 3.7 or newer is required for some optional components such as Chapel’s test system and c2chapel, a tool to generate C bindings for Chapel. By default Chapel compiles to binary executables, but it can also compile to C code. Chapel code can be compiled to libraries to be callable from C, or Fortran or e.g. Python also supported. Chapel supports GPU programming through code generation for NVIDIA and AMD graphics processing units.