FractalPark
Function composition

ifthen-b1

0236be89-f1e9-5e23-b0a3-f4dd201ee788

Teaching overview

ifthen-b1’s FRM-like/1 source initializes both z and anchor from pixel. One iteration applies fn1 to z and adds anchor, then applies fn2 to that new z and adds anchor again. Its strict bailout is |z| < 4.

Source walkthrough

  1. frm-v1:373c7bfd6f8f05a21f9e9af35ea4c77fa92b6f63e3c3484f760a2ef3c03de052:init/1

    This initialization assignment sets anchor = pixel; z is also initialized from pixel by the preceding assignment.

  2. frm-v1:373c7bfd6f8f05a21f9e9af35ea4c77fa92b6f63e3c3484f760a2ef3c03de052:loop/0

    This first loop assignment sets z = fn1(z) + anchor.

  3. frm-v1:373c7bfd6f8f05a21f9e9af35ea4c77fa92b6f63e3c3484f760a2ef3c03de052:loop/1

    This second loop assignment takes the already updated z and sets z = fn2(z) + anchor.

  4. frm-v1:373c7bfd6f8f05a21f9e9af35ea4c77fa92b6f63e3c3484f760a2ef3c03de052:bailout

    The strict termination test allows continuation only when |z| < 4.

Syntax features

source-sequence

The second transform consumes the z produced by the first transform, with anchor added at both steps.

Parameter experiment

firstsecond

Steps

  1. Use first = identity and second = identity at the pinned profile. Keeping the view and all other settings fixed, change only first to sqr and render; restore it, then change only second to sqr and render.

What to observe

For each transform trial, record a visible difference or no visible difference from the identity baseline.

Exercise

Show why the second transform sees the first transform’s result, then compare one identity-to-sqr trial.

Completion check

Your response explains all 4 annotated operations, records the requested comparison, and mentions `fn1(z)` and `fn2(z)`.

Sources and rights

Pinned runtime revision 373c7bfd6f8f05a21f9e9af35ea4c77fa92b6f63e3c3484f760a2ef3c03de052 and its publication decision ground this unit.

rightsStatus: no-explicit-permission; implementationBasis: separated-independent-rewrite; publicationDecision: publish; decisionReason: publish-cleanroom-independent-rewrite-full-chain-green. This statement makes no broader claim about any third-party original.

Formula Record

ifthen-b1

This canonical FractalPark implementation is published and runnable.

Deterministic preview of ifthen-b1

Canonical source

Language
frm-like/1
Standard library
1
Profile mode
parameter-plane
Profile center
0, 0
Profile zoom
0.25
Profile iterations
96
Profile evidence
family

Parameters

  • first: function
  • second: function

Canonical source

This verified canonical revision is read-only. Remix creates a separate editable fork.

Loading canonical source…

Source and implementation

Formula ID
0236be89-f1e9-5e23-b0a3-f4dd201ee788
Canonical name
ifthen-b1
Original name
ifthen-b1
Historical source
Iterated Dynamics
Current implementation
Separated independent rewrite

Historical source: Iterated Dynamics, a successor to Fractint. The current FractalPark implementation is a separated independent rewrite; the original FRM text is not redistributed.

Rights or attribution concern?

Send the Formula ID and supporting evidence. The maintainer can hold or withdraw the implementation while the claim is reviewed. contact@fractalpark.com