...

cleak

54

Karma

2018-08-10

Created

Recent Activity

  • This looks interesting, but I have no idea what I’m looking at with the original paper. Could someone provide a simple summary that doesn’t rely on knowledge of Quadratic Voting?

  • The book Smarter Faster Better introduced me to the concept of disfluency - the idea that extra friction such as awkward fonts, new environments, different tools, etc will pull you out of autopilot mode and force you to think in new ways. I haven’t seen references to it elsewhere, but it’s changed how I approach problems and learning the last 9 years. Switching to a notebook is one great way I use to trigger this as well.

  • I’m curious about this as well, especially since all coding assistants I’ve used truncate long before 1M tokens.

  • Commented: "Claude 4"

    Something I’ve found true of Claude, but not other models, is that when the benchmarks are better, the real world performance is better. This makes me trust them a lot more and keeps me coming back.

  • > It's a paradigm that had (debatable) value in the late 1990's and early 2000's when Unreal Engine and Unity had been designed and OOP was all the rage ;)

    For inheritance, I 100% agree. Composition all the way. I think it has value as an interface though - at least for quick bring up and fast iteration. It can of course bring scaling challenges - I recently worked on a project that had hundreds of devs and more than 50k game components. That brought all of the architectural and performance challenges you'd expect from this approach.

    > Also, the more important problem with indirect function calls than the call overhead is usually that they present a hard optimization barrier for the compiler.

    In the years I've had to think about this, I'd take a slightly different approach that should be more amenable to compiler optimization. I'd maintain separate lists for each concrete type and have a type aware process function (via templates) which requires all overrides to be marked final. That should allow the compiler to do inlining, avoid indirections, etc. The major downside here is handing over a footgun to the dev - forget that final keyword or pass the object in not as concrete type and performance will suffer. I'd probably still walk the vtable to see if a function has been overridden - it's unfortunate that there doesn't seem to be a way to do this without resorting to such tricks.

HackerNews