Aliases are like C macros
$ alias foo='seq 3 | '
$ foo cat
1
2
3
Functions are functions $ alias foo='seq 3 | '
$ foo cat
1
2
3
Functions are functionsCan't do that without eval, which is another can of worms. Aliases are fine