Leptonic Solutions Logo
Home
Blog About
Get in touch

Blog / Rust (3 Posts)

All
Data Modeling
Git
Rust
Type Systems
  • Draft
    U
    Rust Type Systems

    Understanding Structural vs Nominal Typing in Rust

    Discover the differences between structural and nominal typing in Rust, using examples to illustrate how Rust's type system impacts programming safety and flexibility. Compare Rust's approach to typing with Elm's, Roc's, and TypeScript's type systems, highlighting the unique aspects of each. This post offers an in-depth exploration of Rust's type system, equipping developers with insights into how different typing strategies can influence code design.

    Mar 17, 2024

    Read more
  • Draft
    T
    Rust Type Systems

    The Cardinal Rules of Rust - Understanding Type Cardinality for Flawless Data Models

    Algebraic data types (ADTs) are a cornerstone of type theory in programming, providing a powerful framework for constructing and manipulating complex data structures. This post delves into the algebraic nature of Rust's type system, emphasizing the critical role of understanding a type's cardinality — that is, the total number of values a type can represent. This understanding is crucial for selecting the most appropriate data model, one that ensures impossible states are inherently unrepresentable. We explore the concepts of sum and product types, and highlight the intriguing way in which functions can be seen as exponentials within this algebraic framework.

    Mar 13, 2024

    Read more
  • Draft
    T
    Rust Data Modeling

    The Hidden Costs of Booleans

    Discover the hidden costs of using Boolean values in programming when business logic changes demand a third state. This blog post explores the extensive efforts needed for refactoring — from database migrations to frontend logic adjustments — and highlights the importance of correct data modeling with enums to maintain efficient software.

    Mar 11, 2024

    Read more
Leptonic Solutions Logo

© 2024

Company

  • Blog
  • About
  • Contact

Legal

  • Legal Notice
  • Privacy Policy

Preferences

  • Theme