There's a little BASIC resurgance now. I've been having fun with this https://github.com/ReuvenSwirsky/erlbasic "Erlang BASIC" which implements a mini-computer style time sharing BASIC system in Erlang. There's a beta of it online now, running a more advanced version than the branch on github, that I'm having a lot of fun with.
I'll see if I can port this "Vi" to this flavor of BASIC.