Mandelbrot set: Difference between revisions

adding lambdatalk answer
(→‎Mandelbrot Set with Julia Animation: Changed to Julia's broadcast functionality to shorten the code.)
(adding lambdatalk answer)
Line 5,418:
iterate abs int 5 min 'print_line apply # Compute & print
</lang>
 
=={{header|Lambdatalk}}==
 
Lambdatalk working in any web browser has access to javascript and could draw the mandelbrot set very quickly in a canvas, for instance here:
- http: // lambdaway.free.fr/lambdawalks/?view=mandel_canvas
 
Here we show a pure lambdatalk code, a slow but minimalistic and easy to understand version without the burden of any canvas. We just compute if a point is inside or outside the mandelbrot set and just write "o" or "." directly in the wiki page.
 
<lang Scheme>
{def mandel
 
{def mandel.r
{lambda {:iter :cx :cy :norm :x :y :count}
{if {> :count :iter} // then norm < 4
then o // inside the set
else {if {> :norm 4} // then iter > max
then . // outside the set
else {let { {:cx :cx} {:cy :cy} {:iter :iter}
{:X {+ {* :x :x} -{* :y :y} :cx}} // compute
{:Y {+ {* 2 :x :y} :cy}} // z = z^2+c
{:count {+ :count 1}}
} {mandel.r :iter :cx :cy
{+ {* :X :X} {* :Y :Y}} // the norm
:X :Y :count} }}}}}
 
{lambda {:iter :cx :cy}
{mandel.r :iter
{+ {* :cx 0.05} -1.50} // centering the set
{+ {* :cy 0.05} -0.75} // inside the frame
0 0 0 0} }}
-> mandel
 
We call mandel directly in the wiki page
 
{S.map {lambda {:i} {br} // loop on y
{S.map {{lambda {:i :j} // loop on x
{mandel 20 :i :j}} :i} // compute
{S.serie 0 30}}} // x resolution
{S.serie 0 40}} // y resolution
 
</lang>
 
<pre>
. . . . . . . . . . . . . . . o . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . o . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . o . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . o o o . . . . . . . . . . . . . .
. . . . . . . . . . . . . . o o o . . . . . . . . . . . . . .
. . . . . . . . . . . . . o o o o o . . . . . . . . . . . . .
. . . . . . . . . . . . o o o o o o o . . . . . . . . . . . .
. . . . . . . . . . o o o o o o o o o o o . . . . . . . . . .
. . . . . . . . . . o o o o o o o o o o o . . . . . . . . . .
. . . . . . . . . . o o o o o o o o o o o . . . . . . . . . .
. . . . . . . . . o o o o o o o o o o o o o . . . . . . . . .
. . . . . . . . . . o o o o o o o o o o o . . . . . . . . . .
. . . . . . . . . . o o o o o o o o o o o . . . . . . . . . .
. . . . . . . . . . . o o o o o o o o o . . . . . . . . . . .
. . . . . . . . . . . . o o o o o o o . . . . . . . . . . . .
. . . . . . . . . . . . o o o o o o o . . . . . . . . . . . .
. . . . . . o . o o o o o o o o o o o o o o o . o . . . . . .
. . . . . . o . o o o o o o o o o o o o o o o . o . . . . . .
. . . . . . o o o o o o o o o o o o o o o o o o o . . . . . .
. . o o o o o o o o o o o o o o o o o o o o o o o o o o o . .
. . . o o o o o o o o o o o o o o o o o o o o o o o o o . . .
. . . . o o o o o o o o o o o o o o o o o o o o o o o . . . .
. . o o o o o o o o o o o o o o o o o o o o o o o o o o o . .
. . . o o o o o o o o o o o o o o o o o o o o o o o o o . . .
. . o o o o o o o o o o o o o o o o o o o o o o o o o o o . .
o . o o o o o o o o o o o o o o o o o o o o o o o o o o o . o
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
o . o o o o o o o o o o o o o o o o o o o o o o o o o o o . o
. . o o o o o o o o o o o o o o o o o o o o o o o o o o o . .
. . . o o o o o o o o o o o o o o o o o o o o o o o o o . . .
. . o . o o o o o o o o o o o o o o o o o o o o o o o . o . .
. . . . o o o o o o o o o o o o o o o o o o o o o o o . . . .
. . . . o o o o o o o o o o o o o o o o o o o o o o o . . . .
. . . . o o o o o o o o o o o . o o o o o o o o o o o . . . .
. . . . o . . . o o o o o o . . . o o o o o o . . . o . . . .
. . . . . . . . o . . o o . . . . . o o . . o . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
</pre>
 
=={{header|Lasso}}==