Settings

Theme

Bringing the Instructions to the Data

mattpo.pe

44 points by mattpope a year ago · 9 comments

Reader

deathanatos a year ago

Regarding the thesis of the article of bringing the instructions to the data, I'd love to see the core of that applied much more broadly in software / aaSes. Random services probably won't JIT LLVM IR for you, given the security of running untrusted LLVM IR … but there's also WASM out there. I'd love to see interfaces start having the capability of accepting WASM instead of an enumeration of the 2 use cases a PM thought I might have.

E.g., we use PagerDuty, and there's several places, such as routing pages, where I'd just like programmatic control, and code would express much more succinctly the needs of what I want to do than trying to express it through some UI-based "routing" editor thing.

Artifact storage aaS's often come with "cleanup" policies that let you choose between 2-3 different modes of cleanup, mostly wrong one way or another.

In all cases an enumeration of the names of 2-3 fixed functions, when I'd rather pass the function.

---

Since this is posted by the author… you set `.content a { word-break: break-all; }`? Like the name sort of implies, it permits line breaks anywhere, which means that the opening line renders as,

  One paper that has been in the back of my mind is for a few years is Efficiently Compil
  ing Efficient Query Plans for Modern Hardware1 which details how Tableau's internal 
(I.e., it splits mid-syllable, and without a hyphenation (which is a different CSS property).)

The layout is basically fixed at the containing element's max-width for nearly any width someone might reasonably be using, so outside of font variations, it should basically always render like that (and I don't think font variations would make enough of a difference). (It steps up to a wider width at some point … but that width also lops a word on the opening line.)

xnx a year ago

Thought this was going to be about computational RAM: https://en.wikipedia.org/wiki/Computational_RAM

pjot a year ago

Apache Substrait is doing exactly this. Paired with Arrow makes for powerful composable data architectures

https://substrait.io/

  • mattpopeOP a year ago

    This is the first time I've seen this. It looks quite promising for taking care of a logical planning phase. But you still need an execution engine like Calcite or Datafusion (or an LLVM IR based executor)

jonlong a year ago

> The astute reader will notice that float operations are not communicative

Presumably this was meant to read "commutative". IEEE 754 addition and multiplication are commutative (ignoring NaN values), but not associative.

  • mattpopeOP a year ago

    Ah good catch, the most astute reader notices that I'm wrong twice!

mzs a year ago

links to his useful blogpost: A Gentle Introduction to LLVM IR

https://mcyoung.xyz/2023/08/01/llvm-ir/

  • mattpopeOP a year ago

    Yes! All of the articles by this author are insightful and well written.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection