
Why Do We Call Functions? Unraveling the Mystery
Description
In this episode of Tech Talk, we explore the intriguing question of why programmers say they 'call' functions. Joined by expert Arthur O'Dwyer, we delve into various analogies that illuminate this concept. From comparing it to calling a friend for help, to summoning a servant, and even making a phone call for answers, we dissect the deeper meaning behind function calls. Arthur explains how the term 'call' has roots in library science, akin to 'calling for' a book, and highlights historical references that solidified this terminology in programming. Join us for an insightful discussion that not only clarifies the concept but also connects it to the evolution of language in technology.
Show Notes
## Key Takeaways
1. The term 'call' in programming refers to summoning a function to perform a task.
2. Different analogies help explain the concept: calling a friend, summoning a servant, and making a phone call.
3. The term has roots in library science, where it relates to retrieving resources.
4. Historical context shows how programming language has evolved, with early mentions dating back to 1947.
## Topics Discussed
- The meaning of 'calling' a function
- Analogies for understanding function calls
- The connection to library science
- Historical references in programming terminology
Topics
Transcript
Host
Welcome back to another episode of Tech Talk! Today, we're diving into an interesting question that's been floating around in programming circles: why do we say we 'call' functions? To help us unravel this mystery, we have expert Arthur O'Dwyer with us. Arthur, welcome!
Expert
Thanks for having me! It's great to be here.
Host
So, let's start from the beginning. When programmers talk about 'calling' a function, what exactly does that mean?
Expert
Great question! When we say 'call a function,' we're essentially summoning that function to perform a specific task for us. It's like asking a friend to come over and help you with something. You call them, they come, you work together for a while, and then they leave.
Host
I love that analogy! It makes it so relatable. But I've also heard other interpretations. Some people say it's more like calling a servant. What do you think?
Expert
That's another good comparison! In that sense, you're summoning someone to do a job for you. When you call a function, you're asking it to do a specific operation, much like you'd ask a servant to carry out a task.
Host
And then there's the phone call analogy, where calling functions is like making a phone call to get answers. Can you elaborate on that?
Expert
Absolutely! In programming, you can think of calling a function as making a call to an external source for information or a response. You send a request, and the function gives you back the result, similar to how you might ask a friend a question and get an answer.
Host
So, out of these interpretations, it seems like the summoning aspect is the most accurate. Can you elaborate on how this idea of 'calling' functions comes from older concepts?
Expert
Definitely! The term 'call' actually has roots in library science. When you 'call for' a book in a library, you’re summoning it from a closed stack. In programming, we’re doing something similar when we 'call' a subroutine out of a library of functions.
Host
That’s fascinating! So, it’s like a librarian retrieving a book for you?
Expert
Exactly! Just like a librarian provides you with the exact book you need, a function retrieves and processes the data you require.
Host
I see how that works! Was there a specific historical moment that cemented the term in the programming world?
Expert
Yes, in fact, one of the earliest mentions of 'call' in the context of programming was by John W. Mauchly in 1947. He discussed how subroutines need to be easily referenced and initiated, which really set the stage for our current understanding.
Host
That's incredible! So, 'calling' a function is really about summoning it to execute its task, just like how we might call for help or information. It’s a concept that combines historical context with practical application.
Expert
Exactly! It's interesting how language evolves and how these terms carry meanings from other fields into programming.
Host
Well, Arthur, thank you for shedding light on this intriguing topic. I think our listeners will have a much clearer understanding of why we 'call' functions now.
Expert
Thank you for having me! It's been a pleasure discussing this.
Host
And thank you to our listeners for tuning in! Until next time, keep questioning and exploring the world of technology!
Create Your Own Podcast Library
Sign up to save articles and build your personalized podcast feed.