Whats the point of circleci orbs?
Let me answer each your question in parts.

What the point is?

As per Orbs Introduction:


  orbs are shareable packages of configuration elements, including jobs, commands, and executors. 
  CircleCI provides certified orbs, along with 3rd-party orbs authored by CircleCI partners


The advantages of this approach are that an authorized package of jobs, commands, and executors is offered.

Assuming hundreds of orbs, it looks like a community-approved plugin/addon ecosystem. E.g. Ansible roles or Jenkins plugins or Wordpress plugins

orbs vs shell functions/script

Since orb packages:


jobs, 
commands,
and executors, 


then it can hardly be replaced by a simple combinations of shell commands/functions. 

Seems like unnecessary lockin?

As for lock-in concerns: you are right. 

It looks like lock-in. And it is lock-in. 

But as I know, there isn't any portable solution than can be easily migrated from one CI/CD system to another. E.g. try to convert .gitlab-ci.yml to travis.yml.

But lock-in's, as usual, tend to give you an advantage in speed or ease of deployment.

Portability

Since there are four executor types (docker, machine, windows and macos), it gives you more portable and cross-platform approach.