|
|
|
|
|
by kajaktum
57 days ago
|
|
I am rebuilding numba. It is very hard for me to imagine doing it by hand. I tried it a couple of years ago but it was excruitiangly painful. It was slow and messy. So many small things that gets stacked on top of each other over years of abstraction. I am doing it again using LLM. Legitimately, things that would have taken weeks is now done overnight. I still have to look at the code, at the generated C output, still have control over the architecture to make it easy for me and the LLM to work with in the future, etc Is this replacing my thinking? I am not sure. I suppose I would have learnt a lot more about compilers/transpilers had I preserver through it for months with manual writes and rewrites but I would solely be working on this. Instead, I also had some time to write a custom NFS server support for a custom filesystem in Golang. |
|
I'm extremely confident the answer is yes.
But we have to judge how much value that particular thinking has.
As an instructor, I've implemented linked list functionality a zillion times. I'm on the long tail of skills-gain from each reimplementation. But every time I implement it, I'm gaining a little more.
Now, is it worth it? Probably not. The time spent on that marginal gain would be better spent implementing something more novel by hand. So punting to an LLM, while it costs me, might be a net gain in that case. But implementing another compiler? Hell yeah, that would be replacing my thinking. I've only ever made one PL/0 compiler plus that one yacc thing in compiler theory class, and those were a long time ago.
We should quantify the loss of thinking when we decide how much to punt the code creation to someone or something else.