Version 0.5.10.xx consists of the following Builds: Build #2137 -- Version 0.5.10.xx -------------------------------- * Fix Bug In Response To )BOX Directory branches/bsmith/NewTypes: SC_BOX.C: Fix bug in response to )BOX. Build #2135 -- Version 0.5.10.xx -------------------------------- * Fix Bugs In Interplanar Spacing When Displaying Line Continuations Directory branches/bsmith/NewTypes: DISPLAY.C: PF_DTACKJOT.C: Fix bugs in interplanar spacing when displaying Line Continuations Build #2133 -- Version 0.5.10.xx -------------------------------- * Fix Bug In Display Not Showing Line Continuations Directory branches/bsmith/NewTypes: PF_DTACKJOT.C: In , when displaying multi-row multi-rank raw output, mark as using Line Continuations instead of just displaying an empty line between planes. Build #2131 -- Version 0.5.10.xx -------------------------------- * Make More Commands Sensitive To Line Continuations, Part II Directory branches/bsmith/NewTypes: COMMON.C: Define common function to skip over a possibly DoubleQuoted string to the first character in a given set replacing unused function . DEFINES.H: Define a common value for White Space. SC_COMMON.C: In , handle Line Continuations. SC_COPY.C: In , handle Line Continuations. SC_DROP.C: In , handle Line Continuations. SC_ERASE.C: In IF/WHILE stmts always compare ptr against NULL and value against 0. SC_LOAD.C: In , handle Line Continuations. SC_SAVE.C: In , handle Line Continuations. SC_WSID.C: In , handle Line Continuations. SYSCMDS.C: In , handle Line Continuations. Build #2129 -- Version 0.5.10.xx -------------------------------- * Allow Multiple Targets With )DEBUG Directory branches/bsmith/NewTypes: SC_DEBUG.C: Allow multiple targets with )DEBUG. Build #2127 -- Version 0.5.10.xx -------------------------------- * Miscellaneous DEBUG Changes Directory branches/bsmith/NewTypes: EXECDFN.C: Include additional comment and spacing. FREE.C: In , include DEBUG Assert statement. Change spacing and order. REFCNT.C: In , change comments with "increment" to "change". In <_DbgChangeRefCntTkn>, fix bug in call to DEBUG function. Build #2125 -- Version 0.5.10.xx -------------------------------- * DEBUG Caret Problems Directory branches/bsmith/NewTypes/WineHQ: EDITCTRL.C: Define function As Wrapper to help DEBUG caret problems. Build #2123 -- Version 0.5.10.xx -------------------------------- * Turn Off )BOX When Displaying An Error Message Directory branches/bsmith/NewTypes: PARSELINE.C: Turn off )BOX when displaying an error message. Build #2121 -- Version 0.5.10.xx -------------------------------- * Fix Bug In Rank Operator Magic Function Directory branches/bsmith/NewTypes: MF_DIJOT.H: Fix bug in Rank Operator magic function where Zilde is mistakenly used as default axis operator value for Disclose. Build #2119 -- Version 0.5.10.xx -------------------------------- * Include Missing Row In The Tokenize FSA From Build #2111 Directory branches/bsmith/NewTypes: TOKENIZE.C: Include missing row in the FSA. Build #2117 -- Version 0.5.10.xx -------------------------------- * Miscellaneous DEBUG Changes Directory branches/bsmith/NewTypes: DISPDBG.C: In , set the name length for display purposes. In , use a generic as the HGLOBAL may be either DFN or FCNARRAY. FREE.C: Rename to as it no longer is AFO-specific. In , optimize code by gathering together common types. Rename to as it is no longer AFO-specific. PARSELINE.C: Rename to as it is no longer AFO-specific. PN_PARSE.Y: In , append CR/LF to the end of the DEBUG message. REFCNT.C: Define a common DEBUG function to look for a specific function name when changing RefCnts. In IF/WHILE stmts always compare ptr against NULL and value against 0. Build #2115 -- Version 0.5.10.xx -------------------------------- * Fix Bug When Calling From For A Multi-token Operand Directory branches/bsmith/NewTypes: ASSIGN.C: When calling not in exceptional case, pass flag to free the old UDFO. EXECDFN.C: Fix bug when calling from within on the individual tokens in a multi-token operand, don't free the old UDFO as it is still needed by the caller. SAVEFCN.C: In , pass flag to on whether or not to free the old UDFO. In , don't free the old UDFO if the incoming flag says not to. SAVEFCN.H: In struc, define a flag as to whether or not to free the old UDFO. Build #2113 -- Version 0.5.10.xx -------------------------------- * Fix Bug In The Magic Operator That Implements The Rank Operator Directory branches/bsmith/NewTypes: MF_DIJOT.H: Fix bug in Rank Operator when an error occurs. Clean up code, removing duplicate lines. Build #2111 -- Version 0.5.10.xx -------------------------------- * Fix Bug In Parsing With Spurious Colons Directory branches/bsmith/NewTypes: TOKENIZE.C: TOKENIZE.H: Define a new row for handling colons as they are also used internally as :nn in saved workspaces to reference global memory data. Build #2109 -- Version 0.5.10.xx -------------------------------- * Make More Commands Sensitive To Line Continuations Directory branches/bsmith/NewTypes: AFOFNS.C: Use instead of . COMMON.C: Redefine and to include CR and LF. Use instead of . IMMEXEC.C: Use instead of . MACROS.H: Define and . MF_QUADVR.H: Append to the end of []VR lines. QF_AT.C: QF_EX.C: QF_FX.C: QF_MF.C: QF_NC.C: SC_ERASE.C: SYMTAB.C: SYSCMDS.C: SYSVARS.C: Use instead of . Use instead of . QF_TF.C: In IF/WHILE stmts always compare ptr against NULL and value against 0. Use instead of . TOKENIZE.C: Use instead of . Use instead of . Build #2107 -- Version 0.5.10.xx -------------------------------- * Fix Bug In )BOX Directory branches/bsmith/NewTypes: DISPLAY.C: In , create and display the )BOX version, but leave the original value unchanged. Build #2105 -- Version 0.5.10.xx -------------------------------- * Fix Bug In Monadic DownShoe (Unique) Not Handling Hetero/Nested Arrays Directory branches/bsmith/NewTypes: PF_DSHOE.C: In , handle the cases of Hetero/Nested arrays. Build #2103 -- Version 0.5.10.xx -------------------------------- * Handle Scalar Right Args With Partitioned Enclose Directory branches/bsmith/NewTypes: PF_LSHOE.C: In , handle scalar right args by treating them as a one-element vector. Build #2101 -- Version 0.5.10.xx -------------------------------- * Fix Bug With Unknown System Name Directory branches/bsmith/NewTypes: TOKENIZE.C: In , handle unknown system name by passing new variable to . In , check for unknown system name and skip over it. Define new function based on . In , if the new variable is valid, use it as the new SynObj. TOKENIZE.H: Fix typo in comment. Build #2099 -- Version 0.5.10.xx -------------------------------- * Allow Underbar In Numeric Input Directory branches/bsmith/NewTypes: CR_PROC.C: Handle underbars when converting decimal numeric input to a Rational number. In and , copy the input to temp global memory and skip over underbars. PN_PARSE.H: Include underbar as an allowed character in numeric input. PN_PARSE.Y: In , ignore underbars when parsing numeric input. TOKENIZE.C: Define new FSA column for Underbar. Change column # for Underbar from _ALPHA to _UNDERBAR. Keep up-to-date. TOKENIZE.H: Define new FSA column for Underbar. Build #2097 -- Version 0.5.10.xx -------------------------------- * Fix Bug Of Text From Previous Line Leaking Into Current Line Directory branches/bsmith/NewTypes: DISPLAY.C: In set the maximum position so as to avoid text from a previous line leaking into the current line. Build #2095 -- Version 0.5.10.xx -------------------------------- * Handle 0 []CR In DEBUG Mode * Fix Bug With Not Freeing Certain Instances Of {del}s Directory branches/bsmith/NewTypes: DISPDBG.C: In IF/WHILE stmts always compare ptr against NULL and value against 0. In , display the name of the variable if present. In , if the display ends with a blank, zap it. In , show {zilde} if present. Define function for use in 0 []CR. In , normalize the spacing between objects. ENUMS.H: Define for use when displaying a function header. FREE.C: Define additional arg to to optionally free the AFO if present. Define to free the HGLOBALs in an AFO. Define to free a temporary AFO result for use in . MACROS.H: Define macro for detecting a Named Var. PARSELINE.C: Define DEBUG stmts for Tracing. Define DEBUG stmts for Tracing Unstranding a Numeric Strand. Free a result iff it's a temporary AFO. In , call common code to handle {del} and {del}{del}. Define function to allocate storage for {del} and {del}{del} for use in []CR. Define function and to handle {del} and {del}{del} in . Define function to handle {del} and {del}{del} in . QF_CR.C: Allow 0 []CR in DEBUG mode to return the function header. QF_NC.C: Define function to return the # {del}s encountered in the symbol. Build #2093 -- Version 0.5.10.xx -------------------------------- * Handle CR,LF As Not Continuing To The Next Line * Use CR,LF Instead Of CR In Error Messages Directory branches/bsmith/NewTypes: DISPLAY.C: Handle CR,LF as not continuing to the next line. ERRMSG.C: Use CR,LF instead of CR in Error Messages. PF_DTACKJOT.C: Use macro instead of literal in DEBUG name. Build #2091 -- Version 0.5.10.xx -------------------------------- * Fix Bug When Assigning System Function To A Name Directory branches/bsmith/NewTypes: ASSIGN.C: SYMTAB.C: Fix Bug when assigning a System Function to a name. Build #2089 -- Version 0.5.10.xx -------------------------------- * Use Line Continuations In Output For Wrapped Lines Directory branches/bsmith/NewTypes: DISPLAY.C: PF_DTACKJOT.C: Use Line Continuations in output to better distinguish wrapped lines. Build #2087 -- Version 0.5.10.xx -------------------------------- * Preserve Visual Fidelity When Mixing CRs, LFs, And BSs In Character Output, Part 3 Directory branches/bsmith/NewTypes: SC_LIB.C: Fix bug when displaying the result of )LIB. Build #2085 -- Version 0.5.10.xx -------------------------------- * Preserve Visual Fidelity When Mixing CRs, LFs, And BSs In Character Output, Part 2 Directory branches/bsmith/NewTypes: SC_FNOV.C: Fix bug when displaying the result of )FNS, )VARS, etc. Build #2083 -- Version 0.5.10.xx -------------------------------- * Preserve Visual Fidelity When Mixing CRs, LFs, And BSs In Character Output Directory branches/bsmith/NewTypes: DISPLAY.C: SC_FNOV.C: SESSMAN.C: Preserve Visual Fidelity when mixing CRs, LFs, and BSs in character output. Build #2081 -- Version 0.5.10.xx -------------------------------- * Rename To To Parallel The Name Directory branches/bsmith/NewTypes: FREE.C: PARSELINE.C: PL_PARSE.H: STRAND.C: YYFNS.C: Rename to to parallel the name . Build #2079 -- Version 0.5.10.xx -------------------------------- * Fix Bug In )BOX ON * Note Minimum OS Version is Win7 Directory branches/bsmith/NewTypes: DISPLAY.C: Fix bug in )BOX ON when displaying an array to include check for NoDisplay flag. MAIN.C: MAKEFILE.INC: Note that the minimum OS version is Win7. Directory branches/bsmith/NewTypes/htdocs: INDEX-BODY.AHTML: Note that the minimum OS version is Win7. Build #2077 -- Version 0.5.10.xx -------------------------------- * Implement Workspace Features To Allow Multiple Features Non-Downward Compatible Features To Co-exist Directory branches/bsmith/NewTypes: ASSIGN.C: EXECDFN.C: Rename to to be more consistent with other function names in . EXTERNS.H: Define section on Workspace Feature Values. HEADERS.H: Copy <#include "workspace.h"> from to #define certain names used in . MAIN.RC: Lengthen the "About" dialog box to accommodate the list of workspace features supported by this version. PERTAB.H: Surround <#include "workspace.h"> with #define/#undef so it #defines the structures, too. PRIMFNS.C: Define function like but including Vars. In , round up Bits to a byte boundary instead of DWORD. Take the last change into account in . In , change the status of DEL and DELDEL to FALSE. Define function like , but for tokens. SC_BOX.C: Fix minor display bug in )BOX which mistakenly inserts an extra line after the command. SC_COPY.C: Before )COPYing, check to see that the source ws doesn't have unsupported features. SC_LOAD.C: Before )LOADing, check to see that the source ws doesn't have unsupported features. SC_SAVE.C: While )SAVEing a workspace, check for features that old interpreters might choke on and put a notice into the saved workspace. TRANSLATE.C: Rename to to be more consistent with other function names in . In , allow niladic function name type. In , ensure the result is properly terminated VER.C: In the "About" dialog box, display the Workspace Features this version supports. WORKSPACE.H: #define keynames and feature names for Workspace Features. Build #2075 -- Version 0.5.10.xx -------------------------------- * Fix Bug With UDFO Multiple Names In Result List That Are All NoValue Directory branches/bsmith/NewTypes: EXCEDFN.C: In and when testing the multiple names in the Result List, allow all names to be NoValue. Build #2073 -- Version 0.5.10.xx -------------------------------- * Fix Bug In Up/Down Arrow Prototype In Certain Cases Directory branches/bsmith/NewTypes: PF_DARROW.C: PF_UARROW.C: Fix bug in the "Arrows" when the result is Empty Nested but the right arg is Not Empty in which case the code mistakenly returns the right arg as the prototype instead of the "Type" of the right arg. Build #2071 -- Version 0.5.10.xx -------------------------------- * Implement APL2 Vector Notation W.R.T. Right Operands Directory branches/bsmith/NewTypes: DATATYPE.H: Define bit field in Array Header for a Split Numeric Strand. FREE.C: Define function to free curried objects only. In , test for Split Numeric and free it again. PARSELINE.C: While Parsing and just before Reducing, check for the need to split a strand as a right operand. When an error occurs during Parsing, ensure the curried arguments of the Current Object are freed. Define routines to Split Numeric Strands. Build #2069 -- Version 0.5.10.xx -------------------------------- * Implement )BOX Directory branches/bsmith/NewTypes: COMPRO.H: Include new file. DISPLAY.C: Make sensitive to )BOX state. Use common exit point. ENUMS.H: Define new ENUM for )BOX. EXTERNS.H: Define )BOX vars. MAKEFILE.INC: MAKEFILE.SRC: NARS2000.VCXPROJ: NARS2000.VCXPROJ.FILTERS: Include new file. SC_BOX.C: Implement )BOX. SYSCMDS.C: Include )BOX in the table of system commands. Directory branches/bsmith/NewTypes/Mediawiki/extensions: B2A.INC.PHP: Define more aliases for keystrokes. Build #2067 -- Version 0.5.10.xx -------------------------------- * Define More )DEBUG Commands Directory branches/bsmith/NewTypes: EXTERNS.H: Define and as )DEBUG commands. FH_PARSE.Y: Allow to control DEBUGging of FH Lexical Analysis. PN_PARSE.Y: Allow to control DEBUGging of PN Lexical Analysis. SC_DEBUG.C: Define )DEBUG PNLex=n and )DEBUG FHLex=n as new DEBUG commands. Build #2065 -- Version 0.5.10.xx -------------------------------- * Allow {jotdot} As A Monadic Operator Including Assignment * Rename Various Syntax Objects For Later Consistency With Hyperators * Rename To As They Are Not Indices Into A Table Directory branches/bsmith/NewTypes: ASSIGN.C: Allow {jotdot} as a monadic operator including assignment. DISPDBG.C: Define helper function to strcpyW and skip to the end of the destination. Change to . EXECFNS.C: Rename to as they are not indices into a table. In , handle . INITDATA.C: Rename to as they are not indices into a table. PARSELINE.C: PARSELINE.H: Rename various Syntax Objects for later consistency with Hyperators. Define alias for SP_JD -- {is}{jotdot}. Rename to as they are not indices into a table. PO_JOTDOT.C: Rename to as they are not indices into a table. PO_SLASH.C: Rename to as they are not indices into a table. Simplify test for SLASHBAR. PO_SLOPE.C: Rename to as they are not indices into a table. QF_CR.C: Handle []CR of a name whose value is {jotdot}. SC_LOAD.C: For Immediate functions, ensure the Value bit is set. SC_SAVE.C: For Immediate functions, skip TranslateXXX as the ConvertXXX function handles that. STRAND.C: Rename to as they are not indices into a table. SYMBOLNAMES.H: Include {jotdot} in the last of translatable symbol names. SYMTRANS.C: Rename to as they are not indices into a table. Define new translate function specifically for . SYNOBJ.H: Rename various Syntax Objects for later consistency with Hyperators. TRANSLATE.C: Rename various Syntax Objects for later consistency with Hyperators. Change to . Rename to as they are not indices into a table. In , handle {jotdot}. UNICODE.H: Separate the table index conflicts from the special functions. Rename to as they are not indices into a table. Improve comments. YYFNS.C: Rename to as they are not indices into a table. Build #2063 -- Version 0.5.10.xx -------------------------------- * Fix Bug With ?{infinity} For Both Multiple Precision Numbers Directory branches/bsmith/NewTypes: PF_QUERY.C: In both and , check for {infinity} and signal a DOMAIN ERROR if found. Build #2061 -- Version 0.5.10.xx -------------------------------- * Disallow Display Of MFO Local Names In )SINL Directory branches/bsmith/NewTypes: MACROS.H: Define macro to detect MFO Local names. SC_SI.C: Allow )SINL to display a pendent MFO. Disallow display of MFO Local names in )SINL. Build #2059 -- Version 0.5.10.xx -------------------------------- * Fix Bug In 1 []AT on Operators As Function Arrays Directory branches/bsmith/NewTypes: QF_AT.C: In , handle Function Array Operators through a separate function. Build #2057 -- Version 0.5.10.xx -------------------------------- * Fix Bug When Saving f{is}{quad}NL In Workspace Directory branches/bsmith/NewTypes: DISPDBG.C: Fix bug when creating f{is}'a'{jot}{quad}NL as f{is]a{jot}{quad}NL. MACROS.H: Define macros to detect when a token is free-able. PARSELINE.C: In , free the token if it is free-able even if not valid. QF_CR.C: In , handle Direct Functions. SC_COPY.C: In IF/WHILE stmts always compare ptr against NULL and value against 0. In , don't free Direct Functions. SC_LOAD.C: Use WFCN instead of the literal function name. In , don't increment RefCnt and don't check the function signature if Direct Function. In , pass on the Direct Function flag from a Workspace Global to the actual workspace object. SC_SAVE.C: In , handle Direct Functions. In , check for NULL variable before referencing it. Build #2055 -- Version 0.5.10.xx -------------------------------- * Allow Hex Notation In )DEBUG Keywords Directory branches/bsmith/NewTypes: SC_DEBUG.C: Allow hex notation in )DEBUG keywords. Build #2053 -- Version 0.5.10.xx -------------------------------- * Fix Bugs In Syntax Analysis Of Trains With Variables Directory branches/bsmith/NewTypes: PARSELINE.C: Define aliases for routines to handle more Train syntax such as (F A F) A. PARSELINE.H: Reformat the Binding Strengths and Reductions tables to be more readable. Define more Binding Strengths so as to handle more Train syntax. Define more pesudo-Reductions so as to handle more Train syntax. SYNOBJ.H: Reformat the Syntax Object Names table to be more readable. Build #2051 -- Version 0.5.10.xx -------------------------------- * Update Web Documentation Directory branches/bsmith/NewTypes/htdocs: CONTRIBUTORS-BODY.AHTML: Update year of publication for TAoCP, Vol 4A. INDEX-BODY.AHTML: Update the minimum version of Windows we run on. Build #2049 -- Version 0.5.10.xx -------------------------------- * Fix Bug In Syntax for "(/\)A" Directory branches/bsmith/NewTypes: IDENTFNS.C: In , pass original and prototype of right arg to the Identity Function. INITDATA.C: Include in the table the Identity Function for dyadic slash function (Replicate). Include in the table the Identity Function for dyadic slash operator (N-wise Reduction). PARSELINE.C: If , display conversions from "HY" to "OP1" or "FN". At the end of PARSELINE_SCAN, test for "(/" and convert the "/" from "HY" to"FN". If , at PARSELINE_VALUEERR and PARSELINE_SYNTERR display a TRACE message to mark those events. PF_SLASH.C: Define the Identity Function for dyadic slash function (Replicate). PO_SLASH.C: Define the Identity Function for dyadic slash operator (N-wise Reduction). PRIMSPEC.C: For DEBUG purposes, distinguish between and . VER.RC: Increment version # to 0.5.10.xx. Build #2047 -- Version 0.5.10.xx -------------------------------- * Fix Bug When Pasting APL Chars Directory branches/bsmith/NewTypes: EDITFCN.C: When pasting APL chars, don't use GlobalSize as we can't rely on its value due to Windows rounding up to a 4- or 8-byte boundary.