Replies

This profile is from a federated server and may be incomplete. Browse more on the original instance.

DiazCarrete, to haskell
@DiazCarrete@hachyderm.io avatar

The library lets you construct queries using a monadic interface.

Interesting bit: "Rel8 has a fairly unique feature in that it’s able to return not just lists of rows, but can also return trees."

https://rel8.readthedocs.io/en/latest/cookbook.html#tree-like-queries

image/png

DiazCarrete,
@DiazCarrete@hachyderm.io avatar

@blaue_Fledermaus Rel8 is more like a DSL for building queries. ORMs typically support returning object graphs, but handle a lot of other things as well: caching, lazy loading, dirty tracking, etc. They might also trigger multiple queries behind the scenes.

So the particularity of Rel8 is that it generates stand-alone queries and yet it's able to reconstruct hierarchical data from the results. I'm not sure what's the exact mechanism though... Rel8-generated queries are quite scary to look at!

DiazCarrete,
@DiazCarrete@hachyderm.io avatar

@mangoiv Five minutes for a small module seems quite a lot, even for a type-dense library!

DiazCarrete, to random
@DiazCarrete@hachyderm.io avatar
DiazCarrete,
@DiazCarrete@hachyderm.io avatar

Phases in Software Architecture (architectural pearl)
🔗 https://www.cs.ox.ac.uk/publications/publication15860-abstract.html
applicative functors, Day convolutions, oh my!

DiazCarrete,
@DiazCarrete@hachyderm.io avatar
mangoiv, to random
@mangoiv@functional.cafe avatar

I somehow feel like the whole story about coercions both at the surface and at the core level in GHC is wrong.

  • The compiler spends an absurd amount of time in the Simplifier phase even for rather small programs using typefamily heavy programs
  • the whole story around roles is somehow weird (e.g. deriving via Generically doesn't work for trivial cases because of GHC having to assume nominal)
  • the type checker is completely overstrained with even extremely simple uses of coerce
DiazCarrete,
@DiazCarrete@hachyderm.io avatar

@mangoiv Handling coercions efficiently seems to be a tricky problem https://gitlab.haskell.org/ghc/ghc/-/issues/8095

b0rk, (edited ) to random
@b0rk@jvns.ca avatar

has anyone seen a really good analysis of the problems with git's command line UI? Would love to read it. for example:

  • git checkout is dangerous and has too many different jobs (though git switch is trying to fix that!)
  • for a tool that's supposed to make changes easy to undo, you actually need to learn a LOT of ways to undo

(not looking for git tutorials, explanations of git’s underlying model, or explanations of why you think git's UI is actually good, just an analysis of the problems)

DiazCarrete,
@DiazCarrete@hachyderm.io avatar

@b0rk The syntaxes <commit1>..<commit2> and <commit1>...<commit2> do different things in git diff and git log. Perhaps having a different notation for the diff case would have been bettter.

ChronRevisited, to random

George Morrow, discussing the truth behind AI on a 1986 "Computer Chronicles" episode:

"How could such names as 'expert systems' or 'artificial intelligence' ever have been coined in the first place? Well my theory was that in the late 50s, when university-based computer research was largely funded by the military, these names were invented to impress the granting agencies. As often as not, this type of research had little, if any, connection with reality. And the more ambitious the sound of the project, the better chance it had to be funded.

"Now much of today's AI-type software is quite novel and very useful. But none of these products will be able to live up to the image that the term 'artificial intelligence' invokes."

DiazCarrete,
@DiazCarrete@hachyderm.io avatar

@ChronRevisited It worked for Richard Bellmann and "dynamic programming".

WebAxe, to programming
@WebAxe@a11y.info avatar

Pro tip: if a disclosure button toggles between "show more" to "show less" or similar, you don't need aria-expanded. The state is already indicated. (This comes up again and again in audits.)

DiazCarrete,
@DiazCarrete@hachyderm.io avatar

@aardrian @WebAxe Are dynamic accNames bad?

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • kavyap
  • DreamBathrooms
  • cisconetworking
  • khanakhh
  • mdbf
  • magazineikmin
  • modclub
  • InstantRegret
  • rosin
  • Youngstown
  • slotface
  • Durango
  • tacticalgear
  • megavids
  • ngwrru68w68
  • everett
  • tester
  • cubers
  • normalnudes
  • thenastyranch
  • osvaldo12
  • GTA5RPClips
  • ethstaker
  • Leos
  • provamag3
  • anitta
  • lostlight
  • All magazines