def fibonacci(x: int) -> list[int]: start = [0,1] for i in range(1, x): start.append <| start[i] + start[i - 1] return start def a(): yield 1 +> 2 def b(): yield from a() +>> a() b() |> list |> print a = 12 |> fibonacci b = a :: a :: a :: a c = b :: b :: b :: b print <| [i for i in c] print <*| ('a', 'b', 'c') d = lambda x: x * 2 #d2 = λ x: x * 2 d3d = curry <| (lambda x, y: x**2 + y**2) print(d3d(2,4)) print(d3d(2)(4)) print(d3d(x=2)(y=4)) @curry def d3d2(x,y) = x**2 + y**2 print(d3d2(2,4)) print(d3d2(2)(4)) print(d3d2(x=2)(y=4)) a = 1 a++ print(None ?? a) # 2 '''a''' /* very bad code that is commented out for a very good reason */ a++ /* something */ # something dtwice = compose(d,d) print(dtwice(2))