DIPs | Juleps | |
---|---|---|
10 | 2 | |
156 | 67 | |
0.6% | - | |
5.8 | 0.0 | |
11 days ago | almost 4 years ago | |
D | ||
Creative Commons Zero v1.0 Universal | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
DIPs
-
The OpenD Programming Language (fork of D)
The reference compiler, DMD, is open source: https://github.com/dlang/dmd
But they don't accept just any Pull Request or features the community submits, understandably. There's a process called DIP for language improvements: https://github.com/dlang/DIPs/blob/master/DIPs/README.md
However, by some accounts, it's really hard to get anything through.
Given D already has so many feature, I find that to be a good thing , to be honest, by not everyone agrees, of course.
-
Mojo 🔥: A programming language for all AI developers
Borrow checking does not require lifetime annotations. D is a precedent there. Look at DIP25 and DIP1000.
-
Carbon Language: An experimental successor to C++
There's no "nogc" containers in phobos, or allocators, or an idiomatic way to do safe manual memory management. It expects you to do it the C way. It's also impossible to implement some things because of how D does moving. There's a DIP in the works to change how moving works, but it's overly complicated and bound to introduce even more bugs. https://github.com/dlang/DIPs/blob/master/DIPs/DIP1040.md
-
Is there any other programming language aside from C++ that has move semantics feature available?
D Is drafting up move semantics to interface better with C++. Although they're going a bit the Rust way in the current proposal. D has tried a couple of other strategies, but unique pointers and C++ interoperability kind of forced the hand of Walter Bright.
- Is D backwards compatible?
- PSC #025 2021-06-18 minutes - massive update on RFC processes and RFCs in flight
- Three situations regarding memory
- DIP1040: Copying, Moving, and Forwarding
-
Things that you miss from your previous language?
String interpolation is coming: https://github.com/dlang/DIPs/blob/master/DIPs/DIP1036.md
- System variables: Protecting data for memory safety in unsafe code
Juleps
What are some alternatives?
crubit
Catlab.jl - A framework for applied category theory in the Julia language
compact_str - A memory efficient string type that can store up to 24* bytes on the stack
IRTools.jl - Mike's Little Intermediate Representation
peps - Python Enhancement Proposals
JET.jl - An experimental code analyzer for Julia. No need for additional type annotations.
intellij-dlanguage - Intellij Plugin for the D Programming Language
SumTypes.jl - An implementation of Sum types in Julia
proposals - ✍️ Tracking the status of Babel's implementation of TC39 proposals (may be out of date)
glow - Compiler for Neural Network hardware accelerators
carbon-lang - Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)