Golang : On lambda, anonymous, inline functions and function literals




This is just a note for myself and maybe it can be useful to you too. In Golang, lambda, anonymous and inline functions are known as function literals. What it does is to allow you to create a short callback function but without creating a separate named function. In a nutshell, it allows you to specify the one-line function "in-line" a.k.a on the fly...

For example:

 package main

 import (
 "fmt"
 )

 func main() {
 add := func(a ,b int) int { return a + b }
 fmt.Println(add(1,2))
 }

This one-line function is rarely used, but can be useful in situations where you need to create a short callback function to evaluate various expressions quickly.

Hope this helps!

References:

https://golang.org/ref/spec#Function_literals





By Adam Ng

IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.


Advertisement