Sign in

Debasish (দেবাশিস্) Ghosh 🇮🇳

@debasishg.bsky.social
613 followers 118 following 217 posts

Programmer. Author: Functional and Reactive Domain Modeling (Manning 2016), DSLs In Action (Manning 2010). Father. Husband. Seinfeld fanboy. FP aficionado.

PostsRepliesMedia
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 09/09/2025
driftsort - introduced in Rust 1.81.0. Here’s a component level overview of the sorting algorithm (link to the research document : 👇) .. 🧵(1/2)
140
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 09/09/2025
TIL a 3-week course that will teach u to design and implement LSM tree storage engine in Rust, including implementing MVCC over the LSM engine (link: skyzh.github.io/mini-lsm/)
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 09/09/2025
advanced data structures course by Jeff Erickson -Spring 2025 .. lots of advanced data structures discussed along with analysis (link: jeffe.cs.illinois.edu/teaching/dat...)
041
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 15/08/2025
Me: what's the WiFi password? Bartender: you need to buy a drink first Me: ok, I'll have a Coca-Cola Zero Bartender: is Diet-Pepsi ok? Me: Sure. how much? Bartender: that's $3.00 Me: good. so what's the WiFi password? Bartender: you need to buy a drink first no spaces no caps. (Via Threads)
020
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 02/08/2025
nice article on branchless binary search in Rust with Eytzinger layout and memory prefetch .. www.bazhenov.me/posts/faster...
bazhenov.me
Fast(er) binary search in Rust
Introducton Link to heading Binary search is a very fast algorithm. Due to its exponential nature, it can process gigabytes of sorted data quickly. However, two problems make it somewhat challenging f...
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 26/07/2025
In the world of ChatGPTs and Groks some StackOverflow threads still stand out .. stackoverflow.com/questions/50...
stackoverflow.com
What are the lesser known but useful data structures?
There are some data structures around that are really useful but are unknown to most programmers. Which ones are they? Everybody knows about linked lists, binary trees, and hashes, but what about ...
140
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 20/07/2025
Spent a meaningful 2.5 hours on the Casey Muratori talk that instrumented an exponential rise to my reading list. A masterclass in the history of computing and the roots of OO (1/3)
131
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 13/07/2025
Zig's new async IO ... kristoff.it/blog/zig-new...
kristoff.it
Zig's New Async I/O
Asynchronicity is not concurrency.
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 13/07/2025
Some things never change, almost a ritual for us .. লুচি (deep-fried flatbread made from refined flour)+ সাদা আলুর তরকারি (potato curry) for a Sunday breakfast ..
050
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 04/07/2025
Linked lists often face criticism in the world of data structures, and it’s easy to see why. I am studying Dancing Links, a technique Knuth developed as part of his Algorithm X, designed to solve Exact Cover problems. (1/2)
140
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 03/07/2025
Interesting take on cognitive load of learning a programming language. Good post on how Zig has a lower cognitive load than Rust .. link to the blog post: kevinlynagh.com/rust-zig/
233
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 23/06/2025
I remember Erik Meijer mention this in one of the Scala reactive programming course long back .. (paraphrasing) "flatMap/monad is the dolby for programmers. It allows us to amplify the happy path and itself takes care of the noise in error handling" - anyone remember the exact quote ?
131
Reposted by Debasish (দেবাশিস্) Ghosh 🇮🇳
Natalie Vais @nvais.bsky.social · 22/06/2025
The @tigerbeetle.com team runs a conference like they build their database — with artful craftsmanship, technical precision, and a sprinkle of magic. Kudos to an amazing SD ‘25 🤩⚡️
0123
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 22/06/2025
Mathematical thinking gets honed with learning how to do proofs .. Sunday reading ..
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 22/06/2025
OCaml and Zig are different languages with different trade offs. Not fair to compare them .. pick your own poison ..
130
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 08/06/2025
This blog post makes a strong point on feeding the compiler enough *intent* to generate more optimized code. This can be at the expense of added verbosity in the language because nothing beats efficiency when you need it. And Zig does it .. alloc.dev/2025/06/07/z...
alloc.dev
Optimizations with Zig | alloc.dev
The power of Zig's comptime code execution
000
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 08/06/2025
Sunday morning surprise from Amazon .. always wanted to dig deep into the computational aspects of database concurrency control. Papadimitriou serves the perfect recipe ..
040
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 31/05/2025
Amazing talk by Ankush Desai on using formal & semi-formal methods as a thinking tool in the design process. The core message of the talk is Don't fear the Formal Methods, treat them as a thinking tool. Formal methods teach u to think at the proper level of abstraction antithesis.com/blog/2025/bu...
antithesis.com
Thinking has no replacement
There are many tools to improve software correctness, and formal methods can be one of them.
050
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 25/05/2025
Spent an hour and a half on this interview on a Sunday morning with @ranjitjhala.bsky.social ..absolutely fascinating. Right from philosophical discussions down to a cool demo of refinement types in Rust. Absolutely loved the demo and surely would be playing around with Flux youtu.be/goUZczQAfgk?...
youtu.be
E1: Ranjit Jhala (UCSD)
YouTube video by current continuation
031
Reposted by Debasish (দেবাশিস্) Ghosh 🇮🇳
Gabriel Volpe @gvolpe.com · 11/05/2025
My first project written in @unison-lang.org ! gvolpe.com/blog/unison-...
gvolpe.com
Unison: Forex API & Caching • gvolpe's blog
I have been following the Unison programming language for as long as I can remember, given that its authors are very well-known in the Scala ecosystem. Thoug...
1135
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 12/05/2025
Optimizing Radix Sort on GPUs - a very nice post. gpuopen.com/learn/boosti...
gpuopen.com
Boosting GPU Radix Sort performance: A memory-efficient extension to Onesweep with circular buffers
Discover a high-performance, memory-efficient extension to Onesweep radix sort on GPUs, featuring circular buffers and advanced optimization techniques that reduce global memory access and improve sor...
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 12/05/2025
One of the essays of Paul Graham from 2002 that resonated a lot to me when I read back then .. Succinctness is power. I always add a post scriptum - only when not abused .. t.co/MQaDLsEUQe
010
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 12/05/2025
One of the cool applications of the typestate pattern in Rust is the design of SquirrelFS, a new file system with crash-consistency guarantees that are checked **at compile time**. In Rust the typestate pattern plays nicely with the ownership model semantics .. arxiv.org/abs/2406.09649
arxiv.org
SquirrelFS: using the Rust compiler to check file-system crash consistency
This work introduces a new approach to building crash-safe file systems for persistent memory. We exploit the fact that Rust's typestate pattern allows compile-time enforcement of a specific order of ...
061
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 05/05/2025
Loved this blogpost from matklad and the template for swarm testing an arbitrary data structure .. tigerbeetle.com/blog/2025-04...
tigerbeetle.com
Swarm Testing Data Structures
Insights, updates, and technical deep dives on building a high-performance financial transactions database.
010
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 05/05/2025
my data structure lessons on a Friday evening .. rope in Zed has a very clever implementation. It's implemented in terms of SumTree, a thread-safe, snapshot-friendly, copy-on-write B+ tree. (1/2)
140
Reposted by Debasish (দেবাশিস্) Ghosh 🇮🇳
Arseny Kapoulkine @zeux.io · 04/05/2025
New blog post! "Load store conflicts", in which we look at some performance sensitive code that has surprisingly dramatic performance swings based on the compiler and the microarchitecture used. Reposts appreciated! zeux.io/2025/05/03/l...
zeux.io
Load-store conflicts
meshoptimizer implements several geometry compression algorithms that are designed to take advantage of redundancies common in mesh data and decompress quickly - targeting many gigabytes per second in...
15923
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 18/04/2025
How CPUs work and compilers can be wicked smart .. a very nice talk by Matt Godbolt .. the demo was awesome with branch predictor and compiler optimisations .. youtu.be/-HNpim5x-IE?...
youtu.be
What Every Programmer Should Know about How CPUs Work • Matt Godbolt • GOTO 2024
YouTube video by GOTO Conferences
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 18/04/2025
awesome post .. describes the abstractions behind transactional systems - the commonality and the variabilities .. transactional.blog/blog/2025-de...
transactional.blog
Decomposing Transactional Systems
Every transactional system must execute, order, validate, and persist transactions.
010
Reposted by Debasish (দেবাশিস্) Ghosh 🇮🇳
Carl Sverre @f0a.org · 18/04/2025
What if your test system could find bugs you didn’t anticipate? Meet Antithesis: deterministic simulation testing for the rest of us. It changed how I test—and build—Graft. This post covers DST’s origins, how Antithesis works, and what it taught me. sqlsync.dev/posts/antith...
sqlsync.dev
Antithesis driven testing
Discover how using Antithesis, a deterministic simulation testing platform, reshaped how Graft—a distributed storage engine—was tested and built. This post explores fault injection, property-based fuz...
0166
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 07/04/2025
More than a decade old publication, but still gold .. queue.acm.org/detail.cfm?i...
queue.acm.org
Immutability Changes Everything - ACM Queue
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 07/04/2025
You can't skip this survey on skiplist - it describes all variations of skiplist implementations (lock free, rotating, no-hotspot etc.), how skiplists compare to tree structures, how to optimise skiplist implementations for modern hardware and a host of other variants. (1/2)
110
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 23/03/2025
Going back to the basics weekend reading - another great paper by Graham Hutton from 1998 that explains the duality between fold and unfold. (1/2)
110
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 23/03/2025
If you want to learn about the basics of programming language semantics, this paper by Graham Hutton is an excellent exposition to the subject. (1/2)
110
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 12/03/2025
Driven by design goals possibly the Typescript team took the right decision to port one garbage collected language to another .. Doing in Rust would have led to a much steeper timeline and lots of re-design and thinking in terms of how the Rust type system works .. www.reddit.com/r/programmin...
070
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 03/03/2025
One of the fundamental papers that taught me the intersection of financial contracts & functional programming through combinators. A big part of my work on securities trading systems & the subsequent book that I wrote were influenced by the learnings from this paper www.cs.tufts.edu/~nr/cs257/ar...
172
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 23/02/2025
keep an eye on @bartoszmilewski.bsky.social 's The Dao of Functional Programming .. some selective pages from the ToC .. github.com/BartoszMilew...
030
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 23/02/2025
Flattening a data structure can lead to a host of advantages both with respect to performance and ergonomics. This blog post demonstrates them by writing 2 interpreters - 1 that allocates recursive structures on the heap and one that flattens them out into an array www.cs.cornell.edu/~asampson/bl...
153
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 15/02/2025
Transformers from machine learning meet Applicative Functors from functional programming .. will one weekend of reading be enough for me to digest some of this ? cybercat.institute/2025/02/12/t...
cybercat.institute
Generalized Transformers from Applicative Functors
Transformers are a machine-learning model at the foundation of many state-of-the-art systems in modern AI. In this post, we are going to build a generalization of Transformer models that can operate o...
050
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 15/02/2025
In many of the cases where we use monads, applicatives might be a better choice as it's less powerful. Reach out for the monad only if u need the additional power. This is an example of the recommended principle of using the least powerful abstraction.
110
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 15/02/2025
In memory storage of FoundationDB moved from binary search tree to radix tree .. here are the trade offs .. a nice talk summarising the rationale and some optimization and performance figures .. youtu.be/KbPs-Ka-SeY?...
youtu.be
A New Radix-Tree Based Memory Storage Engine - Mengran Wang, VMware
YouTube video by The Linux Foundation
010
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 09/02/2025
A great lesson in hash table design and implementation. Starts with the general principles of the data structure design (some great details here) and then dives into the specific policy based implementation of @clickhouse.com. 🧵(1/2)
140
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 07/02/2025
How should a modern compiler design toolchain look like ? Chandler Carruth presents Data Oriented Compiler Design, using the same principles to lexer, parser and the whole pipeline .. youtu.be/ZI198eFghJk?...
youtu.be
Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023
YouTube video by CppNow
040
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 31/01/2025
Richard Eisenberg discusses pay-as-you-go type systems .. he says in Rust we don't pay as we go. Everyone has to pay all the time for Rust fine memory control .. many parts of your application may be suitable for garbage collected languages like OCaml .. signalsandthreads.com/future-of-pr...
061
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 29/01/2025
Slides of my presentation "Effects - algebraically yours" at @fnconf.bsky.social Functional Conf 2025 are now available online It's based on Scala3 and examples are mostly from ZIO and Kyo with some cats-effect as well. Here's the abstract of the talk .. link: www.slideshare.net/slideshow/ef...
1184
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 29/01/2025
A Chris Lattner_llvm interview where he discusses his thoughts about Mojo and the various influences he had while designing Mojo .. He mentions about the aha! moments, how he likes zig comptime and how Prolog, Lisp and APL shaped many of his thinkings .. pldb.io/blog/chrisLa...
pldb.io
An interview with Chris Lattner
PLDB: a Programming Language Database. Build the next great programming language.
041
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 29/01/2025
It's always nice to see something evolving & improving state of the art through algorithmic improvements. The core of MLA in DeepSeek is the low-rank joint compression for keys & values to reduce KV cache! This smart idea save them tons of memory during inference by not storing the full kv pairs
020
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 29/01/2025
Categorical interpretation of Value Iteration - a step towards a category theory based interpretation of Reinforcement Learning .. cgi.cse.unsw.edu.au/~eptcs/paper...
011
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 25/01/2025
In his Breadth First Numbering paper, Okasaki makes the observation that sometimes a more general problem is easier to solve than the one at hand. And he provides an elegant solution to it. dl.acm.org/doi/pdf/10.1... Are there any other examples in Computer Science where similar trick applies ?
051
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 25/01/2025
This is such a great piece of advice from matklad! Link to the full blogpost: matklad.github.io/2024/09/06/f...
020
Debasish (দেবাশিস্) Ghosh 🇮🇳 @debasishg.bsky.social · 25/01/2025
sunk cost fallacy is a trap .. existing code has a very powerful influence and may often lure you into the wrong abstraction .. a nice blog post by Sandy Metz .. sandimetz.com/blog/2016/1/...
031