Function is a block of code which performs a specific task.
1
vote
2answers
96 views
When should a function take a pointer for a collection to fill vs returning a pointer with a filled collection?
In C++ I frequently see these two signatures used seemingly interchangeably:
void fill_array(Array<Type>* array_to_fill);
Array<Type>* filled_array();
I imagine there is a subtle ...
-3
votes
1answer
115 views
Returning a variable or a return code from a function
Let assume that we have a main() function in which we call a createDirectory() function.
In Python for instance, the code would be:
def main():
# Do some stuff
createDirectory(myPath)
# ...
2
votes
2answers
56 views
Cleanly generating several 0-airty JavaScript functions with slightly different bodies
Say I have a bunch of JavaScript functions similar to:
message = [“000”, “111”, “222”, “333”];
function F0(){
alert (message[0]);
}
function F1(){
alert (message[1]);
}
function F2(){
...
-2
votes
1answer
58 views
Multiple arguments for last parameter
I have function that has three parameters, called key, value and attribute.
Parameter attribute may be empty or have within two arguments. Code of function below is shortened (deprived of arguments ...
3
votes
2answers
319 views
Differences between “first-class function” mechanisms
Some languages (Javascript, Python) have the notion that a function is an object:
//Javascript
var fn = console.log;
This means that functions can be treated like any other object (first-class ...
4
votes
1answer
132 views
Is there a programming language which requires argument qualifiers (reference/value) to be specified at the call point?
For quite a long time now, I have been using a calling convention from C++ google style guide, which boils down to the following: "[for a function] arguments are values or const references while ...
7
votes
3answers
1k views
Is a function getting a value from another function considered pure?
I'm trying to figure out a way to handle default variable values when making functions without side effects and have ended up with the following:
function getDefaultSeparator() {
return ':';
}
...
23
votes
2answers
1k views
Why is passing large anonymous functions as arguments to other functions so widely accepted in JavaScript?
I have an opinion (which I am sure will be shared by some) that passing anonymous functions which contain more than a few lines of code, as arguments to other functions affects readability and ...
1
vote
3answers
192 views
Is it considered good practice to always have methods return a value?
Sorry for the terrible title but hopefully these snippets will give you the gist.
Method 1:
class Person:
def __init__(self, name):
self.name = name
def set_name(self, new_name):
...
1
vote
4answers
130 views
How to name functions that use conditionals in refactoring [closed]
Consider this bit of code :
private Norf foo(Baz baz) {
// ...
// Logic on baz
// ...
if (baz.color == Baz.BLUE) {
// Do this thing
}
// ...
// More logic
// ...
2
votes
1answer
128 views
Enumerating the primitive recursive functions
How can I enumerate (by expression tree size, for example) all of the primitive recursive functions that map natural numbers to natural numbers in a traditional programming language like C?
For ...
1
vote
1answer
122 views
Why use tuples as function parameters in languages that support currying?
In languages that support currying, I can't think of many cases where using a tuple as function input parameters would be better than breaking the tuple apart into multiple parameters, which then ...
-1
votes
2answers
50 views
“Separate Query from Modifier” and return values [closed]
I've heard it said that you should keep query and modifier functions separate from one another, and I agree with the sentiment. When trying to apply it, I often run into two issues/questions:
What, ...
8
votes
4answers
290 views
Swift functions vs computed properties
Say I have have a class Event as follows:
class Event {
private var attendees: [Person] = []
// Case 1
//*******
// Should I use a func…
func countOfAttendees() -> Int {
...
0
votes
1answer
125 views
How to document **kwargs in python? [closed]
I have a function which has a large number of arguments.
I want to have the names of the arguments available in the help() function, but I want the results as a dict.
At the moment, I have the ...
2
votes
2answers
222 views
Java - Using a Function variable to set the toString() method's return value
Lately I've started adding this to certain classes in an in-house API:
public class MyClass {
// I usually do this with classes I expect to
// be printed out or tested a lot (particularly
// ...
1
vote
1answer
101 views
Reducing the arity of functions [closed]
I have discovered that reducing the arity of functions in my code to zero or one improves their non-functional characteristics significantly, such as testability, maintainability and their ...
0
votes
1answer
115 views
Function or class design in library API for efficient object reuse
I am currently building a library in C++11, where I spent a lot of time trying to design a good interface. After some small redesigns along the way, I've ended up with a design that I am happy with. ...
5
votes
3answers
498 views
Functions whose parameters are implicitly supplied
Callback functions are able to accept some parameters, but they are not explicitly declared when calling the function.
How does this actually work? What is going on that allows us to pass a function ...
5
votes
2answers
211 views
What is the difference between currying and partial function application in practice
I understand the difference between partial function application and a curried function (f(X x Y x Z) -> N vs f(X -> (Y -> (Z -> N)))), but I do not see what the consequence of this ...
3
votes
1answer
413 views
What does comma signify in a function definition?
From PHP manual:
array array_change_key_case ( array $array [, int $case = CASE_LOWER ] )
What does comma signify in a function definition?
1
vote
1answer
163 views
Function name in parentheses after fuction call in Python
I ran into these lines of code in the QPYTHON Android app. They are part of a sample that uses the Bottle module to create a simple Web server that seems to work fine.
app = Bottle()
app.route('/', ...
2
votes
2answers
177 views
What's wrong about extending a class with prototype methods?
I was at a bar last night with a few of my colleagues. They said that it's a bad idea to extend the functionality of basic JavaScript Objects with a prototype method.
For example, let's say you ...
-1
votes
2answers
62 views
problems compiling a function with a trait Add in Rust [closed]
I'm trying to write a generic function summ in rust - but to no avail. Could someone please elucidate the problem?
fn summ<T:Add>(a:T,b:T)->T {
a+b
}
0
votes
1answer
165 views
Const and non-const methods, and possible mutable data member?
I'm working on a design and implementation change due to a bug. The bug fix requires us to modify a class object in a const method. I think the two options are:
Have the non-const method cast this ...
0
votes
4answers
166 views
How can Guard Statements and Small Functions coexist?
By Guard Statements I mean something similar to the first part of the function:
def doSomething(String something)
{
// Guard Statement
if(!something)
{
return false
}
// ...
1
vote
2answers
108 views
Are there constraints for functions in structured programming?
I just talking with a colleague (University instructor) who teaches C (Fundamental of programming Course). He said I won't give score to a student, if he uses I/O (scanf or printf or cin count) in a ...
2
votes
2answers
182 views
Haskell types for functions
I don't understand the answer to this question:
Q: Can Haskell find a type for the function selfapply defined by: selfapply f = f f
A: The function selfapply is not typeable in the simple ...
0
votes
2answers
159 views
Is there a approximate string comparison function which is odd like mathematical functions are odd?
I say odd like a mathematical function, a mathematical function is odd if
f(-x) = -f(x)
I understand that comparing two strings may seem to have little to do with this, because the arguments cannot ...
0
votes
1answer
300 views
Setting up folders and importing modules in Python
I'm building an app to automate some processes that are annoying to do by hand (looking in a file, taking certain information out of a file, building another file with that information).
My project ...
1
vote
1answer
136 views
When should one create a new py-function rather than tweaking another one?
Me and a co-developer are arguing when it's wise to cast a new function rather than tweaking another one. By tweaking I mean an option or a hidden check in an existing function. The question could be ...
1
vote
2answers
235 views
Are any side effects not concrete side effects?
In Chapter 23 of "Object Oriented Software Construction" (1988), Betrand Meyer makes a distinction between side effects, concrete side effects, and abstract side effects.
Meyer defines a side effect ...
26
votes
5answers
2k views
Method extraction vs underlying assumptions
When I split big methods (or procedures, or functions — this question is not specific to OOP, but since I work in OOP languages 99% of the time, it's the terminology that I'm most comfortable with) ...
1
vote
3answers
409 views
How are basic functions implemented in a programming language if they are not built in? [closed]
The lowest levels of a programming language's library functions are always obscure and often have no code that looks like it even remotely does anything. Some languages have these functions like ...
0
votes
1answer
148 views
Can i create a function with variable parameters in C?
I've always wondered where a single function such as printf(); can take in variable parameters and provide the right results. For example,
printf("Number is %d",a);
which has two parameters, and
...
1
vote
2answers
59 views
Function that would output all distinct values in an array
I want to create a function that outputs the distinct values in a given array. For example, in the following sequence 2 2 1 1 5 2 , the distinct digits are 2 1 5. What I've done till now is:
void ...
31
votes
1answer
2k views
Name for a Function which Returns its Arguments?
A function that does nothing, takes no arguments and returns nothing is traditionally called a noop, or no-op. An example of a noop is below:
function noop(){}
http://en.wikipedia.org/wiki/NOP
So ...
7
votes
5answers
410 views
Should private functions be held to the same standards as public functions?
If I'm building private utility functions, should they be held to the same rigorous standards in terms of handling invalid data as public functions?
Example:If I'm writing code to calculate the ...
1
vote
3answers
335 views
What is the difference between a helper and a convenience function?
The title and the question are the same!
The two seem the same to me: a convenience is a helper. A helper is a convenience.
So when is it good to use the one or the other term?
2
votes
5answers
1k views
When, if ever, should I daisy chain functions?
I'll try to be as brief as possible in respect to your time.
In a program divided up into many functions by which it is intended that they execute themselves one after another, when (if ever) is it ...
0
votes
1answer
2k views
Python: Faster to use global variable or pass as arguments to a function? [duplicate]
Hey so i was wondering which is the more efficient way, or better practice to do in this situation.
1,
def function():
global number
number += 2
Or 2,
def function(number):
return ...
0
votes
2answers
67 views
Iterating a function with a static argument: Global functions + lambdas vs internal function?
I am never sure which of these is better form:
Option A
def a(x,y):
def b(z): return z+y
return map(b, x)
print a([10,20], 5)
Option B
def b(z,y): return z+y
def a(x,y):
return ...
3
votes
2answers
142 views
Strategies for parameter wrapping
Methods with many parameters are often sometimes unavoidable. In my own experience I often find this is the case for program entry points and complex mathematical procedures - where refactoring is ...
8
votes
4answers
1k views
why empty function are needed
I started learning python and I am wondering why empty function are needed in a programming language
e.g. in python:
def empty_func():
pass
even in shell scripts empty function empty functions ...
4
votes
4answers
2k views
int * vs int [N] vs int (*)[N] in functions parameters. Which one do you think is better?
When programming in C (or C++) there are three different ways to specify the parameter in a function that takes an array.
Here is an example (implementing std::accumulate from C++ in C) that shows ...
13
votes
5answers
4k views
Why is *declaration* of data and functions necessary in C language, when the definition is written at the end of the source code?
Consider the following "C" code:
#include<stdio.h>
main()
{
printf("func:%d",Func_i());
}
Func_i()
{
int i=3;
return i;
}
Func_i() is defined at the end of the source code and ...
1
vote
1answer
72 views
Are there defined standards for argument sequence? [closed]
Say I have a function taking three arguments:
a symbol (an alias for a class, method or function name)
a mirror/reflection of a specific object
a mirror/reflection of a class in general
is there a ...
3
votes
3answers
308 views
When is inlining worth it?
Modern compilers often inline functions when they decide it is worth it.
But here comes my question: how does one define if it is optimal to inline function at given time, or more important how to ...
1
vote
0answers
17 views
Hidden event handlers and their parameters
I'm having a bit of trouble understanding why has an event handler to be defined as a function.
AFAIK, a function can be used as
anonymous
called procedure
as event handler
It defines a ...
1
vote
2answers
258 views
memory needed to store a function in javascript
I have been using sizeof.js to investigate the size of various objects in javascript. It appears from this that the size of a function is essentially zero bytes, regardless of how many instructions ...