I've used that algorithm and extended it to handle distfix expressions[1]. For instance it can parse the expression
1 + if true then 1 else a b + c
as (represented as an s-expr using some weird angle brackets): ⟨+ 1 ⟨if␣then␣else␣ true 1 ⟨+ ⟨a b⟩ c⟩⟩⟩
I thought it was cool and could be useful to a lot of simple use cases.