Tim McGilchrist's Avatar

Tim McGilchrist

@tsmc.purely-functional.com

OCaml and Haskell connoisseur. Principal software engineer at Tarides. Compilers, runtimes, garbage collection, and general systems hackery. More at https://lambdafoo.com

129 Followers  |  27 Following  |  37 Posts  |  Joined: 11.12.2024  |  2.1458

Latest posts by tsmc.purely-functional.com on Bluesky

Hadn’t thought about publishing it there. Once I’ve done the editing I’ll share a link to it.

23.04.2025 23:25 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Super excited to have Chris Armstrong talking about OCaml and AWS at FP-SYD tonight.

23.04.2025 09:01 β€” πŸ‘ 6    πŸ” 2    πŸ’¬ 2    πŸ“Œ 0

I would keep the distributed process section, as there’s not really an equivalent Actor library in Haskell. The section on exceptions in Haskell is wonderful. More coverage on GPUs and patterns for building concurrent applications.

30.03.2025 20:21 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Three white mushrooms growing in a pot plant. Next to a cluster of green stems.

Three white mushrooms growing in a pot plant. Next to a cluster of green stems.

Wonderful mushroom surprise in my pot plant this morning. Need to lookup what variety it is.

23.03.2025 22:13 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Surfing With The Linker Aliens: Solaris Linking & ELF Blogs

For you Linker and Solaris nerds, the classic Solaris Linking & ELF Blogs are available. Lots of interesting material.

www.linker-aliens.org

10.03.2025 21:36 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Combobulate: Intuitive, Structured Navigation with Tree-Sitter Tree-sitter's promise of simplifying code navigation can seem like a dream, but in reality, it introduces its own set of challenges that complicate the process. In this article, I delve into the intri...

Hacking Emacs is so rewarding and deeply addictive. I’ve been experimenting with structured navigation using comobobulate and treesitter. Targeting OCaml and Haskell. www.masteringemacs.org/article/comb...

06.03.2025 03:23 β€” πŸ‘ 3    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0

Congratulations! I know you’ve been working on this for some time.

01.03.2025 23:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image Post image

FP-SYD getting started on the topic of SAT solvers.

26.02.2025 07:56 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
FP-Syd meeting!, Wed, Feb 26, 2025, 6:00 PM | Meetup In our February edition, we will satisfy our thirst for knowledge with: Vaibhav Sagar: SATisfying Solutions to Difficult Problems! SAT solvers have been used to find solu

Of course FP-SYD functional programming group is on tonight. There’s the promise of a SAT talk and a lightning talk. RSVP on www.meetup.com/fp-syd/event...

26.02.2025 01:15 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0

This is cool. However I’ve never had an invite to the lobster site. Can anyone hook me up with one?

24.02.2025 10:22 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Also spent some quality time with elisp this weekend improving my Emacs setup with tree-sitter and OCaml. The results are promising, using ocaml-ts-mode plus eglot and ocaml-eglot. I have all the usual LSP goodness plus tree-sitter based navigation built on combobulate.

24.02.2025 03:23 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Why do frame pointers matter for OCaml? Β· Perpetually Curious Blog

Why do frame pointers matter for OCaml? I've written up my notes on bringing frame pointers to more platforms. It has been super useful combined with Instruments on macOS, to see exactly what is happening with OCaml programs.
lambdafoo.com/posts/2025-0...

24.02.2025 03:18 β€” πŸ‘ 13    πŸ” 5    πŸ’¬ 0    πŸ“Œ 0

Exactly. This is why I want frame pointers for OCaml and to introduce a stable USDT interface for the GC. Do you have a write up on how you did that?

14.02.2025 00:29 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Interesting! I expect there are other corners that will be problematic like effects that I haven’t thought about. Right now I’m focusing on the GC and seeing what useful things can get out of that.

14.02.2025 00:22 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Experimenting with OCaml and eBPF Β· Perpetually Curious Blog

Experimenting with OCaml and eBPF. Turns out the basics are there to do interesting things like function counts and GC timings. lambdafoo.com/posts/2025-0...

14.02.2025 00:05 β€” πŸ‘ 16    πŸ” 5    πŸ’¬ 1    πŸ“Œ 0
Preview
GitHub - dhil/ocaml-multicont: multi-shot continuations in OCaml multi-shot continuations in OCaml. Contribute to dhil/ocaml-multicont development by creating an account on GitHub.

You can implement multishot continuations as a library in OCaml. github.com/dhil/ocaml-m...

11.02.2025 07:08 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Honestly it an accumulation of knowledge over time. Either reading books or source code or building my own version of something to understand how it works.

11.02.2025 07:05 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I think that’s accurate. Sometimes I’m writing assembly for codegen or fixing DWARF CFI, sometimes OCaml and recently I’ve been writing debugger support in C++.

10.02.2025 09:51 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Debugging support for macOS is improved with accurate backtraces, more improvements coming in 5.4 like frame pointers and tweaked name mangling scheme so you can set breakpoints in OCaml code.

10.02.2025 02:53 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

The curious thing about working on the OCaml compiler is the lag between features getting merged and released. Happily OCaml 5.3 is out and contains some useful performance and debugging improvements. Memory profiling is back with statmemprof, CPU profiling on MacOS works thanks to frame pointers.

10.02.2025 02:49 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Post image 22.01.2025 08:04 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
The presenter, Geoffrey, standing in front of the audience at FP-SYD meetup.

The presenter, Geoffrey, standing in front of the audience at FP-SYD meetup.

Post image

Tonight at FP-SYD, we have an OCaml in Production talk by
Geoffrey Borough from Axons Talent.

22.01.2025 07:55 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
GitHub - xclerc/ocamljava Contribute to xclerc/ocamljava development by creating an account on GitHub.

Staring from github.com/xclerc/ocaml... it couldn’t be more than a few weekends. Update to 4.14 and then a few fixes to move onto 5. 🀣

15.01.2025 21:39 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Indeed I am. Please ping me with any issues.

13.01.2025 06:59 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Could you add me Sabine?

07.01.2025 21:44 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
MirageOS hack retreats

It's usually on at least once a year in Morocco retreat.mirage.io

14.12.2024 22:24 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Awesome, hope to see you in person next year.

13.12.2024 00:41 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Trying to finish up my work on enabling frame pointers for all OCaml architectures before the end of the year. Why? So we can have nice perf support in OCaml. Currently have amd64 and arm64. RiscV and s390x are in the works.

12.12.2024 21:21 β€” πŸ‘ 4    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0

Hi Josh πŸ‘‹ from another Australian. I'm working with OCaml, mainly hacking on the compiler but sometimes working with OCaml (rather than on it). If you're around Sydney come along to FP-SYD, there's a few of us using OCaml for things.

12.12.2024 21:18 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Wonderful work Dmitrii. What kinds of topics are you covering?

12.12.2024 21:01 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

@tsmc.purely-functional.com is following 20 prominent accounts