The difference is simplicity. Instead of opening 10 different script files and trying to reference them with labels all darkstar has to do is make a button labeled "Edit Functions" then it opens the text document, you edit it then CTRL + S and call the function you added in the walker. The idea is that when you create a function like that you can use it anywhere without having to rewrite the function each time for example checking cap, you can have multiple areas of your walker check your cap simply by putting Action(doCheckCap()) and doCheckCap() would be the function you created in functions.lua or w/e darkstar would name it by default.
Edit:
Or am I misunderstanding the walker label system? Does the walker label name correspond directly to the .lua filename already? (I haven't actually played around with the labels yet)