free software resistance

 the cost of computing freedom is eternal vigilance

### fff.fig *original date:* feb 2015 *orginally posted:* sep 2024 early fig demo: ``` p, "hello, world!", left 5, ucase, locate 5 7, prints, # comment, x, int, plus 5, times 7, colortext 11, highlight 1, prints y, 32, highlight 0, colortext 10, chr, prints #while # y, 10, print # these indents are optional, they don't do anything # iftrue y # # this command breaks from while, never from if: # break # fig # wend #textmode z pset 10, 5, 10 colortext 7 z 32 chr print #z sleep 2 #graphics #z pset 10, 5, 10 colortext 7 #z sleep 2.5 function ppp pppz 32 chr print for p 1 100 pppx randint 0 3 pppy randint 0 3 pppc randint 1 7 pppz pset pppx pppy pppc pppc colortext 7 next fig z ppp z sleep 5 textmode z ppp z sleep 5 ``` a version dated may 23, 2015 replaces commas with colons- fig originally allowed one to be used optionally, then the other. for many years it has allowed both- the only mandatory syntax in fig is "quotes on strings" and # hashes are comments: ``` p: "hello: world!": left 5: ucase: locate 5 7: prints: # comment: x: int: plus 5: times 7: colortext 11: highlight 1: prints y: 32: highlight 0: colortext 10: chr: prints #while # y: 10: print # these indents are optional: they don't do anything # iftrue y # # this command breaks from while: never from if: # break # fig # wend #textmode z pset 10: 5: 10 colortext 7 z 32 chr print #z sleep 2 #graphics #z pset 10, 5, 10 colortext 7 #z sleep 2.5 function ppp pppz 32 chr print for p 1 100 1 pppx randint 0 30 pppy randint 0 30 pppc randint 1 7 pppz pset pppx pppy pppc pppc colortext 7 next fig z ppp z sleep 5 textmode z ppp z sleep 5 ``` license: 0-clause bsd ``` # 2015 mn # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted. # # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ``` => https://freesoftwareresistance.neocities.org