Any hints about what makes Chapel special and useful. A short section with links to relevant parts of the full documentation that highlights what one might use Chapel for. I saw some nice features but nothing that really struck me as decisive.
As gberger says, that should go at the top of the page.
I don't have the time to read the whole thing right now and it's a first time I'm seeing Chapel, so I may be wrong.
After skimming the page it looks rather similar to Nim. Chapel looks like it wants to be a systems programming language with special focus on concurrency and parallel computation. It's statically typed with local type inference. It supports product types with tuples, but I don't see sum types or (G)ADTs in general. It has numeric types with explicit range, like Ada or Nim (that is without dependent types). It supports generics, with a very lightweight syntax (ie. lack of any syntax). Supports in/out/inout parameters like C#. Supports operator overloading. Has iterators. Supports class-based OO with destructors (so probably is not GCed?). Has coroutines as a main concurrency construct. It has "sync" keyword, but I don't have the time to look at it in depth to know how it works.
It looks like it's somewhere between C and Java, like Nim, Rust and a couple other languages. From a quick glance I can't tell if the language is garbage collected and I don't really know how the concurrency and parallelism really work in the language. Still, it looks rather nice and I suspect you'd use it any time you otherwise use C with pthreads.
At least in my exposure, Chapel is a language built for partitioned global address space (PGAS) cluster computing. So instead of a distributed model like MPI where each node has its own memory and you pass messages, or a shared memory model like OpenMP where you use threads and rely on the hardware to produce consistent memory state, PGAS presents all the memory in the cluster as an address space with special partition semantics that you write to to share data. The actual transfer between physical memory partitions is transparent to the programmer and largely handled by the fabric.
It's a language for high performance computing (HPC). I think it's the only one that survived out of three languages competing at the time: Fortress (Sun), Chapel (Cray), and X10.
Any hints about what makes Chapel special and useful. A short section with links to relevant parts of the full documentation that highlights what one might use Chapel for. I saw some nice features but nothing that really struck me as decisive.
As gberger says, that should go at the top of the page.