Question: A question in plot command

Here I difine a subfunction:

mandelbrot := proc(x, y)
local c, z, m;
c := evalf(x+y*I);
z := c;
for m to 30 while abs(z) < 2 do
z := z^2+c
od;
abs(z);
end:

Then I want to plot this function using densityplot command:

plots[densityplot](mandelbrot, -2 .. 0.7, -1.2 .. 1.2, grid=[50, 50], style=patchnogrid, scaling=constrained);#This command is right.

But...

plots[densityplot](mandelbrot(x,y), x=-2 .. 0.7, y=-1.2 .. 1.2, grid=[50, 50], style=patchnogrid, scaling=constrained);#Error, the proc I defined could not determine whether abs(x+1.*I*y) < 2.

Changed a little:

plots[densityplot]('mandelbrot'(x,y), x=-2 .. 0.7, y=-1.2 .. 1.2, grid=[50, 50], style=patchnogrid, scaling=constrained);#Only add two single quotes between mandelbrot and give the same figure as the first one.

My question is why the second is not correct, and what do the two single quotes act on the plot command? Thank you.

PS: how can I modify or delete the same question I've posted before(not completed)?
Please Wait...