《Programming Wizards!》Functions
Advertisement
“What happened to your face?”
“Accident during a venture.”
“Well,” he poured two drinks and offered one. “I’m glad you’re safe.”
He took a seat across Vick and accepted it. “We need to get the system we found into the database.”
“Sure, we’ll get that in. Do you know what return type it had?”
“Seemed like a new one. I’m not sure if it was a function or method.”
“Speaking of functions,” he laughed, “I taught my class them today.” He was in the mood to meet his friend with a lighthearted story. Avoiding the reminder the day had set in front of them.
“Oh, yeah?” said Amare, feeling curious about his story. Vick never brought up his class, but for some reason it was different this year, and he too wished to forget about this day. “How’d it go?”
“Well, one of the students asked me if you could return a reference to a value. Then, another one asked if you could return a function. What are these kids? Where are they getting their questions from?”
“Did you teach them about delegates?”
“No way,” he shook his head. “Well, kind of, but that would be jumping way ahead.”
“It’ll get them venturing as soon as possible.”
“Yeah, I’ll teach them about classes soon, then send a request to Control.”
An open document on the desk consisted of code. “Is this the code you showed them?”
float Add(float x1, float x2) { return x1 + x2; }
“Yes, just a simple addition function. Takes two float parameters, returns a single float value. Funny thing is, someone asked if you could make a single function that can take any number of parameters instead of a set amount. And, another student answered that you could use an array for that.”
float Add(float[] x) { float value = 0f; foreach (float v in x) { value += v; } return value; }
“And then, I thought I had to explain what a ‘for each loop’ was, but they guessed that it would enumerate through the entire array. Basically a ‘no condition for loop,’ as one called it.”
Advertisement
“Did they use the word ‘enumerate’ to explain it, too?”
“No way,” he shook his head. “If that were the case, they’d be on an expedition right now.”
“Did they understand return types?”
“I explained to them that in this language, the ‘float’ before the name is its return type. Meaning, the function has to return a float. This could be any other data type, but for this, it was a float. And, when ‘return’ is called, the function stops executing and gives the caller the returned value. And then guess what?”
“What?” He leaned in.
“‘Does the return always need to be at the end?’ he said.”
“Who said?”
He pointed two fingers above his eyes. “The kid with the sharp brows.”
“What kid?”
“This kid,” he said and opened a document that listed pictures of the students alongside their names. “Roy.”
“Roy, what a conscientious kid!”
float AddBelowFive(float[] x) { float value = 0f; foreach (float v in x) { value += v; if (value > 5f) { return -1f; } } return value; }
“So, I explained to them that there can be as many returns in the function, but the function must conclude by returning a float.” He rubbed his eyes to clean the escaping tears, both from the unexpected hilarity and sharp-wittedness. “They actually asked,” he continued, “if you could pass a function as a parameter because the square brackets on the array made it look like a function. They thought if an array can be passed in, maybe a function can be too.”
His spit went flying with his laughter. “A red herring landed them straight into advanced techniques? What did you tell them?“
“I explained to them that a function is like a class. Although, they had no idea what a class was. So, I explained to them that when I write ‘Console.WriteLine,’ the ‘Console’ part is referencing a class. The Console class contains functions within it. One of them is ‘WriteLine.’ I use that function to print text onto the screen. A function—and I probably jumped too ahead—is like a class. By putting parentheses at the end of a function’s name, you are calling it to be executed. It’s like writing the ‘WriteLine,’ but without a name of its own.”
Advertisement
“Did they figure out you can reference functions?”
He smiled as if he were caught. “Yes, yes they did. I told them that a function can be treated like any other variable. That the ‘type’ of a function is made of its return type and parameters. I quickly wrote an example for them.”
float Add(float x1, float x2) { return x1 + x2; } Func add2 = Add;
“I told them that in this language, a ‘Func’ is a type. I didn’t call it a delegate to not convolute the terminology, but yes, a ‘Func’ is a delegate which is a type. We give this Func three parameters, and the last parameter is the return type, whereas all the parameters before that are the parameters for the function. Hence, ‘float, float, float.’ Now, ‘add2’ can be executed like the ‘Add’ function by using parentheses.”
“Observant students!”
“They sure are.” He stood up and they both caught a glimpse of the date upon the desk as its screen went dark. “Anyway, lunch?”
A burrito filled with all sorts of vegetables, and on the opposite, a single sandwich. “Once we figure out where the system leads us, we can finally figure out who the caller is.” He sighed. “How long has it been?”
“Feels like a much longer time, but today marks four years.”
“Remember Dorothy?”
“Yeah, what about her?”
“Right,” he said and began playing with the onions inside the wrap.
Vick said nothing, not wanting to intrude on whatever it was Amare was feeling. He sniffed, and Vick saw the gleam in his eyes and how his thick brows frowned as he darted his head from one end of the cafeteria to the other. Held back those tears from flowing in the middle of the crowd. A dozen seconds passed and he was inclined to break the tension. “You—”
“I—”
“Loved—”
“Loved—”
“Her.”
“Her.”
They looked at each other and faintly smiled simultaneously, just as they had said those words. And, Amare turned away. “What made you think of her?”
“I saw a hand reach out to me through the hole in the sky.”
“Hole in the sky?”
“Yes,” he pointed up. “Above the clouds, from the stars.”
“In the gyroplane? When did it happen?”
“Yesterday, I went up there alone. I tried to reach for her but Rorohiko stopped me. I crashed onto the floor and had glass splinters fly into my face. Then, her light called out to me and I was able to pull myself up.” He paused to look up at the bright lights that were fifteen meters high. “The Cleaner-Lower,” he said. “She made it shine for me.”
The thought of a cleaning robot being his savior made Vick chuckle. “You’re a hopeless romantic.” Amare stared at the lights with a miserable smile, either taking his words seriously or not listening. “I’m kidding,” he said quietly. “Well, now I know what you meant by ‘accident,’” he said louder, trying to divert the situation from prolonged awkwardness.
“You’re eating that sandwich again.”
“Yes,” he said, caught off-guard by the sudden change in tone. “It’s quite delicious.”
“Don’t you ever get bored of it?”
“No. I mean, why change something that’s not broken?”
“To try something new, find something better.”
“I guess, but…”
“But?”
“I’m already eating this.”
“Next time!” he said a bit too loudly and it washed away every wrinkle of sadness from his face. “Next time I’ll prepare a tasty meal for you. How does that sound?”
“Yeah, yeah,” he said softly. “That sounds wonderful.”
Advertisement
- In Serial39 Chapters
Age Of Islands: I Can See Through All Things
Jack accidentally transmigrates to another world and saves a drowning Fox-eared Girl. After exchanging the phone he always carried with him for an island pearl, Jack begins his life as President of New World Island in a foreign world.
8 263 - In Serial18 Chapters
My pets train themselves
Linus's soul has been transferred into the body of an 18-year-old boy with the same name and looks, but this isn't earth anymore. He has arrived at a new planet where vicious beasts capable of flattening mountains reside outside the human cities. Humans on the other hand have survived by contracting those beasts and becoming pet trainers after awakening and cultivating their contract space. Linus is determined to become a mythical pet trainer with a mythical beast under his control, but will he succeed as an orphan who doesn't even have enough money for the lowest iron rank pet?
8 77 - In Serial55 Chapters
Petrichor
Cody is adrift. Emily is alone. Sara is spiraling into darkness. Andrew is out of control. Chris is losing his mind. Grace makes the mistake of being friends with all of them. The friendship this six share will forever shape who they are. In the town of Darkwood, Washington they are forced into the harsh reality of the world as the consequences of their actions catch up to them. Their lives are entangled in the hands of fate as a collision course to their demons fast approaches.
8 86 - In Serial13 Chapters
Another World With The Skyrim System!
Basically, Grant Chambers was summoned to another world with a system called the Skyrim System... there done, description over, where's my paycheck!?
8 122 - In Serial11 Chapters
OP player in another world!
SLASH was the most famous VR in the world. Luke dias was a god class player in the game but he died after soloing the last boss. Then he get reincarnated. release atleast 3 time a week AUTHOR NOTE: In hiatus for atleast 2 month
8 126 - In Serial27 Chapters
Trapped in fear as history repeats
Meredith Grey grew up in an abusive family but she meets the love of her life, how will her life turn out? Will they be happy and grow old together?Starting from another point in Meredith's life and re-writing some events that have happened on the showSeveral TW's
8 181

