You are currently filtering by a tag; clear the filter.

  1. Using Single-Field Wrapper Types to Reduce Bugs

    Structuring and grouping data with types is only part of the correctness guarantees that type checking offers; “newtypes”, sometimes known as “wrapper types” in Domain-Driven Development circles, is another important component.

  2. The Distinct Niches of Go & Rust

    Put aside for loops versus functional data transformations; for Rust and Go, the best point of comparison is their runtimes. Nothing else so clearly distinguishes their different target domains.

  3. Lambda Syntax in Mainstream Programming Languages

    Ambiguities with built in language features, changing execution solely based on whitespace, and non-determistic parsing are but a few of the nuisances modern lambda syntax brings us.

  4. WebAssembly: a Security Engineer’s Review

    A universal, CPU-portable abstract machine like this is what the JVM couldn’t be, what minified JavaScript was pushed towards but shouldn’t be, and what the C abstract machine unsuitably became.