They're functions that wrap functions to provide additional functionality.
In your opener with Flask, what its route function does is register the views with the framework so you're not doing something like:
def index() -> flask.Flask:
return flask.make_response('', 200)
app = flask.Flask('app')
app.add_url_rule('/', 'index', index)
It makes the framework a little more declarative.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.