sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป

7.7K posts

sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป

sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป

@HeavyPackets

โ™ฅ๏ธ Security + Privacy, PL, Formal Methods, DX, Rust ๐Ÿฆ€, Lean, F* ๐Ÿณโ€๐ŸŒˆ {โŠฅ/โŠฅ}

Morgantown, WV ๊ฐ€์ž…์ผ Ocak 2011
1.6K ํŒ”๋กœ์ž‰1.6K ํŒ”๋กœ์›Œ
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Nintendo .DS_Store
Nintendo .DS_Store@sliminalityยท
My talk "Concrete syntax matters, actually" from the Topos Institute Colloquium is now available! I think it's some of my best work yet youtube.com/watch?v=kQjrcSโ€ฆ
YouTube video
YouTube
English
4
11
49
6.4K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Debasish (เฆฆเง‡เฆฌเฆพเฆถเฆฟเฆธเง) Ghosh ๐Ÿ‡ฎ๐Ÿ‡ณ
This one from @ilyasergey's course on Programming with Proofs, as a reference reading .. (link to the course: ๐Ÿ‘‡) .. I just skimmed through the contents and here's my 1000 ft view of it .. looking forward to a deep dive read very soon, looks like a great way into the combination of FP, proof systems and Lean .. The course page also refers to work-in-progress class โ€œPractical Verifications of Data structures and Algorithmsโ€ (aka PraVDA) - it would be interesting to get some insights into it as well .. The Hitchhikerโ€™s Guide to Logical Verification (2025 Desktop Edition) is a textbook-style guide to interactive theorem proving using the Lean 4 proof assistant. โ€ข It introduces the logical foundations of Lean, starting from simple type theory and gradually moving to dependent types, inductive definitions, and structured proofs, treating Lean as a vehicle for learning rigorous reasoning rather than an end in itself. โ€ข The book then develops functional and effectful programming in Lean (with inductive types, type classes, monads, etc.) and shows how to prove properties of programs using techniques like induction and rule-based reasoning. (This is the part that looked very interesting to me) โ€ข In later chapters it covers program semantics -operational, Hoare and denotational, and connects them to machine-checked proofs, including the use of proof automation and metaprogramming in Lean. โ€ข Throughout, the goal is to equip readers with enough practical and theoretical background to tackle real verification projects and move comfortably between Lean and other modern proof assistants.
Debasish (เฆฆเง‡เฆฌเฆพเฆถเฆฟเฆธเง) Ghosh ๐Ÿ‡ฎ๐Ÿ‡ณ tweet media
English
6
38
250
12.4K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Type Theory Forall
Type Theory Forall@ttforallยท
Going live now! Continuing our Lean 4 Series โ€” today I'll test my knowledge in proving insertion sort correct! This is part of our ongoing fundraiser to replace my iPhone camera with a proper setup. Every tip helps! ๐Ÿ’œ โ˜•๏ธko-fi.com/typetheoryforaโ€ฆ โ–ถ๏ธtwitch.tv/typetheoryforaโ€ฆ
English
0
3
16
1.4K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Ravital
Ravital@ravitalsยท
Beyond excited to share that @SunscreenTech's paper "Parasol Compiler: Pushing the Boundaries of FHE Program Efficiency" has been accepted to IEEE Security & Privacy '26! Proud of our team! Pre-print ๐Ÿ”— eprint.iacr.org/2025/1144
Ravital tweet media
English
25
6
59
12.5K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Nintendo .DS_Store
Nintendo .DS_Store@sliminalityยท
Really love this
Nintendo .DS_Store tweet mediaNintendo .DS_Store tweet media
English
1
2
33
2.7K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Daniel Firth (Inspector GADT)
Daniel Firth (Inspector GADT)@locallycompactยท
When mainstream languages try to imitate Haskell.
Daniel Firth (Inspector GADT) tweet media
English
8
30
359
33.8K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Jonathan Aldrich
Jonathan Aldrich@JAldrichPLยท
What is a type? My new Programming Language Pragmatics video discusses denotational, structural, and behavioral views of typing, demystifies terminology, talks about why types are useful, and introduces subtyping.
Jonathan Aldrich tweet media
English
6
11
164
8.4K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Debasish (เฆฆเง‡เฆฌเฆพเฆถเฆฟเฆธเง) Ghosh ๐Ÿ‡ฎ๐Ÿ‡ณ
This is a great thought raising a โ€œmechanical sympathyโ€ point thatโ€™s often missing from day-to-day DDD conversations - the in-memory layout of your data and the access patterns of your hot paths matter a lot for performance. In regular designs of domain models we tend to focus more on the conceptual model of the problem domain. Eric Evansโ€™ DDD also talks about modelling the ubiquitous language and capturing domain invariants and not about specifying memory layouts. Treating "domain model" as a prescription for in-memory representation confuses conceptual model with data structure choice. Despite the original domain modelling literature not considering the aspects of mechanical sympathy, the following are real concerns when the tyre hits the road: 1. Access patterns dominate performance. If a workload touches one field of millions of objects in tight loops, a Struct of Arrays (SoA) can massively reduce cache misses and help prefetchers do their job. This is standard data-oriented design (DOD) guidance. 2. False sharing is real. Co-located hot fields updated by different threads can thrash a shared cache line and nuke scalability. Padding, alignment, and data partitioning are sometimes required. However at the same time AoS vs SoA is context-dependent. If your operations usually need several fields from the same entity at once, AoS can be faster (fewer loads, better spatial locality for that use case). There isnโ€™t a one-size-fits-all rule. Some of my thoughts on addressing this .. Think "clean domain model at the edges, data-oriented core for hot loops" .. 1. Model for the business first (standard DDD) Keep entities, value objects, and domain services intention-revealing and faithful to the problem space. This is your collaboration/communication surface. 2. Measure before changing layout Profile CPU time, cache misses, branch misses, and lock contention. Optimize measured hotspots only. 3. Introduce a data-oriented โ€œkernelโ€ behind the model - For the tight loop: use SoA buffers that match the access pattern (SIMD-friendly, batchable). - Keep this layout behind a domain service/repository boundary so the rest of the code can stay idiomatic DDD. - Map between entities and buffers at the boundary (cost is paid at well-chosen seams, not everywhere). This is standard DOD practice. 4. Split hot vs cold fields - Extract โ€œhotโ€ mutable counters/state into a separate structure (or shard by thread) to avoid false sharing. Keep โ€œcoldโ€ descriptive fields with the entity. - Manual padding can help or use `CachePadded` like padding (as in Rust). In native code, align/pad structures and avoid mixing hot data in the same line. 5. Choose layout based on operation - SoA if you stream through one/few fields across many items (filters, aggregations, vector math). - AoS if most accesses touch many fields of the same item (rich object logic). 6. Exploit read models/projections If you use CQRS or simply maintain projections, itโ€™s natural to keep a domain model for commands/invariants and one or more performance-tuned read models (often SoA-ish indexes or columnar structures) for queries/analytics. This is general DDD/CQRS practice. Evans doesnโ€™t forbid multiple coexisting models. Let me know your thoughts in the replies .. Maybe I should implement something as a PoC for such modelling strategy ..
Kelly Sommers@kellabyte

