All of the above.
Additionally, back when I worked with Pick databases, I was able to make PickBASIC serve & request HTTP by opening sockets and speaking HTTP in the code myself. I used this to "modernize" some legacy applications.
I'm currently porting an open source project of mine from node.js to Go for better performance.