Random Julia Thoughts


  • Nesting function calls is ugly IMO compared to dot chaining.
  • I like that broadcasting is explicit, I think Mat + Vec should be a type error.
  • I wish it had auto-currying. I wish all languages did.
  • I wish there were tagged unions.
  • Multiple dispatch is slick, and a natural fit for math, though I wonder how much/if specialization issues like what Rust’s been plagued with are issues in Julia.
  • Custom operators are nice
  • I don’t like begin/end, I’m fine with curly braces or something, though they do look pretty on generics (but so do square brackets)
  • Julia used * for string concatenation because strings are a monoid, so they seem to care about mathematical convention. Why not use arr(i) to emphasize that array access is a function from the naturals to your input set?
  • Don’t care about 0 or 1-indexing.
  • Zygote/Flux is so cool.
  • Chris Rackauckas is a mensch.
    • His arguments about how Julia enables building good packages, which is what scientists want even harder than most developers, will be a big advantage.
  • I don’t like ternary operator. Make conditionals an expressions.
  • I think I’d still like it if Swift with some sort of value-based generics was the default ML language (or really a go-to language in general). If only it wasn’t so tied to macOS.

Related Posts

Compactness of the Classical Groups

Derivative AT a Discontinuity

Just because 2 things are dual, doesn't mean they're just opposites

Boolean Algebra, Arithmetic POV

discontinuous linear functions

Continuous vs Bounded

Minimal Surfaces

November 2, 2023

NTK reparametrization

Kate from Vancouver, please email me