OOLOI.ORG
Menu

OOLOI

An Organism Evolved.

OVERVIEW

DOCUMENTATION

NEWSLETTER

STM Meets gRPC: An Unexpected Marriage

4/8/2025

0 Comments

 
Picture
I'll admit, when I first encountered gRPC batch operations, I dismissed them as unnecessary complexity. Then I started implementing the gRPC layer and realised something remarkable: gRPC batch boundaries map perfectly onto STM transaction boundaries.

The pattern is almost embarrassingly simple: client streams a series of operations, server accumulates them, then wraps the entire batch in a single dosync. What emerges is something genuinely powerful – distributed transactions with full ACID guarantees. Multiple musicians can edit the same score simultaneously, knowing that either all their changes succeed atomically or none do. Complex operations like MusicXML imports or multi-step undo chains become naturally transactional across network boundaries.

The implications are profound: no more partial updates corrupting shared musical data, no locks preventing collaboration, no eventual consistency headaches. Just proper transactional integrity that works identically whether you're editing locally or collaborating across continents.

How many music notation programs have distributed atomic transactions across any network? And entirely without locks, and with automatic conflict resolution? None.

​Sometimes the most elegant solutions hide in features you initially think you don't need.

0 Comments



Leave a Reply.

    Author

    Peter Bengtson –
    Cloud architect, Clojure advocate, concert organist, opera composer. Craft over commodity. Still windsurfing through parentheses.

    Search

    Archives

    January 2026
    December 2025
    November 2025
    October 2025
    September 2025
    August 2025
    July 2025
    June 2025
    April 2025
    March 2025
    September 2024
    August 2024
    July 2024

    Categories

    All
    Accidentals
    Alfred Korzybski
    Architecture
    Benchmarks
    Clojure
    CLOS
    Common Lisp
    DDD
    Death Of Igor Engraver
    Documentation
    Donald E Knuth
    Dorico
    Dynamic Programming
    Finale
    FrankenScore
    Franz Kafka
    Functional Programming
    Generative AI
    GPL V2
    GRPC
    Igor Engraver
    Jacques Derrida
    JVM
    License
    LilyPond
    Lisp
    MIDI
    MuseScore
    MusicXML
    Ooloi
    Ortography
    Pitches
    Plugins
    Python
    QuickDraw GX
    Rendering
    Rhythm
    Rich Hickey
    Road Map
    Scheme
    Semiotics
    Sibelius
    Site
    Skia
    Sponsorship
    UI
    Umberto Eco
    Vertigo
    VST/AU
    Wednesday Addams

    RSS Feed

Home
​Overview
Documentation
About
Contact
Newsletter
Ooloi is a modern, open-source desktop music notation software designed to produce professional-quality engraved scores, with responsive performance even for the largest, most complex scores. The core functionality includes inputting music notation, formatting scores and their parts, and printing them. Additional features can be added as plugins, allowing for a modular and customizable user experience.

​Ooloi is currently under development. No release date has been announced.​


  • Home
  • Overview
    • Background and History
    • Project Goals
    • Introduction for Musicians
    • Introduction for Programmers
    • Introduction for Anti-Capitalists
    • Technical Comparison
  • Documentation
  • About
  • Contact
  • Home
  • Overview
    • Background and History
    • Project Goals
    • Introduction for Musicians
    • Introduction for Programmers
    • Introduction for Anti-Capitalists
    • Technical Comparison
  • Documentation
  • About
  • Contact