99% of domain models Iโ€™ve seen are designed w/ following perf issues: Array of Structs instead of Struct of Arrays which dramatically impacts prefetchers & cache lines negatively. False sharing. Packing hot fields w/ cold fields. Domain models need to serve the access patterns

English
0
7
42
6.4K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Jonathan Aldrich
Jonathan Aldrich@JAldrichPLยท
How does one implement a type checker? My latest Programming Language Pragmatics video discusses how a type checker, like an interpreter, traverses the AST of a program, implementing the functionality of the typing rule for each AST form.
Jonathan Aldrich tweet media
English
1
8
54
2.5K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
chreke
chreke@therealchrekeยท
People on twitter will really be like "you believe in safe language features? that pales in effectiveness to my strategy, not making any mistakes!" and then make mistakes
English
2
6
47
1.6K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Armin Ronacher โ‡Œ
Armin Ronacher โ‡Œ@mitsuhikoยท
Why is pypi and npm a good target for attackers? I would argue because both ecosystems made the choice not to use minver. That means the ecosystem moves up quickly. Without a lockfile, you will get the latest version immediately, making attacks attractive x.com/feross/status/โ€ฆ
Feross@feross

It's simple really. โ€ขย Permissive publishing culture, no gatekeepers โ€ขย They're the largest ecosystems, so you see it more

English
2
1
20
5.4K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Debasish (เฆฆเง‡เฆฌเฆพเฆถเฆฟเฆธเง) Ghosh ๐Ÿ‡ฎ๐Ÿ‡ณ
I have been collecting some of the classic papers in software engineering that do not seem to get enough publicity these days. But I think these should be must-reads for every software developer as they are the foundation stones of all the good practices that we implement today. Many of these papers are the Turing award lectures of the respective author and have created immense impact in the software engineering world. The only criterion of selection that I alluded to is that the paper should be pre-2000. In fact many of these are from 1960s and 70s as well. 1. The Mythical Man-Month - Frederick P. Brooks (1975) 2. No Silver Bullet: Essence and Accidents of Software Engineering - Frederick P. Brooks (1986) 3. The Cathedral and the Bazaar - Eric S. Raymond (1997) 4. On the Criteria To Be Used in Decomposing Systems into Modules - David L. Parnas (1972) 5. An Axiomatic Basis for Computer Programming - C.A.R. Hoare (1969) 6. The Humble Programmer - Edsger W. Dijkstra (1972) 7. Assigning Meanings to Programs - Robert W Floyd (1967)
English
5
6
88
4.9K
sabree ฮป โ˜• โ†’ ๐Ÿฅ“ โ†’ ๐Ÿ‘จ๐Ÿฟโ€๐Ÿ’ป ๋ฆฌํŠธ์œ—ํ•จ
Igal Tabachnik
Igal Tabachnik@hmemcpyยท
parametricity
English
3
8
104
9.8K