Hy PyO3!
Lately, I've been messing with Codelist Tools, a Rust library for working with medical codelists. Among other things, it uses PyO3 to provide bindings that enable its use from Python. I had not tried this before. It's fun!
It occurred to me that it should also work from Hy, a Lisp dialect for Python. So, I gave it a try…and it does!

Running either of these produces
[('B01', 'Varicella [chickenpox]'), ('B01.0', 'Varicella meningitis'), ('B01.1', 'Varicella encephalitis'), ('J00', 'Acute nasopharyngitis [common cold]')]
('B01', 'Varicella [chickenpox]')
('B01.0', 'Varicella meningitis')
('B01.1', 'Varicella encephalitis')
('B01X', 'Varicella [chickenpox]')
('J00', 'Acute nasopharyngitis [common cold]')
('J00X', 'Acute nasopharyngitis [common cold]')
('B01', 'Varicella [chickenpox]')
('J00', 'Acute nasopharyngitis [common cold]')
That is, methods like add_x_codes
and truncate_to_3_digits
were not written in either Hy or Python; they were written in Rust. But PyO3 allows them to be used from Python and therefore from Hy. That is so cool! I mean, the Hy project might not even know about the PyO3 project (and vice versa), but I can still use them together to write Hy code in Rust! Amazing!