Skip Navigation
True Story
  • Projects for Apple platforms usually also use .h, where it could mean anything from C/C++ to Objective-C/C++.

    In practice, Clang handles mixed C/C++/Obj-C codebases pretty well and determining the language for a header never really felt like an issue since the API would usually already imply it (declaring a C++ class and/or Obj-C class would require the corresponding language to consume it).

    If a C++ header is intended to be consumed from C, adding the usual #ifdef __cplusplus extern "C" {... should alleviate the name mangling issues.

  • Introducing OpenD
  • Side note: Rust is the only of the three to have an ML-style type system, which is generally agreed upon as one of the most theoretically sound foundations. Also the point is that Rust does it precisely without requiring dynamic allocation, as opposed to Go, for example.

  • Attack of the week: Airdrop tracing – A Few Thoughts on Cryptographic Engineering
  • Why not just add a timestamp that rotates every, say 5 seconds, to the hashed data?

    That would make it infeasible to precompute the table permanently (it would have to be precomputed for a very narrow attack window, which is still better than nothing)

  • I love Kotlin
  • Not OP, but a pretty common reason is having a super-modular and hackable IDE that can be used to develop pretty much anything. Everything is JSON-configurable, all editors are webviews, so adding stuff like HTML rendering in Jupyter notebooks is almost trivial from a technical perspective. Fleet might be a step in the right direction, but still feels like a layer on top of IntelliJ, which is a beast in of itself, plus it is closed-source.

    Also the approach of decoupling editors from the language support via LSP might be one of the biggest innovations in this space in recent years, IMO. Having a widely adopted and open protocol for language support effectively made Neovim, Emacs etc. a viable choice. It has spawned several high-quality LSP implementations, often directly supported by the compiler vendors, e.g. clangd or rust-analyzer.

    Arguably Microsoft has been monetizing a bunch of services on top of VSCode too and they haven't always stuck to their own principles (see Pylance, a closed-source language server that only runs in official VSC builds), but the LSP itself was still a pretty big net positive.

  • I love Kotlin
  • That article tells you how to set up syntax highlighting and run the command-line compiler by hand, not really comparable to IntelliJ... The article feels like a generic SEO post

  • After USB-C win, EU tells Tim Cook that Apple must 'open up its gates to competitors'.
  • In principle you can, the Mach-O format is openly documented and implemented in the major compilers. The issue is that you need a sysroot (aka SDK) of the frameworks and headers for your target OS, which in Apple's case are proprietary and cannot be redistributed legally (you could probably rip them out of a macOS installation yourself though). For iOS apps you'd also need to sign the binaries and install the app to the device which is non-trivial to impossible to do on other platforms.

  • InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)PA
    paperplane @lemmy.world
    Posts 0
    Comments 16