@Desmond Cheong didn't get a ton of time today, but could you take a look at this draft? I'll implement the kernels as soon as I can. This has all the setup and plumbing for try_encode/try_decode along with both binary and text encoding types. Then there's a special path for an optimized utf-8 decode/try_decode.
https://github.com/Eventual-Inc/Daft/pull/4060