free software resistance

 the cost of computing freedom is eternal vigilance

### wheel.fig *original date:* mar 2015 *originally posted:* sep 2024 originally a basic program, then a python script, this silly program was also ported to fig: ``` #'# hamster #'# 2006, 2014 mennonite #'# public domain #'# ported to fig 2015 p "" colortext 15 p 27 chr plus "[?25l" prints while p "" locate 16 1 : plus " _--_ " prints p "" locate 17 1 : plus " .`\ `. " prints p "" locate 18 1 : plus " / \ \ " prints p "" locate 19 1 : plus " \ \:)/ " prints p "" locate 20 1 : plus " ',/\~\,' " prints p "" locate 21 1 : plus " / '--' \ " prints p "" locate 22 1 : plus " /________\ " prints locate 1 1 p "" sleep 0.02 p "" locate 16 1 : plus " _--_ " prints p "" locate 17 1 : plus " .` | `. " prints p "" locate 18 1 : plus " / | \ " prints p "" locate 19 1 : plus " \ | :)/ " prints p "" locate 20 1 : plus " ',/~/\,' " prints p "" locate 21 1 : plus " / '--' \ " prints p "" locate 22 1 : plus " /________\ " prints locate 1 1 p "" sleep 0.02 p "" locate 16 1 : plus " _--_ " prints p "" locate 17 1 : plus " .` /`. " prints p "" locate 18 1 : plus " / / \ " prints p "" locate 19 1 : plus " \ / :)/ " prints p "" locate 20 1 : plus " ',/\~/,' " prints p "" locate 21 1 : plus " / '--' \ " prints p "" locate 22 1 : plus " /________\ " prints locate 1 1 p "" sleep 0.02 p "" locate 16 1 : plus " _--_ " prints p "" locate 17 1 : plus " .` `. " prints p "" locate 18 1 : plus " /______\ " prints p "" locate 19 1 : plus " \ :)/ " prints p "" locate 20 1 : plus " ',\~/\,' " prints p "" locate 21 1 : plus " / '--' \ " prints p "" locate 22 1 : plus " /________\ " prints locate 1 1 p "" sleep 0.02 wend ``` by august 30 it would catch the error caused by ctrl-c so you could stop the loop without a traceback: ``` #'# hamster #'# 2006, 2014 mennonite #'# public domain #'# ported to fig 2015 p = "" : colortext(15) p = (27).chr().plus("[?25l").prints() try while p = "" : locate 16, 1 : plus(" _--_ " ).prints() p = "" : locate 17, 1 : plus(" .`\ `. " ).prints() p = "" : locate 18, 1 : plus(" / \ \ " ).prints() p = "" : locate 19, 1 : plus(" \ \:)/ " ).prints() p = "" : locate 20, 1 : plus(" ',/\~\,' " ).prints() p = "" : locate 21, 1 : plus(" / '--' \ " ).prints() p = "" : locate 22, 1 : plus(" /________\ " ).prints() : locate 1, 1 p = "" : sleep 0.04 p = "" : locate 16, 1 : plus(" _--_ " ).prints() p = "" : locate 17, 1 : plus(" .` | `. " ).prints() p = "" : locate 18, 1 : plus(" / | \ " ).prints() p = "" : locate 19, 1 : plus(" \ | :)/ " ).prints() p = "" : locate 20, 1 : plus(" ',/~/\,' " ).prints() p = "" : locate 21, 1 : plus(" / '--' \ " ).prints() p = "" : locate 22, 1 : plus(" /________\ " ).prints() : locate 1, 1 p = "" : sleep 0.04 p = "" : locate 16, 1 : plus(" _--_ " ).prints() p = "" : locate 17, 1 : plus(" .` /`. " ).prints() p = "" : locate 18, 1 : plus(" / / \ " ).prints() p = "" : locate 19, 1 : plus(" \ / :)/ " ).prints() p = "" : locate 20, 1 : plus(" ',/\~/,' " ).prints() p = "" : locate 21, 1 : plus(" / '--' \ " ).prints() p = "" : locate 22, 1 : plus(" /________\ " ).prints() : locate 1, 1 p = "" : sleep 0.04 p = "" : locate 16, 1 : plus(" _--_ ").prints() p = "" : locate 17, 1 : plus(" .` `. ").prints() p = "" : locate 18, 1 : plus(" /______\ ").prints() p = "" : locate 19, 1 : plus(" \ :)/ ").prints() p = "" : locate 20, 1 : plus(" ',\~/\,' ").prints() p = "" : locate 21, 1 : plus(" / '--' \ ").prints() p = "" : locate 22, 1 : plus(" /________\ ").prints() : locate 1, 1 p = "" : sleep 0.04 wend except pass resume z = "" : print() ``` 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