Our great sponsors
ispc | Beef | |
---|---|---|
4 | 26 | |
2,396 | 2,358 | |
0.8% | 0.7% | |
9.5 | 9.4 | |
5 days ago | 4 days ago | |
C++ | C++ | |
BSD 3-clause "New" or "Revised" License | 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.
ispc
-
Implementing a GPU's Programming Model on a CPU
This so-called GPU programming model has existed many decades before the appearance of the first GPUs, but at that time the compilers were not so good like the CUDA compilers, so the burden for a programmer was greater.
As another poster has already mentioned, there exists a compiler for CPUs which has been inspired by CUDA and which has been available for many years: ISPC (Implicit SPMD Program Compiler), at https://github.com/ispc/ispc .
NVIDIA has the very annoying habit of using a lot of terms that are different from those that have been previously used in computer science for decades. The worst is that NVIDIA has not invented new words, but they have frequently reused words that have been widely used with other meanings.
SIMT (Single-Instruction Multiple Thread) is not the worst term coined by NVIDIA, but there was no need for yet another acronym. For instance they could have used SPMD (Single Program, Multiple Data Stream), which dates from 1988, two decades before CUDA.
Moreover, SIMT is the same thing that was called "array of processes" by C.A.R. Hoare in August 1978 (in "Communicating Sequential Processes"), or "replicated parallel" by Occam in 1985 or "PARALLEL DO" by "OpenMP Fortran" in 1997-10 or "parallel for" by "OpenMP C and C++" in 1998-10.
The only (but extremely important) innovation brought by CUDA is that the compiler is smart enough so that the programmer does not need to know the structure of the processor, i.e. how many cores it has and how many SIMD lanes has each core. The CUDA compiler distributes automatically the work over the available SIMD lanes and available cores and in most cases the programmer does not care whether two executions of the function that must be executed for each data item are done on two different cores or on two different SIMD lanes of the same core.
-
SIMD intrinsics and the possibility of a standard library solution
ISPC: https://github.com/ispc/ispc
-
Prefix Sum with SIMD
Have you looked at [ISPC - Intel SPMD Program Compiler][0]?
[0]: https://github.com/ispc/ispc
- Duff’s Device in 2021
Beef
- Odin Programming Language
-
Crystal 1.9.1 Is Released
Is it really a one man show? It looks like Beef Lang has excellent home page https://www.beeflang.org/ and I never heard about it until now.
-
I'm sorry honey, it's just not working out. Our relationship worked when we were younger, but we're both older now and we've grown apart. This issue is to fully eliminate LLVM, Clang, and LLD libraries from the Zig project.
Jai is dead, this is the year of Beef from the genius behind Plants vs. Zombies and Bookworm Adventures Deluxe.
-
Transpiler to C++
On one hand, I feel there are so many similar languages out there {(Val, Vala, Vale, Corroded Iron, Beef, Zig, Carbon, cppfront, Jai)...}, that we don't need yet another, but also I encourage further thought because it may be inspiration for future improvements to C++ itself. The number one faux pas I see them make is trying to directly compete with C++ (inventing their own type system, their standard library, their build system, own package format...), whereas your (by its very nature as a transpiler) embraces C++.
-
Sharing Saturday #428
This project is an exploration of two things. Firstly I wanted to dig into the exciting new language and IDE, Beef. If you're the low-level code oriented type I _highly_ recommend checking it out. Beef is a systems-level language (like C/C++) that borrows heavily from C# but ditches the garbage collector. It comes with a wonderful IDE and a great debugger and just an excellent work flow. Check it out at https://www.beeflang.org/.
- Suggest an interesting language for me to try out, that I can use for 2D Games. Something that I might not have considered, or is not particularly well known.
- Carbon - an experimental C++ successor language
-
Not well known programming languages with interesting features?
[Beef](https://www.beeflang.org/): memory management with first-class allocators.
-
Why are you a C/C++ developer?
Had a very slow computer at the time and needed to convert lots of pixels and emulate a little processor (SPC700). So I wrote the utilities in x86 assembly. Eventually I got tired of that and decided to move up the chain some 😅... Today I still write using C++ because nothing else has really come along that satisfies my desire for low level control and perf, short of possibly Beef or Rust (but it's too obnoxiously opinionated for me, and the community seems allergic to useability/interoperability improvements, with the arrogant tone coming across as "well why don't you just rewrite it from scratch in pure Rust" 🤦♀️ - that said, I'd love to adopt a few features from it into C++).
-
Creator of SerenityOS announces new Jakt programming language effort
Beef https://www.beeflang.org/
What are some alternatives?
Odin - Odin Programming Language
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
Vale - Compiler for the Vale programming language - http://vale.dev/
carbon-lang - Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)
highway - Performance-portable, length-agnostic SIMD with runtime dispatch
juCi++
LWDR - LightWeight D Runtime targeting ARM Cortex CPUs
rust - Empowering everyone to build reliable and efficient software.
v-mode - 🌻 An Emacs major mode for the V programming language.
wonkey - Wonkey is a easy to learn, oriented object, modern and cross-platform programming language for creating cross-platform video games. Pull requests welcome! Join community https://discord.gg/awfuRtZay7
AHHH - AHHH: a programming language for the dreadful
v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io