Hi folks. I find it weird that the following code works:

```
julia> begin
for f(x)=2
@show f(1)
@show typeof(f)
end
end
f(1) = 2
typeof(f) = var"#f#1"{Int64}
```

I suppose the result of `f(x)=2`

in the second line is not iterable, so `invalid iteration specification`

error should occurs there.

1 Like

I think it’s great that this works.

Compare

```
for f = (sin, cos, tan)
@show f(1)
end
```

and

```
for x = 1
@show x
end
```

I see no reason to special-case disallow the single assignment for loop just because the assignment in question is a function.

1 Like

Thanks for your reply. I also like iteration over functions.

You mean that the second line `for f(x)=2`

in my first post is equivalent to `for f = [x->2]`

in the following code ?

I am confusing whether `f`

in `for f(x)=2`

is function name or loop control variable.

```
julia> begin
for f = [x->2]
@show f(1)
end
end
f(1) = 2
```