Structed Object Definition Language (SODL)

Introduction The Structured Object Definition Language (SODL) is a domain-specific language designed for defining data structures, relationships, and constraints in a clear and organized manner. Files written in SODL use the .sodl extension, reflecting the language’s focus on structured object definitions. SODL provides a rich set of constructs that allow developers to model complex data relationships while maintaining type safety and data integrity. The name “Structured Object Definition Language” reflects the language’s core purpose: it provides a structured way to define objects and their relationships in a data model. The “Structured” aspect emphasizes its systematic approach to organizing data definitions, while “Object Definition” highlights its primary focus on defining data objects and their properties. ...

January 5, 2025 · 10 min · Shivanand Velmurugan

Working with large C codebases

Searching for symbols The product that I work on, has over 22 million lines of source – most of it a nightmare. I use vim as my editor of choice 1. Both cscope and ctags (integrated into vim), allow me to quickly move between files and lookup definitions of symbols, and help in understanding the challenge-du-jour. Throw in fuzzy find capabilities of the most awesome Ctrl+p plugin, and vim becomes the best ‘IDE’ out there! ...

December 29, 2016 · 2 min · Shivanand Velmurugan

Elixir - A crash course

These are notes from the official Elixir documentation. It a quick walk-through of the unique features in Elixir for someone coming from years of C — a way for me to remember and use as a reference. Summary Types Operators Control Structures Types Atoms Named contants with a value. true and false are atoms. Strings Supports unicode string natively! It’s about time. 1 You can concatenate strings using <>. "hello" <> " world". Anonymous functions Native support for closures – called anonymous functions. Also, functions are first-class, i.e. can be passed as arguments into other functions. Special syntax is required to invoke ananymous functions. ...

November 6, 2016 · 5 min · Shivanand Velmurugan