Deutsch   English   Français   Italiano  
<jwvfrialnlr.fsf-monnier+comp.lang.lisp@gnu.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: Stefan Monnier <monnier@iro.umontreal.ca>
Newsgroups: comp.lang.lisp
Subject: Re: A Mandelbrot set generator in HG LISP
Date: Mon, 14 Apr 2025 12:22:33 -0400
Organization: A noiseless patient Spider
Lines: 35
Message-ID: <jwvfrialnlr.fsf-monnier+comp.lang.lisp@gnu.org>
References: <Mandelbrot-20250412145830@ram.dialup.fu-berlin.de>
	<vtevj6$1k3qh$3@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 14 Apr 2025 18:22:33 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="77a0169c2de61256d8ade062d7b8ff6a";
	logging-data="1752772"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX19LwOlPTdDHYbiQSurNGnsjQuYVJJKEUug="
User-Agent: Gnus/5.13 (Gnus v5.13)
Cancel-Lock: sha1:dJKELKr1dYoVlQj7letWfxogFFE=
	sha1:9eKrqSZiFokGOv8bZajfnkZVcsE=
Bytes: 1867

> I was never a fan of “parenthesis pileup” layout. Try this for comparison:
>
> (SETQ MANDELBROT
>   (LAMBDA (X Y)
>     (PROGN
>       (SETQ C 126)
>       (SETQ Z (LIST X Y))
>       (SETQ A Z)
>       (SETQ ITERATE
>         (LAMBDA ()
>           (COND
>             ((OR (< C 32) (> (CABS Z) 2))
>                  (- 126 C)
>             )
>             (T
>               (PROGN
>                 (SETQ TEMP-CMUL (CMUL Z Z))
>                 (SETQ TEMP-CADD (CADD A TEMP-CMUL))
>                 (SETQ Z TEMP-CADD)
>                 (SETQ C (- C 1))
>                 (ITERATE)
>               ) ; PROGN
>             )
>           ) ; COND
>         ) ; LAMBDA
>       ) ; ITERATE
>       (ITERATE)
>     ) ; PROGN
>   ) ; LAMBDA
> ) ; MANDELBROT

Eww!


        Stefan