Julian Hyde

@julianhyde.bsky.social

On a mission to tame data. (Ex-Google, always ASF, working on something new.)

Some people seem utterly convinced that AI will replace major areas of human endeavor. I wonder if those people have experienced the profound beauty of a human artistic creation. I play Beethoven piano sonatas and Bach fugues, and AI creations are not on the same planet.

If you haven't tried the Rust version of Morel recently, give it a try. The language is close to parity with Morel-Java, and the shell now has highlighting, history, and command editing.

Bild

Am I the only one who uses this git trick? To split a commit (in this case a8aee880), include it twice in the rebase script with a b (break) step in the middle. When rebase pauses, revert the parts of the commit that you don't want. They will be applied in the next commit.

Bild

I'm getting ready to merge a big new feature to Morel - ability to query unordered data sets (bags, and database tables), ordered data sets (lists), and hybrid queries that mix the two. I'd appreciate feedback on whether the specification is clear. github.com/hydromatic/m...

Ordered and unordered queries · Issue #273 · hydromatic/morel

In SQL, tables are inherently unordered, and query results remain unordered until explicitly sorted with an ORDER BY clause. In contrast, functional programming languages like Standard ML -- and by...

github.com

Tomorrow at Data Council I'll talk about how to solve optimization problems in Morel. If banana cakes sell for $4, chocolate cakes sell for $4.50, and you have a certain amount of ingredients, how many of each kind of cake do you make to maximize profit?

Bild

Until last week, I hadn’t thought much about DML in Morel. I assumed that we would just add commands analogous to SQL’s INSERT, UPDATE, DELETE commands. But I devised some language extensions that I think fit Morel and modern data engineering workflow better. blog.hydromatic.net/2025/04/14/d...

DML in Morel

Until last week, I hadn’t thought much about DML in Morel. I knew we would support DML, of course, but I had assumed that we would just add commands analogous to SQL’s INSERT, UPDATE, DELETE commands.

blog.hydromatic.net

When you start a project (say Maven or Gradle) do you start minimal and add enforcers (linters, code formatting, code coverage) later? Or enable all the enforcers on day one? Feel like I'm a grumpy old man saying "If you won't take your shoes off I don't want you in my house".