chapel
chapel copied to clipboard
a Productive Parallel Programming Language
Consider the following pieces of code: udf2.chpl: ```chpl module Foo { extern proc chpl_task_getRequestedSubloc(): int(32); extern proc printf(s...); export proc add_int32(ref result: [] int(32), const ref a: [] int(32), const...
This draft PR adds a `DeviceAttributes` type that includes a number of parenless proc functions to query various attributes about the GPU. (for example: max threads per block, device name,...
```chpl use BlockDist; class C {} var Arr = blockDist.createArray(1..10, unmanaged C); writeln(Arr); ``` produces ``` $CHPL_HOME/modules/dists/BlockDist.chpl:1016: error: cannot default-initialize the array A because it has a non-nilable element type...
### Summary of Problem Our [Dockerfile](https://github.com/chapel-lang/chapel/blob/main/Dockerfile) for Chapel does not include a `CMD` nor an `ENTRYPOINT`. From the Docker docs: https://docs.docker.com/reference/dockerfile/#understand-how-cmd-and-entrypoint-interact > Dockerfile should specify at least one of `CMD`...
This makes them not just simpler, but focuses on the URLs we prefer for SEO.
Adds a linter rule to `chplcheck` for lines longer than 80 characters Limitations - Does not check comments (since comments don't have locations) - Warns on a per-node basis, not...
The following python code for `chapel-py` results in a sefault ```python import chapel a = chapel.AstNode() ``` This is not semantically valid code, since you cannot create AstNodes from `chapel-py`....
The following code does not correctly call the destructors for the objects allocated by the iterators and may result in leaked memory ```chapel class C { var id: int; proc...
PR # #25913 added `CHPL_LLVM_GCC_INSTALL_DIR` as an alternative to `CHPL_LLVM_GCC_PREFIX`. We do infer `CHPL_LLVM_GCC_PREFIX` if it is not set. Inferring `CHPL_LLVM_GCC_PREFIX` was added originally in #11615 and PR #18551 updated...
In the following program, a class is inherited from but it is not in scope ```chapel module Other { class CC {} } module M { class C: CC {}...