| ###################################################################### | http://CoSy.com | ###################################################################### | | Tap F1 for Help | First lesson : On a blank line below : tap F12 . tap Enter . write something . tap F11 . __________________________________________________________________________ __________________________________________________________________________ You have now made and saved your first timeStamped notes | Think of CoSy as intelligent paper | | Skip down to bottom of log for most current work | | ====================================================================== | | A ` word in Forth is any non blank string of characters | | \/ \/ \/ | F6 executes the line under the cursor | \/ \/ \/ | | The syntax of Forth is { parse-a-word doIt repeat } | | \/ | Put the cursor on lines below and tap F6 | \/ | s" Hello World " | return a CoSy character list , ie: string . HelloPrize | F6 this to find out your prize ! | 20190510.1322 | s" Hello World " reverse | See ! it was sitting on Top of Stack s" Hello World " rho | ` rho is APL for ` count number of items . | In Forth , a "word" can be any non-blank string of characters delimited by white space | That's why ' s" has to have a blank separating it from the quoted phrase | Forth syntax is simply read-a-word do-it | The word : adds new words to the Forth dictionary ; ends compiling mode : HelloWorld s" Hello World " ; | define the word ' HelloWorld HelloWorld | ( to be saved needs to be added to script HelloWorld i( 7 23 )i take >t0> | Here's an APLish demo t0 dup ' reverse 'm ' cL 'd | execute each line in turn to see R0 dup reverse cL | what Forth CoSy APL vocabulary can do . | NB : vocabulary is case sensitive | | ====================================================================== | | NB : Note the difference between ` and ' . Here are their definitions s" : ` " ?? | make next word into symbol ~ token ~ word | | thus | s" asdf" ` asdf match |>| 1 versus ` ' Help | the address of a raw Reva Forth definintion . To test if a word exists : ' asdf _i | returns address if defined else 0 | I use these a short hand in refering to words . Eg : | ' ?? is the HELP verb . For example : s" : ?? " ?? | Find the definition of ' ?? itself | equivalent to ` ?? :?? | | Historical note : | ` NB , short for Nota Bene == Note Well , was a favorite of Ken Iverson | | ###################################################################### | EVERYTHING IS A LIST ITEMS MAY BE LISTS http://cosy.com/CoSy/4th.CoSy.html#CoSyHeader A DICTIONARY IS A LIST OF 2 LISTS | ( Names ; Values ) The "Root" dictionary is named ` R VOCABULARY on LISTS R rho | APL word "count" # of items in list | raw : i# R ' rho 'm | count each ( monadic ) | used so often , also | rho' same as R { rho } 'm R dnames | names in Root ( ` R ) dictionary . Dnames | names in current dictionary intially the Root ( ` R ) dictionary . | ###################################################################### | | \/ \/ \/ \/ | help sources | \/ \/ \/ \/ | F1 : Basic Help | Tapping the F1 key lists all key shortcuts . | ====================================================================== | | \/ \/ \/ | 4th.Cosy ( F6 ) | \/ \/ \/ | ` help -> ` script0 -> ` IntroHelp -> | Stale . dating back to 2006 . ` examples -> s" ./IntroHelp.txt" F> | read file | /\ /\ /\ | 4th.Cosy ( F6 ) | /\ /\ /\ | | ====================================================================== | | \/ \/ \/ | Raw Reva Forth ( sF6 ) | \/ \/ \/ | One can now stay fairly easily executing at the 4th.CoSy list level using F6 . But tapping shift F6 simply executes raw Forth leaving things on the stack sF6 does not try to output the top item . ` dup Help | Help on Reva word ' see res> blVM ' Help 'm | show help on each word in a string . | Reva help often lists related words at the end of a definition . | I often edit down the ` res contents down to these lists | and then use a line like this to display all the related word . | EXERCISE | Make a word to automate this extraction . s" dup " See | See x86 code for ' dup s" @" Words | words containing s" @" . Note : just in the CoSy context | ======================================================================= | | EVERYTHING is a LIST | | Dictionaries are lists of a pair of lists of associated names and values | This ` text and ` res are items in the ' R root dictionary saved by ctrl_s R rho |>| 2 | ' rho is the APL word for # of items . ' i# is raw count | 3 generic functions | cognates of Forth | : @ Fetch ; : ! Store ; : ' address || | ix i@ i! | ( lst i -- r ) | Raw Indexing | vx v@ V! | ( lst _i -- r ) | indexing by name on dictionaries | Dvx Dv@ Dv! | ( _i -- r ) | same using ' _d dictionary | at at! | ( lst iv -- r ) | top level get and put | TYPES | | simple | | character , byte , strings | s" asdf\qwert.code " | Strings ( bytes ) | since 20180306 | Note that the quote character itself cannot be in a string . | Reva's " uses \ to escape the " character so it can be included in strings . | ' s/" retains that behavior . Thus to get help on ' s" itself use : s/" s\" " ?? | Thus must use s/" \\ " and s/" \" " to embed these chars in strings `( LF CR HT BL )` { ^eval _i } 'm ,/ | basic raw char constants zic s" " match |>| 1 | ' zic is an empty string `( asdf sym )` ` asdf ` sym ,L match |>| 1 | numeric lists | i( 0 1 2 3 )i | integers also | 123 _i | 123 456 2_i | f( 2.28 2 2.e5 )f | Floats also | 3.14 ' _f | 3.14 2. 2_f | Forth variable sigdig sets output decimals . Set in ` script0 | general s" asdf " i( 0 1 2 )i ,L | general lists . this creates a list of 2 items -1 _i i( 0 1 2 )i cL | same a ' ,L but catinates if same type Some numerical examples : 10 _iota 2 _i *i | Put the cursor on this line and tap F6 . See ` res above 10 _iota >t0> | It's "concatinative" we can split it and execute parts 2 _i >t1> | t0 and t1 are convenence variables . t0 t1 *i | See ` examples ` examples -> | < see also | /\ /\ /\ /\ | help sources | /\ /\ /\ /\ | | ======================================================================= | | ###################################################################### | ` TekLogArk -> | 2012 - 2014 | First log notes | text> s" ./CoSy/y2015.txt" >F | save text to file ` TekLogArk Dv@ >t0> s" ./CoSy/y2015.txt" F> >t0> t0 daylncut s" job" con | search for occurace of phrase | s" ./CoSy/y2016.txt" F> s" ./CoSy/y2017.txt" F> text> | VMlf s" | =======" con res> >T0> s" ./CoSy/y2017.txt" >F | ###################################################################### | | \/ \/ \/ \/ \/ \/ \/ \/ | Tek Log | \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ | |\/| MY almost RAW SCRIPT UP TO THIS POINT |\/| s" ./CoSy/y2017.txt" F> s" ./CoSy/y2018.txt" F> s" ./CoSy/y2019.txt" F> | ======================== | Mon.Dec,20191230 | ======================== | ` con Words blMV R0 blMV ncon con nconn conn conb ncconn ccon cconn cconb ` ASCIIbrowser Dv@ lfVM 65 91 2_i thru at Xwords { -1 _at } 'm ,/ blVM -1 _cut >t0> rho t1 (' { 64 _i i } ') { ['] xeq 'm } 'R t1 { 64 _i i } 'm ,L flip : upper c>i >a> 92 _i 64 _i >i mini ; t0 t0 ' upper 'm { ['] maxi ./ } 'm ,/ & at >t1> rho rShow rGet >T0> 434. 2283. 2_f %f lst>stk mini >T0> T0 { lst>stk mini } 'm ' +/ 'm ,/ ev >T0 dsc >T1> | ' maxi ./ | { ['] mini ./ } 'm lst>stk mini ` lst>stk See T0 ,L >T0> rho T0 { rho' ,/ } 'm | ' +/ 'm { { 64 _i i 'm dsc 64 _i t1> t0 t1 ,L flip { ['] maxi ./ | ======================== | Tue.Dec,20191231 | ======================== | | 1454 | ` c>f :?? rShow ` ./CoSy/Furniture.f F> rUpdate f( -17.778 -11.4286 0 )f c>f | see screenshot at | \/ | https://www.facebook.com/groups/2225595150855239/permalink/2650439021704181/?comment_id=2650605735020843 | 2220 | | ################################ 20200101 ############################# | | ======================== | Wed.Jan,20200101 | ======================== | rGet lf>nl ` C:/4thCoSy/Physics/general.f F> | F> rUpdate ` C:/4thCoSy/Physics/SB.f F> ` close Words ' :?? 'm | ======================== | Fri.Jan,20200103 | ======================== | s" 2020-01-01 12:07 1,424 CBoC.csv" >t0> drb |>| s" 2020-01-01 12:07 1,424 CBoC.csv2" ` drb :?? rShow ` ./CoSy/Furniture.f F> rUpdate : drb "bl : dre 2p> swap cL R@ =c >a> 1 _rotate a> mini 0=i & L@ swap at 2P> ; t0 drb text> daylncut s" : drb " con | i( 20190325 20190411 20191015 )i { ( x = * y ) _ y : y _di & t & 1 ! t : x = y : x , y } | It's possible to sF6 even thru these lines w a stackframe and use of ' >a> vocab | frame can be spotted on the stk because = SFptr @ @ | t0 "bl 2p> cL R@ =c >a> 1 _rotate a> mini 0=i o | & L@ swap at 2P> | bug is failure to trim bool . : drb "bl : dre 2p> swap cL R@ =c >a> 1 _rotate a> mini -1 _cut 0=i & L@ swap at 2P> ; rGet lf>nl ` ./CoSy/Furniture.f >F | ======================== | Sat.Jan,20200104 | ======================== | | 1838 | abt tv screen diags | f( 36.07 21.07 )f norm | ` .\CoSy\math.f F> ^eval | 20200105.1253 | : dlc >_ .> >aux 1p> dup { aux@ <> } f?m cut auxdrop 1P> ; | error was in ' f?m itself using ' aux vocabulary vs the loop only ' lpstk . s" asdf asdf " "bl dlc | ======================== | Sun.Jan,20200105 | ======================== | | | frm FB | https://www.sonyaz.net/foto-galeri/poland-just-unveils-a-glow-in-the-dark-bicycle-path-thats-charged-by-the-sun/193/resim/6 | luminescent bike path | 6 feet wide and 330 feet long and cost roughly $31,000. 6 330 2_i *i i>f |>| 1980 | 31000. _f R0 %f |>| 15.65 | per sq ft | 31000. 200. 2_f %f | extract just definitions -- which must begin at very left of line ` ./CoSy/CoSy.f >t0> F> >t1> t1 "nl ` : cL tokcut 1 _cut >t1> t1 { s" ;" prt<=f } 'm >t0> rho | first time I've extracted just defs t0 ` lpstk con t0 ` aux con ` do con >t1> t1 { blVM 1 _at } 'm blMV |>| eachMcr ,I ,s takeb eachMfr eachMfir eachDfr eachDfir takef s>iv _at\ _at! rotate take fmtI fmtF eachm dvi | /\ | these operators need to have ' aux words replaced w ' lpstk equivalents . ` ./CoSy/CoSy.f >t0> F> >t1> rShow t1 rUpdate rGet lf>nl t0 >F rShow : m/d/y>ymd s" /" VM -1 _rotate ,/ ; ` 09/26/2019 m/d/y>ymd 20190926 ` csv>lst ?? s" 09/26/2019" s" /" VM -1 _rotate ,/ | s" 20 0 0" blVM ' cL 'd s" 0 0 20" blVM ` 1/1/2020 ` / VM | ' cL 'd | s" -2 -2 -4 ' fill 'd ` 001 -2 _fill ` fill Words | convert format . requires leading 0s . ` ./CoSy/Furniture.f >t0> F> >t1> rUpdate rGet lf>nl t0 >F ` dlc :?? 23. ` c>i :?? res> rUpdate ` strings Help | ======================== | Wed.Jan,20200108 | ======================== | 1024 _iota 2 _i 10 _take take | Works ! | 10 dimensional array ! | : StartJob s" cosy@.bat " swap cL start ; | Start a ` .csy Job | eg: | ` C:\CoSyBob\acnts\y20\Acnts.csy StartJob Added to ./CoSy/Furniture.f | 0133 | | ======================== | Thu.Jan,20200109 | ======================== | i( 7 11 13 )i -1*i reverse i( 7 11 13 17 )i i( 1 -1 )i +i | ======================== | Sat.Jan,20200111 | ======================== | | 0826 | `( asdf qwer uiop )` i( 1 0 )i at >t0> t0 rho 2 `( asdf qwer uiop )` i( 1 )i at >t0> t0 rho 4 text> lfVM rho | need to reinstate saving of bkup bkup on F6 | 1635 | s" C:/4thCoSy/CoSy/TuiE.f" F> rUpdate s" C:/4thCoSy/CoSy/SaveRestore - Copy.f" F> rUpdate ` savedic :?? ` ./CoSy/SaveRestore.f F> rUpdate s" C:/4thCoSy/CoSy/Tui.f" F> rUpdate rShow { { save `res `resvar Dv! textwdo f6 gui-default } add-callback gui-default } key-F6-cb | ======================== | Sun.Jan,20200112 | ======================== | rShow s" C:/4thCoSy/CoSy/SaveRestore - Copy.f" F> rUpdate : savedic ( -- ) | save dictionary | see also 20190330 R storelst str | computed 1st , the left on stack ` COSYSTARTFILE ?? COSYSTARTFILE dup s" \" ss -1 _at i1 +i take >value CoSyDir s" del " COSYSTARTFILE -4 _cut cL s" .bk" cL | { shell nil } onvan drop s" ren " COSYSTARTFILE cL s" .bk" cL cL CoSyFile >r> van shell r> ref0del COSYSTARTFILE s" .csy" cL Foverwrite ; ` bkupprev ?? ` See See ` aaply ?? res> lfVM rho | ======================== | Mon.Jan,20200113 | ======================== | ` macro Help ` inline ?? : startJob s" cosy@.bat " swap cL start ; ` startJob See | ======================== | Sun.Jan,20200112 | ======================== | text> rho | ======================== | Mon.Jan,20200113 | ======================== | res> >T0> T0 lfVM >t0> rho | ======================== | Tue.Jan,20200114 | ======================== | ` BROWSER Dv@ |>| "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" t0 ` BROWSER Dv! ` BROWSER Dv@ |>| ""C:\Program Files (x86)\Mozilla Firefox\firefox.exe"" | updated BROWSER since Chrome freezes | s" ""C:\Program Files (x86)\Mozilla Firefox\firefox.exe"" " | ======================== | Thu.Jan,20200116 | ======================== | ` iota :?? ` _i :?? ` number ?? res> >t0> rho | ======================== | Fri.Jan,20200117 | ======================== | `( memb take cut )` ' :?? 'm | ======================== | Sat.Jan,20200118 | ======================== | | 1147 | : FullCoSyFile COSYSTARTFILE s" ." prtvalue CoSyDir FullCoSyFile s" help ren " shell> | defined ' bkuplast . added to ` CoSy.f . | added to ' save in ` Tui.f to restore saving bkup copy on every save . | 2123 | Dnames sym>str>' zic Words .. ` sym>str>' conn -5 5 2_i thru +i at ` sym>str :?? : sym>str ( sym -- ) dup TypeC over Type! dup sym# over cell+ ! byte swap bits! ; ` asdf >t0> sym>str : sym>str ( sym -- ) TypeC over Type! dup sym# over cell+ ! byte swap bits! ; ` sym>str See | ======================== | Sun.Jan,20200119 | ======================== | Dnames sym>str>' | ======================== | Mon.Jan,20200120 | ======================== | `( 0; 00; 0drop; )` ' Help 'm ` asdf dup sym>str ` 0;drop Help ` asdf str>sym> dup sym>str DMP drop TypeC over Type! dup sym# over cell+ ! byte swap bits! ` sym>str See dup DMP Dnames | sym>str>' | R 0 _at! COSYSTARTFILE F> str>lst >T0> dsc T0 dsc sym>str>' enc T0 0 _at! T0 dsc ` help vx_ _i T0 ` tmp.csy >F ` tmp.csy F> ,/ rho T0 ` ToDo wheresym T0 1 _at 4 _at ` =I :?? text> "bl =c +/ |>| 22127 t0 100 _take | ======================== | Wed.Jan,20200122 | ======================== | ` ;; Help ` =I :?? 1234 not not negate _i T0 dsc T0 1 _at rho' ,L flip T0 255 _iota i1 +i i>c 11 _iota dup *i ` ref Words res> lfVM >t0> rho t0 ' drb 'm ' :?? 'm ` refs- :?? text> blVM rho ` cut :?? | ======================== | Tue.Jan,20200128 | ======================== | ` _iota ' :?? ' See ,L ' xeq 'R ` _iota :?? ` ./CoSy/CoSy.f F> nlVM >t1> s" : _iota " conn t1 650 _i 40 _iota +i at | ======================== | Wed.Jan,20200129 | ======================== | T0 dsc >t0> T0 t0 { v@ rho } 'R text> rho R dsc sym>str>' R 1 _at ,L lst>str CoSyDir ` T1.csy cL >t0> >F | renamed to CoSy w Dname symbols replaced w simple strings . Now can get rid of all syms t0 startJob CoSyDir dir | 0022 | | ======================== | Thu.Jan,20200130 | ======================== | ` ./CoSy/K_verbs.csv F> nlVM ' htVM 'm >t0> t0 t0 ' dsc 'm ` nest conn at : 0 >T0> | "Date","Amount","Credit or Debit" , "Check Number","Description" T0 ` " =c ' I->M eachMir ' <> scanI 0T1> | 0142 | | 20200201.1332 | defining non-float ' convo | still not happy w need to return naked | T1 i( -1 1 )i { *i +/ >_ } convo | differentiation T1 i( 1 1 )i { *i ['] maxi ./ >_ } convo T1 dsc swap cL 0=i | 1453 | i( 1 1 )i ' maxi ./ : I>M ['] I->M eachMir ; ` i>m ?? text> daylncut >t0> rho t0 ` literal con reverse ` s>iv ?? T0 ` " =c ' <> scanI ' <> scanI 0iv ; tst | ======================== | Sun.Feb,20200202 | ======================== | | 1420 | Cleaning up & consolidating quote masking . see 20200130 . res> >T0> |>| "Date","Amount","Credit , Debit" , "Check Number","Description" : I>M ['] I->M eachMir ; | & inverse added to CoSy.f : qmsk I>M ['] <> scanI 0a> 1 1 2 s>iv { *i ['] maxi ./ >_ } convo a> dsc swap cL ; T0 ` " =c qmsk T0 R0 fmt "bl zic ,L ssr ,L | test | 2152 | ` ./src/reva.f nlVM ` compiling? con | 2318 | | ======================== | Mon.Feb,20200203 | ======================== | {{ 1 if s" true " else s" false " then }} 1 [IF] s" true " [ELSE] s" false " [THEN] | ======================== | Tue.Feb,20200204 | ======================== | | added ' qmsk to ./CoSy/Furniture.f | 1606 | | ======================== | Wed.Feb,20200205 | ======================== | Xwords { 0 _at "bl prt>f "bl cL 15 _fill } 'm >t0> t0 Xwords { 1 _at blVM rho fmt } 'm ' cL 'd Xwords { 1 _at blVM rho } 'm ,/ +/ ` fill :?? res> lfVM t0 cL >t1> rho ` con Words res> lfVM >t0> rho t0 blMV ` prt Words blMV ` ./CoSy/Job.f F> ` script0 -> i( 0 0 )i `( sys Tui posXY )` Dv! | Given a ` text log containing ledger entries in the form : | (' 20191207.1045 _f ` PSBT ` ATT 52.81 _f s" acnt# 2650193386 5556667777 " ') | extracts & cleans all such lines : ledgerlns lfVM s" (' " con ['] dlb 'm s" (' " in { s" ')" prt<=l } 'm ; zic ` .\CoSy\AcntFns.f >F | created new ` AcntFns script & added ` .\CoSy\AcntFns.f F> | ======================== | Sat.Feb,20200208 | ======================== | | 1144 | https://www.facebook.com/groups/2225595150855239/ ` dot Words CoSyDir ` /b cL dir nlVM ` y201 con text> CoSyDir ` y2019.txt cL >F CoSyDir ` y2019.txt cL >t0> F> >t1> t0 F> ` C:/CoSyWeb/4thCoSy/Code/CoSy/y2019.txt />\ >F | belatedly saved y2019 text & cleaned out from current | 1623 | ` C:\CoSyWeb\4thCoSy\Code\CoSy\ dir nlVM dae >t0> rho CoSyDir dir nlVM dae >t1> rho t0 t0 { "bl prt>l } 'm t1 { "bl prt>l } 'm memb & at t1 t0 { "bl prt>l } 'm t1 { "bl prt>l } 'm swap memb & at ` membv :?? | ======================== | Sun.Feb,20200209 | ======================== | 20200210.2004 | ` parsews ?? | takes next word input and creates non-blank string | 20190304 macro : ` p: parsews _str compiling? if refs+> literal, then ; forth : ` compiling? if parsews _str ; ` asdf s" ` " :?? ` compiling? ?? : `t parsews _str ; : `t parsews compiling _str ; `t asdf Xwords ,/ ` comp conn >t0> | | ======================== | Mon.Feb,20200210 | ======================== | | changed ' i@ in 'L 'R 'm to ' _at to eliminate long standing problem w ints | ' 'd is defined much more recently w ' eachm and cleaner . i( 17 19 41 45 )i i( -1 0 )i { swap _i swap +i } 'L i( 17 19 41 45 )i i( -1 0 )i { +i } 'R | list words defined on either side of 'd zic Words .. ` 'd conn 10 _iota -5 _i +i ' +i 'L ,/ at Xwords ,/ ` comp conn i( -1 0 )i ' +i 'L ,/ Xwords ,/ .. ` comp conn i( -1 0 )i ' +i 'L ,/ at i( 17 19 41 45 )i i( -1 0 )i { d swap _i cL } 'R zic Help `( classes flow-control program-control strings )` ' Help 'm `( 'constant 'defer 'does 'forth 'inline 'macro 'macront 'notail 'variable forth inline macro mnotail notail without~ with~ )` ' Help 'm ` _n ?? | : _n nil ; | _n 3 _take | ======================== | Tue.Feb,20200211 | ======================== | ` i@ ?? | need to replace in most places w ' _at | s" _n " ?? | _n $. cr nil DMP | | alias: _n nil | tried to do something profound . doesn't work | 1531 | ` p: ?? macro : t` parsews compiling? if (") then p: _str ; forth : `t parsews _str ; macro : `t parsews compiling? if ." cmp " (") $.s then cr $.s _str ; forth macro : `t parsews _str ; forth : ` p: parsews compiling? if refs+> literal, then ; s" ` " ?? | ======================== | Wed.Feb,20200212 | ======================== | | 1501 | : tst " qwer " .s (") .s cr ; ` (") ?? | looking at the date stamp in the result , I realized | I had essentially solved it ~ 3 years ago implementing ' s" | : "_ '" parse compiling? if (") ;then "" ; | 20180306 ` C:/4thCoSy/CoSy/y2018.txt F> daylncut ` 20180306 con 1 _cut | | \/ | added to ./CoSy/Derived.f misc fns | \/ | | convenient for seeing items around a found item . : _-+ _i : -+ .. 2 _i *i iota swap -i ['] +i 'L ; i( 17 19 41 45 )i 5 _-+ macro : `_ parsews compiling? if (") ;then "" ; : `t p: `_ p: _str ; forth | works . Updating def of ` ` . : tstt ` asdf reverse ; | 1807 | uploaded to CoSy.f by strings | 1902 | | Charles Moore's Forth is the only language , because of its minimalist path | from the chip to an interpretive environment to make the distinction between | interpretation and comilation so explict and controlable . | I am only now getting a handle on it . | Thu.Feb,20200213.1124 | | ======================== | Fri.Feb,20200214 | ======================== | s" parse " Help ` ./src/revacore.asm | Doing something I should have done way back if I had confidently known enough | I see no point in not making ` ' state smart since ['] is the worst source of | gotchas . macro : ' compiling? if p: ['] ;then prior ' ; forth : tst 6 _iota 6 _iota ' +i 'L ; tst 6 _iota 6 _iota ' +i 'L DMP xeq ` prior Help ` tst See ` compiling? See t1 lfVM `( [IF] )` conn ` insert-state ?? | ======================== | Tue.Feb,20200218 | ======================== | ` ' :?? : `_ ` "bl cL ; `_ asf >t0> reverse | ======================== | Wed.Feb,20200219 | ======================== | | ######################## | e o current work | ######################## | | ###################################################################### | | ~~ | \/ | sometimes useful lines | \/ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | zic Words forgettst ` tstScript -> | Test script for interactively editing multiline fns ` tstScript Dv@ ^eval | save . Then execute to redefine . R0 DMP cr ev >R0 R0 DMP | sF6 . useful for executing when ' save bombs Dnames | { Dv@ rho } 'm | lst | sF6 . check if any ' rho' crazy ` .\CoSy dir s" .\CoSy\CoSy.bk" F> str>lst ` help v@ rho mark forget s" ./CoSy/math.f" F> | ^eval R0 >t0> F> >t1> ^eval | for editing or evaluating a file res> "lf "nl ,L ssr t0 >F R 1 _at ' rho 'm zic Words 2 sigdig ! |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| |/\| | ###################################################################### | ` SkriptThots -> | 20190913.1341 | 20190427.1154 | -> ` ToDo -> if can't execute e*ach line as you compose a verb , not competitive . open to evolve | Forth gains tremendous power by not doing things . Racket language REPL | IDE | nested ( recursive ) ' { ' } | clean quotations ~ ['] | AWK Levels of consolidated vocabulary Really need Somebody who knows GitHub to interface . Simply order by date . ! control over TUI ! | Ting & Nelson HTTP interface . s" ./CoSy/Tui.f" F> | not Functional ! Work thru problems a thought at a time . text> | HelloPrize text> `( .r text )` Dv! `D@ .r dup setWdo showWdo | /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ | | ###################################################################### | |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| |\/| | \/ | Line to make more calendar | \/ | Needs updating | s" 1 8 2020 30 daylns " forth> | insert res in text using F5 | /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ /\ | s" =" 86 _take s" | " enc braket | ====================================================================== | | ###################################################################### | | ###################################################################### |