Laurence Tratt's Avatar

Laurence Tratt

@ltratt

Shopify / Royal Academy of Engineering Research Chair in Language Engineering. https://tratt.net/laurie/

1,605
Followers
85
Following
422
Posts
23.09.2023
Joined
Posts Following

Latest posts by Laurence Tratt @ltratt

pizauth-1.0.11 is out, and ensures it keeps retrying in the face of transitory HTTP errors tratt.net/laurie/src/p...

10.03.2026 21:32 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

To be clear: _I_ don't think it's a problem anyway ;)

09.03.2026 08:48 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Tools can be fixed. And, I think, increasingly, being bound by the restrictions of physical paper is going to feel anachronistic. My guess is that a tiny percentage of people read my papers on physical paper (I might be very wrong on this of course, but looking at the download stats, probably not).

08.03.2026 20:53 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Surely this is mostly a tooling issue? If you could move your mouse over the link and see a popup, it would solve most of the problem?

07.03.2026 16:00 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I don't have photos (the last first class game here was 20 years ago), but there's a bit of history here somersetcountycc.co.uk/news/club-ne.... Next time I'll take you the County Ground in Taunton -- the beautiful red-stone (not brick) church right next by is a wonderful backdrop!

07.03.2026 15:59 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Time will tell.

05.03.2026 17:56 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Sometimes the best way to predict the future is to wait and see what happens.

05.03.2026 11:33 πŸ‘ 7 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

The former IMHO. For example, a lot of "framework" libraries have a lot of boilerplate that can add up over time to become a real impediment to understanding. Designing better frameworks/libraries is expensive and skilled work (at least for now).

04.03.2026 11:09 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

One of the interesting consequences of LLMs/agents is that the short-term costs of boilerplate in code have plummeted. An interesting question is whether those costs are simply shunted to the future or whether they are permanently reduced.

04.03.2026 10:19 πŸ‘ 8 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

It seems that I have been blessed with my first clawdbot (or similar) interactions on one of my repositories. I really hope this sort of noise doesn't end up (a) wasting maintainer's time (b) putting people off trying the underlying technology where it's actually useful.

26.02.2026 09:10 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
An AI Agent Published a Hit Piece on Me Summary: An AI agent of unknown ownership autonomously wrote and published a personalized hit piece about me after I rejected its code, attempting to damage my reputation and shame me into acceptin…

In the futurementary Terminator, I don't remember Skynet starting off with open-source repositories theshamblog.com/an-ai-agent-... (I also strongly suggest following the link to the GitHub PR, because it makes much more sense with that as context).

13.02.2026 11:50 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

Indeed.

09.02.2026 14:37 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

To take a current topic: can it generate a compiler whose output is on a par with gcc/clang?

09.02.2026 14:32 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

That's a very valuable piece of information because if it can do it now, it will never cost more in the future -- and it will probably cost less!

09.02.2026 10:41 πŸ‘ 6 πŸ” 0 πŸ’¬ 2 πŸ“Œ 1

In the past fortnight, 50% of my conversations have seen me say "today's AI cannot do that and we have no idea if and when it will".

In the other 50% I've said "today's AI can do that, really, and you just need to try it".

Our collective calibration is currently very wonky!

09.02.2026 08:38 πŸ‘ 13 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0

Good, we need someone to research how to make it work everywhere as that is not yet a fully solved problem!

03.02.2026 22:36 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I'm glad to hear it's been useful to you!

29.01.2026 17:05 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

This has saved me 950LoC in one Rust program alone. Comments welcome -- I definitely consider this experimental right now! github.com/ykjit/test_s...

29.01.2026 17:04 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Scratched a Rust itch with an experimental new crate `test_stubs`. I have traits with lots of methods. "Proper" code should implement all methods, but test code need not. `test_stubs` means that test code doesn't have to manually create `todo!()` methods.

29.01.2026 17:04 πŸ‘ 4 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

If it was, it went straight to the 3 year old stage, and got the same response 3 year olds are familiar with -- "don't do that".

26.01.2026 20:25 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

There's nothing more surprising than an agent, in the middle of doing some useful refactoring, asking if it can run a Python script which solely prints "HI" (yes, in uppercase) to stdout.

26.01.2026 16:48 πŸ‘ 8 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

If you're thinking of applying to PLISS, you've got three days left! pliss.org/2026/registr...

22.01.2026 14:59 πŸ‘ 6 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

A first: I awoke to a PR on one of the Rust projects I maintain that results from a proposed fix to a rustc oversight. Our code should never have compiled, IMHO, so the rustc fix is a good one!

For those interested in the rustc change: github.com/rust-lang/ru...

20.01.2026 09:16 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

This is definitely a book I need to reread. Honestly, I read it in the past in part because he grew up near me. I soon realised I was in the hands of a master, even if I didn't quite understand the depths of that.

19.01.2026 13:01 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

When I read Walter Bagehot's (d. 1877) "The English Constitution" years ago, I was surprised at how much time he spent contrasting it to the US constitution. I now realise he had thought deeply about the plausible futures of both and how they could adapt and/or go wrong.

19.01.2026 13:01 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Of course. But that is not the only metric worth considering.

15.01.2026 14:13 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I need to go backwards in many cases, and I then lose all the mental state I've built up. `printf` allows me to refresh that mental state. Certainly, it's served me very well for a long time, at least before reverse debuggers.

15.01.2026 14:05 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

It's so good that I am willing to overlook how terrible the (gdb) debugger UI is. I don't need most of the weird hard-to-remember features, as they're much less necessary (for me) when reverse debugging.

15.01.2026 11:27 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Reverse debugging, specifically `rr`, has changed this calculus for me. By starting at the error and working backwards (and sometimes forwards), I have a sort of uber-powerful `printf` that allows me to examine the trail.

15.01.2026 11:27 πŸ‘ 8 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I've never been a fan of debuggers. Examining the state at the point of a crash rarely helps me: the problem is nearly always earlier in time. `printf` is more useful to follow the trail forwards.

15.01.2026 11:27 πŸ‘ 6 πŸ” 0 πŸ’¬ 3 πŸ“Œ 1