Skip to content

Instantly share code, notes, and snippets.

@sogaiu
Last active October 19, 2025 09:06
Show Gist options
  • Select an option

  • Save sogaiu/037c383483dbc85d9edc1aa37aefe772 to your computer and use it in GitHub Desktop.

Select an option

Save sogaiu/037c383483dbc85d9edc1aa37aefe772 to your computer and use it in GitHub Desktop.

2025-10-31

2025-10-30

2025-10-29

2025-10-28

2025-10-27

2025-10-26

2025-10-25

2025-10-24

  • Publishing semantic-namespace/contract lib - tangrammer

    There is no reason to limit our specifications to what we can prove, yet that is primarily what type systems do. There is so much more we want to communicate and verify about our systems. This goes beyond structural/representational types and tagging to predicates that e.g. narrow domains or detail relationships between inputs or between inputs and output. Additionally, the properties we care most about are often those of the runtime values, not some static notion. Thus spec is not a type system.

2025-10-23

  • Sound Default-Typed Scheme (Position Paper) - Jan-Paul Ramos-Davila

    We propose a new approach to typing Scheme programs based on the observation that programmers often have strong beliefs about the “normal” behavior of their code. Rather than forcing a binary choice between static types and runtime checks, we introduce default typing, where each program point carries a plausibility-ranked set of types. The highest-ranked type (rank 0) represents what the programmer believes will “almost always” be true, while higher ranks capture increasingly exceptional cases. By leveraging Racket’s macro-extensible type system and SMT-based constraint solving, we can verify whether a program type-checks using only the default assumptions. Success yields efficient code with no runtime overhead; failure produces a counterexample showing which assumptions are violated. We provide a precise notion of conditional soundness: programs are guaranteed type-safe only when their default assumptions hold at runtime.

2025-10-22

2025-10-21

2025-10-20

2025-10-19

2025-10-18

2025-10-17

2025-10-16

2025-10-15

2025-10-14

2025-10-13

2025-10-12

2025-10-11

2025-10-09

2025-10-08

2025-10-07

2025-10-06

2025-10-05

2025-10-04

2025-10-03

2025-10-02

2025-10-01

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment