# Play with address concepts
def a():
print("I am from function a")
return b
def b():
print("I am from function b")
return a
a()()()()()()
print(a,b) # a is a variable stored address of function a, vice versa.
# Another presentation
def a(x):
print("I am from function a")
x()
return a
def b():
print("I am from function b")
return a
a(b)(b) # b is a variable stored address of function b
print(a,b)
# Another presentation
# t[0](t[0](t[1]))
# t[0](t[0](t[1]))
def a(x):
print("I am from function a")
return x()
def b():
print("I am from function b")
return a
a(b)(b)
print(a,b)
#Delay function managed by address.
def a():
print("I am from function a")
return False
def b():
print("I am from function b")
return b
def c():
print("something")
d = c if a() else b
d()