| ▲ | mastermage 3 days ago |
| That's why procedure is so much better of a name. It's not a hill I'm willing to die on but I think it's correct. |
|
| ▲ | jasperry 3 days ago | parent | next [-] |
| Seconded. Languages could even use "function" only for pure functions and "procedure" for everything else. Pascal uses "procedure" for things that don't return a value, but I think the pure vs. side effect distinction is more useful. |
| |
| ▲ | austin-cheney 3 days ago | parent [-] | | In languages that have block scope a procedure is that block. It’s a boundary but receives no input and does not return output. Functions do allow input and do return output. This distinction is clear in C lang that has both functions and procedures. As a new language design feature procedures could be assigned to references for reuse in the same way as calling a function by name/variable. | | |
| ▲ | jasperry 3 days ago | parent [-] | | I've never heard of blocks in block-scoped languages being called procedures. I feel like the word "block" is well understood and serves the purpose fine. In lots of other languages, things called procedures do take input, like Ruby, which has first-class Procs like you mentioned. |
|
|
|
| ▲ | ffsm8 3 days ago | parent | prev [-] |
| And let's use the keyword "go-to" to run a function, back to the basics basically ಥ ‿ ಥ |
| |