Best of C ProgrammingOctober 2024

  1. 1
    Article
    Avatar of communityCommunity Picks·2y

    Kate: A Refreshing Open-Source Code Editor to Replace Boring Options

    Kate, an open-source code editor developed by KDE, offers a robust set of features including syntax highlighting, auto-indentation, and a multi-document interface. Available for Linux, Windows, and macOS, it provides flexible multitasking with split windows and a built-in terminal using Konsole. It is a compelling alternative to popular editors like Visual Studio Code.

  2. 2
    Article
    Avatar of c_communityC/C++ Community·2y

    Rules and Regulations

    Adhere to squad rules: posts should be informative, valuable, and C/C++ related. Unfit posts may be deleted, affecting reputation. Be friendly, assist beginners, and use proper markdown for questions.

  3. 3
    Article
    Avatar of hnHacker News·2y

    The Fastest Mutexes

    Cosmopolitan Libc stands out not only for its cross-platform capabilities but also for its highly efficient mutex library. Benchmarks reveal Cosmopolitan mutexes significantly outperform Microsoft's SRWLOCK on Windows, glibc on Linux, and show competitive results on MacOS. The success is attributed to the integration of nsync, developed by a Google engineer. Examples of source code demonstrate implementation, and real-world applications highlight its robustness in handling high contention efficiently.

  4. 4
    Article
    Avatar of bunBun·2y

    How Bun supports V8 APIs without using V8 (part 1)

    Bun faces challenges in supporting Node.js native modules that use V8 APIs because Bun uses JavaScriptCore instead of V8. Despite these differences, Bun has begun to implement many of V8's C++ APIs using JavaScriptCore, allowing popular Node.js native modules to work in Bun. The differences in garbage collection, value representation, and value lifetime between JavaScriptCore and V8 are significant. The post provides a detailed look into JavaScriptCore and V8 API examples, value representations, and the complexities of implementing V8 functions with JavaScriptCore. It also delves into the representation of JavaScript values in both engines and the concept of tagged pointers in V8.

  5. 5
    Article
    Avatar of c_communityC/C++ Community·2y

    new in programming

    A new student with a background in biology and pre-engineering is starting their first semester at university and seeking tips and an outline of basic concepts for learning C++.

  6. 6
    Article
    Avatar of lobstersLobsters·2y

    Coding without braces: An alternate C Syntax

    C language accommodates alternative syntaxes like digraphs and trigraphs for symbols such as braces and brackets, introduced to support keyboards lacking these characters. Despite seeming obsolete today, these syntaxes still function in modern compilers, demonstrating the foresight of early C developers.

  7. 7
    Article
    Avatar of omgubomg! ubuntu!·2y

    Parabolic (Video Downloader) Rewritten in C++, Adjusts UI

    Parabolic, a GTK4/libadwaita app for Linux and Qt app for Windows, has been rewritten in C++ to enhance speed and stability. It allows users to download multiple videos simultaneously, supports all yt-dlp supported sites, offers various video/audio formats, and provides numerous configurations for downloads. The latest version brings significant UI improvements, refined download configurations, and several bug fixes.

  8. 8
    Article
    Avatar of securityboulevardSecurity Boulevard·2y

    Dotnet Source Generators in 2024 Part 1: Getting Started

    Source Generators in .NET allow developers to inspect user code and generate additional code at compile time, helping reduce boilerplate and runtime reflection. This guide covers the basics, including setting up incremental source generators which improve performance by filtering items before processing them. It also differentiates source generators from analyzers and addresses common issues and logging practices.

  9. 9
    Article
    Avatar of newstackThe New Stack·2y

    Step-by-Step Guide To Using WebAssembly for Faster Web Apps

    WebAssembly (WASM) significantly enhances the performance of web applications by allowing low-level bytecode execution within web browsers, potentially improving load times and reducing latency. It supports languages like C, C++, Rust, and Go, providing flexibility and enabling the reuse of existing codebases. WASM also operates in a secure, sandboxed environment that protects against attacks. Applications like Figma, AutoCAD Web, Google Earth, and GIMP leverage WASM to deliver complex functionalities smoothly in browsers. Key integration steps include picking a compatible language, compiling to WASM, and interfacing with JavaScript.