Morel Rust
Morel is now in Rust! I just made the first release of the new Rust toolchain for Morel. Morel-Rust implements same language as Morel-Java. It's early days, but potentially performance will be much better.
blog.hydromatic.net/2025/10/23/m...
23.10.2025 19:23 β π 9 π 2 π¬ 1 π 0
Tragedy of the commons
19.06.2025 20:21 β π 1 π 0 π¬ 1 π 0
Morel release 0.7.0
I am pleased to announce Morel release 0.7.0, just one month after release 0.6.0.
I'm pleased to announce release 0.7 of Morel! This is a huge release, adding support for ordered/unordered data, set operators, and revised order syntax. A major rework of Morel's type inference algorithm delivered function overloading. blog.hydromatic.net/2025/06/08/m...
09.06.2025 04:42 β π 3 π 0 π¬ 0 π 0
Java doesn't let parameters of lambdas overshadow local variables, but it does let them overshadow fields. I don't think the rule against overshadowing has ever helped me.
08.06.2025 18:01 β π 0 π 0 π¬ 1 π 0
Thank you! I donβt really want to innovate in type theory, so followed the Wadler/Wehr/Odersky paper as closely as I could. But the result is good - you can write a query with a mixture of bags and lists, no type annotations, and it comes up with the right type.
08.06.2025 07:14 β π 1 π 0 π¬ 0 π 0
We might both be right. Cocker is a great writer; Shatner is a great performer.
07.06.2025 22:40 β π 0 π 0 π¬ 0 π 0
I have no idea whether it's fast. I assume you are competing with people who have sweated many weekends to squeeze out performance gains.
But the name 'dijkstralog' is definitely a keeper.
07.06.2025 22:06 β π 2 π 0 π¬ 0 π 0
I guess some people are still buying Buicks and so Buicks get the modern tech, like adaptive cruise control, only five years after everyone else.
07.06.2025 19:06 β π 2 π 0 π¬ 0 π 0
Not sure about that. Iβve seen Star Trek but never heard that cover.
Bigger question: will Jarvis Cocker be up there with the great English humorists, Oscar Wilde, Jake Thackray, Flanders & Swann?
07.06.2025 18:34 β π 1 π 0 π¬ 2 π 0
It is telling that neovim started it for you. In the nineties, Windows nearly wiped out real operating systems, and notepad was the gateway drug. People loved double-clicking files to open them, but without the command line, lost their place in the universe.
07.06.2025 18:25 β π 1 π 0 π¬ 1 π 0
Ordered and unordered data
Despite what the relational model says, some data is ordered.
Database tables are unordered, but functional programming languages work best over ordered lists. Which should Morel prefer? Both! We now have "list" and "bag" types, and full relational algebra over both. blog.hydromatic.net/2025/06/06/o...
07.06.2025 01:08 β π 11 π 4 π¬ 1 π 0
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.
03.06.2025 19:59 β π 5 π 2 π¬ 0 π 0
YouTube video by Data Council
More Than Query Future Directions of Query Languages, from SQL to Morel
Is it possible to do serious programming (such as solving Wordle) in a query language? If not, what's missing? The video of my DataCouncil talk is posted. www.youtube.com/watch?v=xwFs...
03.06.2025 19:58 β π 6 π 2 π¬ 0 π 0
OK, I merged ordered/unordered queries. Next, an "unorder" step and an "ordinal" expression, so that you can more easily convert between lists and bags.
22.05.2025 23:24 β π 2 π 1 π¬ 0 π 0
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...
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...
21.05.2025 18:52 β π 1 π 0 π¬ 0 π 1
I started a discussion about supporting SQL Pipe syntax in
Apache Calcite. Please chime in. lists.apache.org/thread/1ggd3...
19.05.2025 17:54 β π 6 π 1 π¬ 0 π 0
Yes, it is.
19.05.2025 06:21 β π 1 π 0 π¬ 0 π 0
I feel the same way as you. But I guess when I visit other peopleβs houses I realize that their definitions of βtidyβ and βcomfortableβ are different from mine. Abstraction is ick to a lot of people.
18.05.2025 20:17 β π 0 π 0 π¬ 0 π 0
The other fascinating thing about spreadsheets is that the code is embedded in the data. You start off with pure data and can gradually add little bits of code.
Copying the code involves also copying the data. To apply the same code to a different data set, some kind of abstraction is required.
18.05.2025 19:05 β π 1 π 0 π¬ 1 π 0
I wonder whether spreadsheets are attractive to non-programmers because they don't require abstraction. Abstraction is possible (the scripts and functions you mention) but is not the norm.
18.05.2025 19:00 β π 0 π 0 π¬ 1 π 0
Spreadsheets are the one and only βlanguageβ that lets users solve their problems without hiring or βbecomingβ programmers. Since then the software folks have been trying (with limited success) to figure out how to make programming languages more like spreadsheets.
18.05.2025 17:15 β π 8 π 0 π¬ 1 π 1
So much for DJT ending this war quickly. He literally can't get Putin to come to the negotiating table.
16.05.2025 17:30 β π 3 π 0 π¬ 1 π 0
Peak power (the 200 hp, or 150kW, number you quote) isn't relevant. No one continuously accelerates for 100s.
Miles per kWh is more important. Aptera claims 10, my Taycan gets 3.
The key question is: How far can I drive on an 8 hour solar charge? Based on their numbers, Aptera gets 5 miles.
09.05.2025 16:38 β π 1 π 0 π¬ 1 π 0
Algebra
A big reason we have seen vendors like Firebolt and Databricks quickly add support is that pipe syntax is easy to implement. Some syntactic sugar, but downstream validation and algebra are unchanged.
Pipes are also close to the algebra. Note similarity to calcite.apache.org/docs/algebra...
08.05.2025 18:21 β π 10 π 1 π¬ 1 π 0
As I've said before, pipe syntax is a great change to SQL - especially because it is evolutionary.
Calcite has always added features to remain compatible with other dialects (sometimes enabled via flags). Pipe syntax is now part of GoogleSQL (and other dialects), so Calcite should adopt it.
08.05.2025 18:14 β π 6 π 1 π¬ 1 π 1
Software engineer and architect. Zurich, London, Galway. Google, Duco, Delphi.
Dad. Technical Author, Data Engineer.
Data practitioner (20y) β’ Writing at ssp.sh since 2015.
Focused on the craft of data engineering & storytelling.
π vault.ssp.sh β’ π @dedp.online
β― #dataengineering, #opensource, #writing, #obsidian, #neovim
CEO @ feldera.com, the incremental compute engine for AI, ML and data teams.
Formerly a systems researcher in distributed systems, databases, cloud, OS, PL, and networking. Sci-fi and gaming nerd.
lalith.in/research
Talker, eater, drinker.
Photography/Food/Punk Rock/Technology/SF
Mission, San Francisco, CA
Apache Arrow is the universal columnar format and multi-language toolbox for fast data interchange and in-memory analytics.
Find more at https://arrow.apache.org/
Husband, dad, veteran, writer, and proud Midwesterner. 19th US Secretary of Transportation and former Mayor of South Bend.
Principal Architect @posit.co, GP Composed Ventures, Co-founder Voltron Data. Open source: Apache Arrow, pandas, Ibis. "Python for Data Analysis" book
The global home for open source software, powering some of the worldβs most ubiquitous software projects in web, big data, Java, IoT, cloud computing, and more. Learn more at https://apache.org.
Computer Friend, Not a Bird
www.philipzucker.com
Animal lover, trail runner, mathematician, product and tech leader, open source developer
General Partner of Essence VC (www.essence.vc), all things infra software
Runs oss startup podcast and the infra pod
Professor β like database systems, programming languages, and SC Freiburg γ
Writer @ davidsj.substack.com
π sparks the rot β’ | Coup Dataβ’ | Consultant & Developer @ http://epam.com | http://s4explorer.com | Blazing fast pivot tables https://github.com/rpbouman/huey
ποΈπποΈ design & eng @ MotherDuck. UI, statistics, databases. Ex Rill Data, Mozilla
Creator of https://0x.tools, also a long-time computer performance geek. Perf & troubleshooting blog: tanelpoder.com. All onions are mine.