compiler-explorer
{fmt}
compiler-explorer | {fmt} | |
---|---|---|
210 | 167 | |
16,883 | 21,169 | |
2.2% | 1.5% | |
9.8 | 9.8 | |
2 days ago | 5 days ago | |
TypeScript | C++ | |
BSD 2-clause "Simplified" License | MIT |
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.
compiler-explorer
-
Sonos CEO Patrick Spence steps down after app update debacle
I have, it's called Visual Studio Code and I ditched my old native editor(s) for it.
I'd even suggest that the fact that it's JS based has significantly changed the tech world because the editor itself will run in a browser so it's here https://godbolt.org/ , and here https://codesandbox.io, and here https://www.postman.com/, and here https://aws.amazon.com/pm/cloud9/ and 100s or 1000s of other sites.
-
What Did Ada Lovelace's Program Actually Do? (2018)
I'm told the story of Godbolt[0] is similar.
I think that he has an ID here, so we could probably ask him. It's a very good tool.
[0] https://godbolt.org
- Learn Rust the Dangerous Way
- Compiler Explorer
-
Improve an algorithm performance step by step
The GodBolt compiler explorer is also useful for comparing the assembly function code between C++ and Rust.
-
std::array in C++ isn't slower than array in C
Using several operations as examples, let's see what assembler the compiler can get. We're using the latest Clang for the x86-64 platform available on Compiler Explorer.
-
Google's New Pipe Syntax in SQL
it is also pretty good at decompiling - try feeding the output of https://godbolt.org/ back to an LLM
-
Initial details about why the CrowdStrike's CSAgent.sys crashed
As a very first step, you may start playing with https://godbolt.org/ to see how code is translated into lower-level instructions.
{fmt}
-
How is my Browser blocking RWX execution?
it's probably not chrome because they are using this third party library: (https://github.com/fmtlib/fmt). also, it might be that this sink is actually meant to write a message to the console but due to configuration options its a noop.
-
Move semantics in Rust, C++, and Hylo
Some people are noticing that println is very new. But there already is https://github.com/fmtlib/fmt and it has been there quite a long time.
-
The C23 edition of Modern C is now available for free
It was emulated using horrible macros: https://github.com/fmtlib/fmt/blob/8f5e07656e25ec64ec7c843f0.... IIRC some early versions of `std::tuple` did something similar.
- Fmt: A Modern and Lightweight C++ Formatting Library
- A Modern Formatting Library
-
C++ left arrow operator (2016)
Continuation passing monads form the basis of a perfectly valid and usable software architecture and programming pattern.
In the case of ostream and operator<<, this pattern reduces the number of intermediate objects that would otherwise be constructed.
If you object to iostream on religious or stylistic grounds, there's always fmt which is more like Go or Python string interpolation.[0]
0. https://fmt.dev
-
C++ Game Utility Libraries: for Game Dev Rustaceans
GitHub repo: fmtlib/fmt
-
Creating k-NN with C++ (from Scratch)
cmake_minimum_required(VERSION 3.5) project(knn_cpp CXX) # Set up C++ version and properties include(CheckIncludeFileCXX) check_include_file_cxx(any HAS_ANY) check_include_file_cxx(string_view HAS_STRING_VIEW) check_include_file_cxx(coroutine HAS_COROUTINE) set(CMAKE_CXX_STANDARD 20) set(CMAKE_BUILD_TYPE Debug) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) # Copy data file to build directory file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/iris.data DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) # Download library usinng FetchContent include(FetchContent) FetchContent_Declare(matplotplusplus GIT_REPOSITORY https://github.com/alandefreitas/matplotplusplus GIT_TAG origin/master) FetchContent_GetProperties(matplotplusplus) if(NOT matplotplusplus_POPULATED) FetchContent_Populate(matplotplusplus) add_subdirectory(${matplotplusplus_SOURCE_DIR} ${matplotplusplus_BINARY_DIR} EXCLUDE_FROM_ALL) endif() FetchContent_Declare( fmt GIT_REPOSITORY https://github.com/fmtlib/fmt.git GIT_TAG 7.1.3 # Adjust the version as needed ) FetchContent_MakeAvailable(fmt) # Add executable and link project libraries and folders add_executable(${PROJECT_NAME} main.cc) target_link_libraries(${PROJECT_NAME} PUBLIC matplot fmt::fmt) aux_source_directory(lib LIB_SRC) target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) target_sources(${PROJECT_NAME} PRIVATE ${LIB_SRC}) add_subdirectory(tests)
-
Optimizing the unoptimizable: a journey to faster C++ compile times
Good catch, thanks! Fixed now. This explains why the difference was kinda low compared to another benchmark: https://github.com/fmtlib/fmt?tab=readme-ov-file#compile-tim....
-
Learn Modern C++
> This is from C++23, right?
std::println is, yes.
> I wonder how available this is within compilers
https://en.cppreference.com/w/cpp/compiler_support says clang, gcc, and msvc all support it, though I don't know how recent those versions are off the top of my head.
In my understanding, with this specific feature, if you want a polyfill for older compilers, or to use some more cutting-edge features that haven't been standardized yet, https://github.com/fmtlib/fmt is available to you.
What are some alternatives?
format-benchmark - A collection of formatting benchmarks
Better Enums - C++ compile-time enum to string, iteration, in a single header file
papers - ISO/IEC JTC1 SC22 WG21 paper scheduling and management
ZXing - ZXing ("Zebra Crossing") barcode scanning library for Java, Android
rustc_codegen_gcc - libgccjit AOT codegen for rustc
spdlog - Fast C++ logging library.
arewefastyet - arewefastyet.rs - benchmarking the Rust compiler
FastFormat - The fastest, most robust C++ formatting library
rust - Empowering everyone to build reliable and efficient software.
Serial Communication Library - Cross-platform, Serial Port library written in C++
bubblewrap - Low-level unprivileged sandboxing tool used by Flatpak and similar projects
Scintilla