printf
cppfront
printf | cppfront | |
---|---|---|
4 | 86 | |
365 | 5,103 | |
- | - | |
0.0 | 9.5 | |
3 months ago | 8 days ago | |
C | C++ | |
MIT 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.
printf
-
MISRA C
From my experience, maintaining a standalone/embedded printf library - MISRA is a combination of two things: Common-sense rules, and pain-in-the-ass rules. Example of the latter: Avoiding implementation-defined types like `int` in places where my code doesn't care about what sizeof(int) is.
I was able to accommodate most (?) of the MISRA rules (https://github.com/eyalroz/printf/issues/77), but mine is just a small library, so I don't know how restrictive they would be for a larger codebase.
-
Sprintf without C library
Note that https://github.com/eyalroz/printf is the fork of mpaland that is being maintained.
-
What is the most efficient way to create an ASCII string from multiple types?
Take a look at an embedded focused sprintf like this one and measure: https://github.com/eyalroz/printf
-
Cppfront, Herb Sutter's proposal for a new C++ syntax
> I have some bad C++ experienced, and I know enough programmers I respect who stick to C over C++.
Do you know such people who work on large software systems, as opposed to, say, micro-controller firmware, or kernel drivers and such?
(Asking as a person who maintains an important(ish) C library for embedded coders: https://github.com/eyalroz/printf)
cppfront
-
Compilation of gripping C++ conference talks from 2023
C++23 is done. But C++ is not! In this talk, the author shares his personal perspectives on an ongoing and very active evolution of C++, updates on his cppfront experimental compiler, and why compatibility is essential to the further success of the C++ development.
- Show HN: a Rust Based CLI tool 'imgcatr' for displaying images
- Cpp2 and cppfront – An experimental 'C++ syntax 2' and its first compiler
-
C++ Safety, in Context
https://github.com/hsutter/cppfront
But his side project at Microsoft didn't gain traction with gcc, clang, etc and everybody else in the industry. So at this point, the C++ committee will be perceived as "so far behind" ... because there's nothing for them to vote on.
- Cppfront: Experimental C++ Syntax 2 –> Syntax 1 compiler
- Odin Programming Language
- Cppfront
-
C++ Should Be C++
C++ has major flaws that cannot be rectified without serious breaking changes. With that said, Herb has been experimenting with a new cpp frontend with sane defaults [1].
In my opinion, the world is on standby until Anders Hejlsberg feels like tackling a modern, next generation systems language.
[1] https://github.com/hsutter/cppfront
- Why is the committee so reluctant to add new features to the language itself instead of stuffing them into the STL?
- C++ Lambda Idioms [video]
What are some alternatives?
nanoprintf - The smallest public printf implementation for its feature set.
carbon-lang - Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)
gx - A Go->C++transpiler meant for data-oriented gameplay and application programming especially for WebAssembly. Using this mostly in the context of specific personal projects and heavily focusing the feature set on those. Used in my Raylib gamejam project: https://github.com/nikki93/raylib-5k -- also being used to develop a private longer term game project and a note-taking app.
jakt - The Jakt Programming Language
callback_printf - callback_printf allows the implementation of portable sprintf, snprintf, vsprintf and vsnprintf like output functions. The code includes wrappers for those functions. It supports all formats of the C 11 standard. wchar_t arguments and strings are printed as UTF-8. It's pretty fast, threadsafe and has no dependencies to other libraries.
serenity - The Serenity Operating System 🐞
printf - Tiny, fast, non-dependent and fully loaded printf implementation for embedded systems. Extensive test suite passing.
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
exotracker-cpp
pwned - Simple C++ code for simple tasks
LoopModels - "Full speed or nothing." - James Hetfield