How to pass a runnable procedure (a function) as a parameter and run it in Go

2 Answers

0 votes
package main

import "fmt"

// Define a type for a function that takes no arguments and returns nothing
type Runnable func()

// A procedure that accepts a Runnable and executes it
func execute(r Runnable) {
    r() // Call the passed function
}

func main() {
    // Define a function to pass as a parameter
    myFunction := func() {
        fmt.Println("abcd")
    }

    // Pass the function to the execute procedure
    execute(myFunction)
}



/*
run:

abcd

*/

 



answered May 22, 2025 by avibootz
0 votes
package main

import "fmt"

func main() {
	control(say)
}

func control(f func()) {
	f()
}

func say() {
	fmt.Println("abcd")
}



/*
run:

abcd

*/

 



answered May 22, 2025 by avibootz
...