// ÅÄÖåäö (inline UTF-8 magic marker - this line should look like it starts with like three "A"s and three "a"s with rings and dots on top) /* This text file was produced by (fwrite "Lizp4_helplist.txt" (list2str (mapcar helplist (sort (helplist))) '("%0d%0a%0d%0a%0d%0a%0d%0a"))) from Lizp4sl 10386.0095 (a Win32 implementation can be downloaded at: https://phyz.ath.cx/lizp/files/Lizp4sl.exe). Refer to Lizp4_lib_source.zip for library definitions. */ (* N*) => N Yields the numerical product of the arguments. The result is an integer if all arguments are integers; float otherwise. See -, +, /. (+ N*) => N Yields the numerical sum of the arguments. The result is an integer if all arguments are integers; float otherwise. See -, *, /. (- N1 N2) => N Yields the numerical difference N=N1-N2. The result is an integer if both N1 and N2 are integers; float otherwise. See +, *, /. (/ N1 N2) => F Yields the numerical quotient F=N1/N2. The result is always a float. See +, *, -. (1+ I) => Iresult [Hard-coded] Yields I increased by one. Signals an error if I is not an integer. (1- I) => Iresult [Hard-coded] Yields I decreased by one. Signals an error if I is not an integer. (1522dec S) => Stext [MimeLib] Decodes all RFC1522 Encoded-Words in S; yields the decoded string. (1522enc S) => Sencoded [MimeLib] Encodes S with 1522 Encoded-Words, line-breaks and linear whitespace to yield a resulting string fulfilling the requirements of a RFC822 header body, unless unnecessary (7-bit printable etc), in which case the original S is returned. (< N1 N2) => B Yields true if N1 is strictly less than N2; yields nil otherwise. See >=, >, <=, =. (<= N1 N2) => B Yields true if N1 is less than or equal to N2; yields nil otherwise. See >=, <, >, =. (<> N1 N2) => B Yields nil if N1 is numerically equal to N2; yields true otherwise. Note that comparing numbers involving inexact (floating point) values not always yields expected results. See =, eq, equal, streq. (= N1 N2) => B Yields true if N1 is numerically equal to N2; yields nil otherwise. Note that comparing numbers involving inexact (floating point) values not always yields expected results. See <>, eq, equal, streq. (> N1 N2) => B Yields true if N1 is strictly greater than N2; yields nil otherwise. See >=, <, <=, =. (>= N1 N2) => B Yields true if N1 is greater than or equal to N2; yields nil otherwise. See >, <, <=, =. (STX_assignment_value O) => O2 Yields the assignment value of an assignment form. (STX_assignment_variable O) => O2 Yields the variable of an assignment form. (STX_caar2car O) => O2 Transforms a caar form using car. (STX_cadr2car O) => O2 Transforms a cadr form using car and cdr. (STX_cdar2car O) => O2 Transforms a cdar form using car and cdr. (STX_cddr2car O) => O2 Transforms a cddr form using cdr. (STX_cond2if O) => O2 Transforms a cond form using if. (STX_count_formals O) => Inof Yields the number of parameters in a lambda parameter list. (STX_definition_value O) => O2 Yields the definition value of a definition form. (STX_definition_variable O) => O2 Yields the variable of a definition form. (STX_defmacro2define O) => O2 Transforms a defmacro form using define. (STX_first_operand O) => O2 Yields the first operand of an operand list. (STX_foreach2while O) => O2 Transforms a foreach form using while. (STX_gettype O) => Atype Yields a syntax atom corresponding to the syntax type of O. The STX_types function yields a list of every supported syntax type. (STX_if_alternative O) => O2 Yields the alternative part of an if form. (STX_if_consequent O) => O2 Yields the consequent part of an if form. (STX_if_predicate O) => O2 Yields the predicate part of an if form. (STX_label_no O) => O2 Yields the label number of a label/goto form. (STX_lambda_body O) => O2 Yields the body part of a lambda form. (STX_lambda_parameters O) => O2 Yields the parameter part of a lambda form. (STX_last_operand O) => B Yields non-nil if an operand list contains no more than 1 operand. (STX_let2lambda O) => O2 Transforms a let form using lambda. (STX_letrec2let O) => O2 Transforms a letrec form using let. (STX_make_and Ooperands) => Oand Yields an and form. (STX_make_application Ooperator Ooperands) => Opplication Yields an application form. (STX_make_arglist O) => O2 Yields an lambda arglist. (STX_make_assignment Ovar Oval) => Oassignment Yields an assignment form. (STX_make_car Oop) => Ocar Yields a car form. (STX_make_cdr Oop) => Ocdr Yields a cdr form. (STX_make_cons Ocar Ocdr) => Ocons Yields a cons form. (STX_make_empty_ops) => O Yields an empty operand list. (STX_make_eq O1 O2) => Oeq Yields an eq form. (STX_make_gc) => Ogc Yields a gc form. (STX_make_globaldef Ovar Oval) => Oglobaldef Yields a globaldef form. (STX_make_goto Ilabel) => Ogoto Yields a goto form. (STX_make_if Opred Oc Oa) => Oif Yields an if form. (STX_make_label Ilabel) => Olabel Yields a label form. (STX_make_lambda Opars Obody) => Olambda Yields a lambda form. (STX_make_macro_exp O) => O2 Yields a macro transformation expression. (STX_make_minus1 Oop) => Ominus1 Yields a minus1 form. (STX_make_not Oop) => Onot Yields a not form. (STX_make_or Ooperands) => Oor Yields an or form. (STX_make_plus1 Oop) => Oplus1 Yields a plus1 form. (STX_make_quote Oop) => Oquote Yields a quote form. (STX_make_seq O) => O2 Yields a seq form from an operand list. (STX_make_while Opred Obody) => Owhile Yields a while form. (STX_make_yield) => Oyield Yields a yield form. (STX_no_operands O) => O2 Yields non-nil if an operand list is emty. (STX_operands O) => O2 Yields the operands of an application form. (STX_operator O) => O2 Yields the operator of an application form. (STX_ops_append Oops Oexp) => O3 Appends an operand list with a single new expression. (STX_primf_address O) => Iaddress Yields the address of a primf form. (STX_quasi2quote O) => O2 Transforms a quasiquote form using quote and list. (STX_quote_val O) => O2 Yields the quoted value of a quote form. (STX_rest_operands O) => O2 Yields all but the first operands of an operand list. (STX_seqops_append Oops Oexp) => O3 Appends an operand list with a single new expression, or several new expressions in a seq form. (STX_types) => Ltypes Yields a list of every supported syntax type. (STX_until2while O) => O2 Transforms an until form using while. (STX_while_body O) => O2 Yields the body part of a while form. (STX_while_predicate O) => O2 Yields the predicate part of a while form. (abs N) => N Yields absolute value of N. (accumulate Cclosure Oinitial L [Brev]) => O [StdLib] Yields a new object, constructed by applying the 2-argument function Cclosure to Oinitial and the first member of L, and then doing the same with the result and the next argument of L and so on, in that order. If optional Brev is non-nil, the argument order to Cclosure is reversed. (acos N) => Nradians Yields the principal value of the arccosine of N. N must be in the range [-1,1]. (adopthandle H Ipid) => Hadopted Yields a new real, local handle, duplicated from handle H in process Ipid. The parent handle H is closed. See int2handle. (aliasinit Lfreqs) => Oaliasdata [MathLib] Initializes an opaque data structure for use with the aliasrandint function. Lfreqs specifies the discrete distribution as a frequency table (list of non-negative numbers) and need not be normalized. The elements in Lfreqs specify the weights of each possible discrete outcome. The outcomes are represented by sequential, non-negative integers (0,1,2 etc), one of which is returned by the aliasrandint function. See aliasrandint. (aliasrandint Oaliasdata) => I [MathLib] Yields a non-negative integer representing a random outcome from the discrete distribution given to the aliasinit function, which must be used to prepare Oaliasdata. See aliasinit. (allcombs I L) => Lallcombs [StdLib] [Macro] Yields a new list with every I-tuple combination from L; sizeof(L)^I elements in total. (allcombsf I L) => Lallcombs [StdLib] As allcombs but implemented as a function instead of a macro (slower but first class). See allcombs. (allocconsole) => ok Allocates a console for the Lizp process. Yields nil on error. (and Oexp*) => O [Special form] Evaluates each expression in Oexp* as long as the previous expression evaluated to non-nil. If all expressions evaluate to non-nil, the value of the last evaluation is returned. If an expression evaluates to nil, the remaining expressions are not evaluated. If no expressions are provided, true is returned. See or, not, if, cond. (angavg Na1 Na2 Nfull) => Fangle Yields the angle average of Na1 and Na2, using Nfull as the angle for a full circle. (angdist Na1 Na2 Nfull) => Fda Yields the angle difference between Na1 and Na2, using Nfull as the angle for a full circle. (annapply_cnn Sann SfloatsX) => (Imax SfloatsY) Applies the artificial neural network Sann to the SfloatsX input. Sann should have been created with the anncreate_cnn function and trained with the anntrain_cnn function. Yields the prediction vector SfloatsY and the index Imax to the element with the highest value. See anncreate_cnn, anntrain_cnn. (annapply_mlp Sann SfloatsX) => (Imax SfloatsY) Applies the artificial neural network Sann to the SfloatsX input. Sann should have been created with the anncreate_mlp function and trained with the anntrain_mlp function. Yields the prediction vector SfloatsY and the index Imax to the element with the highest value. See anncreate_mlp, anntrain_mlp. (anncreate_cnn IwidthIn IheightIn IdepthIn InofConv IdimConv IdimDense Fdropout IdimOut) => Sann Yields a new convolutional artificial neural network as a string. Acost should be one of (mse sigmoid tanh softmax). See anntrain_cnn, annapply_cnn. (anncreate_mlp IdimIn InofHidden IdimHidden Fdropout IdimOut Acost) => Sann Yields a new multilayer perceptron artificial neural network as a string. Acost should be one of (mse sigmoid tanh softmax). See anntrain_mlp, annapply_mlp. (anndim Sann) => (IdimIn IdimOut) Yields the in and out dimension of the Sann neural network. See anncreate_mlp, anncreate_cnn. (annsrand Iseed) => Bok Initializes the ANN random number generator. (anntrain_cnn Sann LfloatsX LfloatsY ImaxEpochs ImaxUnimproved) => Sann Trains a neural network created with the anncreate_cnn function. Yields a new, trained network as a string. See anncreate_cnn, annapply_cnn. (anntrain_mlp Sann LfloatsX LfloatsY ImaxEpochs ImaxUnimproved) => Sann Trains a neural network created with the anncreate_mlp function. Yields a new, trained network as a string. See anncreate_mlp, annapply_mlp. (ansi2oem Sansi) > Soem Yields an OEM version of the ANSI string Sansi. (ansi2uni Sansi) > Suni Yields a Unicode (UTF-16) version of the ANSI string Sansi. (ansi2utf8 Sansi) > Sutf8 Yields a UTF-8 version of the ANSI string Sansi. (ansi2utf8ex Sansi) > Sutf8 Yields a UTF-8 version of the ANSI string Sansi. See utf82ansiex. (append L1 L2) => L Yields a new list, containing all elements from L1 followed by all elements from L2. See splice, duplist. (apply Cclosure Largs) => O Applies the function Cclosure in the current environment using the elements in Largs as arguments. See applyprim, eval, tapply. (applyprim Fprimfunc Largs) => O Applies the primitive function Fprimfunc in the current environment using the elements in Largs as arguments. See apply, eval. (arr2doubles ARRdoubles) => Sdoubles Yields a new byte string of IEEE754 double-precision format doubles corresponding to the doubles in ARRdoubles. See bmp2floats, doubles2arr. (arr2floats ARRfloats) => Sfloats Yields a new byte string of IEEE754 single-precision format floats corresponding to the floats in ARRfloats. See bmp2floats, floats2arr. (arr2ints ARRints) => Sints Yields a new byte string of 4-byte ints corresponding to the ints in ARRints. See ints2arr. (arr2list ARR) => L Yields a new list L, constructed from every element in ARR in that order. See arrcons, arrget, arrlen, arrset, list2arr. (arradd ARR Iindex N) => Nsum [Mutating] Modifies array ARR by adding N to 0-indexed numeric element Iindex. Yields the new sum.See arrinc, arrdec, arrincmod, arrset, arrcons, arrget, arrlen, list2arr, arr2list. (arrayp O) => B Yields true if O is of type ; yields nil otherwise. See nullp, pairp, intp, stringp, floatp, numberp, reservedp, procp, atomp, externalp. (arrcombs I ARR) => ARRallcombs [StdLib] [Macro] Yields a new array with every I-tuple combination from ARR; sizeof(ARR)^I elements in total. (arrconcat ARR1 ARR2) => ARRboth Yields a new array with all elements from ARR1 followed by all elements from ARR2. (arrcons Nnofelements Oinit) => ARR Yields a new array of length Nnofelements. Each element is initialized to Oinit. Does not modify any existing array. (arrcons 3 0) => [0 0 0] (arrcons 0 O) => [] See arrlen, arrget, arrset, arrconcat, list2arr, arr2list. (arrcpy ARRdest Idest ARRsrc Isrc Ilen) => ARRdest [Mutating] Modifies ARRdest by copying Ilen elements from ARRsrc, starting from element Isrc, to ARRdest, element Idest, overwriting the existing elements. (arrdec ARR Iindex) => Isum [Mutating] Modifies array ARR by adding -1 from 0-indexed element Iindex. Yields the new sum.See arrincmod, arrdec, arrset, arradd, arrcons, arrget, arrlen, list2arr, arr2list. (arrextend ARR Inof Oval) => ARR [Mutating] Modifies ARR by extending it with Inof Oval elements. Inof may be negative, in which case the array is shrunk and Oval dismissed. Yields the modified ARR. (arrfill ARRdest Idest Oval Ilen) => ARRdest [Mutating] Modifies ARRdest by setting Ilen elements to Oval, starting at element Idest, overwriting the existing elements. If Ilen is <0 or would surpass the length of ARRsrc, all remaining elements in ARRdest are filled. (arrfind A O [Icol]) => Iindex Searches A for an element equal to O. Yields the 0-based index of the first match found, or nil if O is not equal to any element in A. If A is an array of arrays, optional Icol can be used to specify sub-array column in which to search. See arrfindq. (arrfindi A O) => Nindex Searches A for an element equal to O. Yields the 0-based index of the first match found, or nil if O is not equal to any element in A. Case insensitive. See arrfindq. (arrfindq A O [Ifrom [Ito]]) => Iindex Searches A for an element eq to O. Yields the 0-based index of the first match found, or nil if O is not eq to any element in A. Optional Ito can be -1, which implies (1- (arrlen A)). See arrfind. (arrfindu A O) => Iindex Searches A for an element equal to O. Yields the 0-based index of the first match found, or nil if O is not equal to any element in A. Case insensitive. Strings should be UTF-8 Unicode. See arrfindq. (arrget ARR Iindex) => Oelement Yields 0-indexed element Iindex of array ARR. See arrcons, arrset, arrlen, list2arr, arr2list. (arrinc ARR Iindex) => Isum [Mutating] Modifies array ARR by adding 1 to 0-indexed element Iindex. Yields the new sum.See arrincmod, arrdec, arrset, arradd, arrcons, arrget, arrlen, list2arr, arr2list. (arrincmod ARR Iindex Imod) => Isum [Mutating] Modifies array ARR by adding 1 to 0-indexed element Iindex, modulus Imod. Yields the new sum.See arrincmod, arrdec, arrset, arradd, arrcons, arrget, arrlen, list2arr, arr2list. (arrlen ARR) => N Yields the size of (number of elements in) array ARR. See arrcons, arrget, arrset, list2arr, arr2list. (arrpart ARR Iright Ilen) => ARRsubarray Yields a new array, equivalent to the subarray of ARR starting Iright elements to the right of the first element, containing at most Ilen elements. If Ilen is <0 or would surpass the length of ARR, all remaining elements in ARR are used. (arrset ARR Iindex Oelement) => ok [Mutating] Modifies array ARR by replacing 0-indexed element Iindex with Oelement. See arradd, arrinc, arrdec, arrincmod, arrcons, arrget, arrlen, list2arr, arr2list. (arrsort ARR [cols]) => ARR [Mutating] Yields ARR modified by sorting the elements. The optional cols parameter specifies which 0-indexed column to sort an array of lists on. The parameter may be an integer or a nested list of integers. (arrsorti ARR [cols]) => ARR [Mutating] Yields ARR modified by sorting the elements. The optional cols parameter specifies which 0-indexed column to sort an array of lists on. The parameter may be an integer or a nested list of integers. Case insensitive. (arrsortu ARR [cols]) => ARR [Mutating] Yields ARR modified by sorting the elements. The optional cols parameter specifies which 0-indexed column to sort an array of lists on. The parameter may be an integer or a nested list of integers. Case insensitive. Strings should be UTF-8 Unicode. (arrsum ARR [Iright Ilen]) => Fsum Yields the sum of all (if Iright and Ilen are omitted or nil) or the speicified elements in ARR. (asc S) => I Yields the ASCII value of the first character in S. See chr. (asin N) => Nradians Yields the principal value of the arcsine of N. N must be in the range [-1,1]. (assoc Okey L) => Lres Yields the first element in L which car equals Okey, or nil if none is found. (assoc-all Okey L) => Lres Yields a list of all elements in L which cars equal Okey. (assoc-allIUA Okey L) => Lres [IUA] IUA version of assoc-all. (assoc-alli Okey L) => Lres Yields a list of all elements in L which cars equal Okey. Case insensitive. (assoc-allu Okey L) => Lres Yields a list of all elements in L which cars equal Okey. Case insensitive. Strings should be UTF-8 Unicode. (assocIUA Okey L) => Lres [IUA] IUA version of assoc. (associ Okey L) => Lres Yields the first element in L which car equals Okey, or nil if none is found. Case insensitive. (assoctop Okey L) => Lres [Mutating] Modifies L by moving the first element in L which car equals Okey to the beginning of L, and yields the reordered L, or nil if no match is found. (assoctopIUA Okey L) => Lres [Mutating] [IUA] IUA version of assoctop. (assoctopi Okey L) => Lres [Mutating] Modifies L by moving the first element in L which car equals Okey to the beginning of L, and yields the reordered L, or nil if no match is found. Case insensitive. (assoctopu Okey L) => Lres [Mutating] Modifies L by moving the first element in L which car equals Okey to the beginning of L, and yields the reordered L, or nil if no match is found. Case insensitive. Strings should be UTF-8 Unicode. (assocu Okey L) => Lres Yields the first element in L which car equals Okey, or nil if none is found. Case insensitive. Strings should be UTF-8 Unicode. (assoq Okey L) => Lres Yields the first element in L which car eqs Okey, or nil if none is found. (atan N) => Nradians Yields the principal value of the arctangent of N. (atan2 Ny Nx) => Nradians Yields the principal value of the arctangent of Ny/Nx, using the signs of both arguments to determine the correct quadrant. The return value is in the interval [-pi, pi]. (atomp O) => B Yields true if O is an atom; yields nil otherwise. See nullp, pairp, intp, stringp, floatp, numberp, reservedp, procp, externalp, arrayp. (b64dec Sb64) => S Decodes Sb64 from RFC1521 Base64 Content-Transfer-Encoding. (b64enc S [BnoNL]) => Sb64 Encodes S in RFC1521 Base64 Content-Transfer-Encoding. If optional BnoNL is non-nil, no newlines are inserted. (banner Stext [Stitle [IfontSize]]) => ok [StdLib] Displays (or destroys, if Stext is nil) a top-most, centered, single-line banner window. (beep [Ifreq Imillisecs) => ok Plays the Windows Exclamation sound asynchronously, or the specified frequency for the specified duration synchronously. (beepex Nfreq Nduration [Nvolume [Npan]]) => Hwavedev [StdLib] Plays a 2-channel, 44100 samples/second/channel, 16-bit/channel sine wave of given frequency and duration. Nfreq is in Hz, Nduration is in millisecs. Optional Nvolume is from 0 (silence) thru 100 (maximum, default). Optional Npan is from -100 (channel 0 only) thru 100 (channel 1 only). The sound is played asynchronously. Yields a handle to the wave-out device. (bin2dec Sbin) => Idec [StdLib] Yields the integer represented by Sbin when interpreted as a number in base 2. Equivalent to (str2dec Sbin 2). (bincount L) => Lcounts Yields a list of every unique element in L. Each element in the resulting list is on the form (Oelem Icount), where Oelem is the unique element and Icount the number of occurrences for that element. L must be sorted for this function to succeed. (bincountIUA L) => Lcounts [IUA] IUA version of bincount. (bincounti L) => Lcounts Yields a list of every unique element in L. Each element in the resulting list is on the form (Oelem Icount), where Oelem is the unique element and Icount the number of occurrences for that element. L must be sorted for this function to succeed. Case insensitive. (bincountu L) => Lcounts Yields a list of every unique element in L. Each element in the resulting list is on the form (Oelem Icount), where Oelem is the unique element and Icount the number of occurrences for that element. L must be sorted for this function to succeed. Case insensitive. Strings should be UTF-8 Unicode. (binrow Irow) => Lrow [MathLib] Yields the binomial coefficients C(Irow,0), C(Irow,1), ..., C(Irow,Irow) for row Irow in Pascal's triangle. (bitand I1 I2) => I Bitwise AND of I1, I2 (32 bits). (bitget Ibitindex I) => B Yields true if bit Ibitindex in I is set; false otherwise (32 bits). (bitmapparts Hbitmap) => Lparts Yields a list on the form (Iwidth Iheight Sbits) from the given Win32 bitmap handle. (bitnot I1) => I Bitwise NOT of I1 (32 bits). (bitor I1 I2) => I Bitwise OR of I1, I2 (32 bits). (bitset Ibitindex I B) => Ires Yields the integer I modified by setting or resetting bit Ibitindex according to the boolean val B (32 bits). (bitshift I Inof) => Ishifted Yields the integer I shifted Inof bits to the right, or (-Inof) bits to the left if Inof<0. (bitxor I1 I2) => I Bitwise XOR of I1, I2 (32 bits). (bmc2bmp Sbmc) => Sbmp Yields a grayscale 24-bit bitmap from Sbmc. See bmp2bmc. (bmc2bw16 Sbmc Ibase Ithreshold) => Sbw16 Yields a 16 pixel high, b/w representation of Sbmc, where each column is stored as an unsigned short integer (2 bytes). Each bit in the integer is 1 if the corresponding pixel value is greater than Ithreshold, or 0 otherwise. The result is returned as a string of size width*2 bytes, with Ibase and (16-height-Ibase) blank rows padded to the bottom and top respectively. (bmc2graypad Sbmc) => Sgraypad Yields the grayscale image data (8 bits/pixel) in Sbmc as raw data, with each line. padded to 4 bytes. See bmp2bmp. (bmc2symbols Sbmc Ithreshold Sht8 Imaxnof Iminbits) => Achars Scans Sbmc for symbols in Sht8 and yields the result as an array, where each element is an array [Ileft Ibottom Inbits Ichar]. The symbols in Sht8 are interpreted as 8*8-pixel black-and-white rectangles. Imaxnof specifies the maximum number of elements returned. Iminbits specifies the the minimum 0- or 1-valued bits each match must have, 1<=Iminbits<=32. This should be the same as the hash keys minbits for performance reasons. This function is similar to bmc2text, but only takes one (1) hashtable8, for width 8. See bmc2symbolsvg, bmc2text, bmc2symbols8x7. (bmc2symbols8x7 Sbmc Ithreshold Sht8 Imaxnof Iminbits) => Achars As bmc2symbols, but disregards the topmost line. Hence, Sht8 should only contain symbols which topmost lines are blank. See bmc2symbols8, bmc2symbolsvg, bmc2text. (bmc2symbolsvg Sbmc Sht8 Imaxnof) => Achars Scans Sbmc for symbols in Sht8 and yields the result as an array, where each element is an array [Ileft Ibottom 255 Ichar]. The symbols in Sht8 are interpreted as 1*8-pixel grayscale rectangles. Imaxnof specifies the maximum number of elements returned. See bmc2symbols, bmc2text, bmc2symbols8x7. (bmc2text Sbmc Ithreshold Aht8s) => (InofBits Achars) Scans Sbmc for characters in Aht8s and yields the result as an array, where each element is an array [Ileft Ibottom Iright Ichar]. InofBits yields the total number of bits matched; usually, higher is better. Aht8s should be an array of 8 hashtable8s, one for each character width 1..8. See bmc2symbols*. (bmc2ui64 Sbmc Ix Iy Ithreshold) => Sui64 Yields the 8*8 square pixel bitmap starting at Ix,Iy as a 64-bit unsigned integer. Each bit in the integer is 1 if the corresponding pixel value is greater than Ithreshold, or 0 otherwise. The result is returned as an 8-byte string. (bmcavg Sbmc) => Favg Yields the average of each pixel value in Sbmc.See bmcmedian, bmchist. (bmcblur Sbmc) => Sbmcblurred Yields a new, blurred version of Sbmc. (bmccanny Sbmc Ntlo Nthi) => Sbmccanny Yields a new bmc where each pixel value is 255 if the corresponding pixel in Sbmc is on an edge according to a Canny edge detector, or 0 otherwise. Thresholds tlo, thi between 0 and 1; typical tlo=0.8, thi=0.10. (bmcclose Sbmc) => Sbmcopen Performs a morphological closing to Sbmc and yields the result as a new bmc. (bmccolrepl Sbmc Iscol Idcol) => Sbmc [Mutating] Changes colour from Iscol to Idcol for every matching pixel in Sbmc. (bmccolsum Sbmc Ix) => Isum Yields the sum of all pixel values in column Ix (0 is the leftmost column). (bmcdelborders Sbmc IminLenV IminLenH Ith Ibg) => Sbmc [Mutating] Finds any continous (same-coloured with fuzziness Ith) vertical or horisontal lines at least IminLen* pixels long, and fills them with Ibg (background gray val). Yields the modified Sbmc. (bmcdelhborders Sbmc Ith) => Sbmc [Mutating] Finds any continous, 1-pixel high, horisontal borders of Sbmc and fills them with blackness. A border is any horisontal line of pixels all with values greater than Ith, as wide as the width of Sbmc, located at the top or bottom edge of Sbmc. Yields the modified Sbmc. (bmcdelimit Sbmc Idx Idy Ithreshold Iminw Iminh [BblankSmall]) => Arects [Mutating] Finds all rectangles enclosing pixels with values greater than Ithreshold. Such pixels are considered to belong to the same rectangle if they're at most dx,dy pixels apart. Only rectangles with (w,h)>=(Iminw,Iminh) are kept; if optional BblankSmall is non-nil, smaller rectangles are blanked to 0. Each element in Arects is an array on the form [Ileft Ibottom Iright Itop]. (bmcdiff Sbmc Iradius) => Sbmcdiff Yields a new bmc Sbmcdiff, where each pixel value is the average difference between the corresponding pixel in Sbmc and the pixels in the neighbourhood with radius Iradius of that pixel. See bmcdiff2. (bmcdiff2 Sbmc Iradius Ithreshold) => Sbmcdiff Yields a new bmc Sbmcdiff, where each pixel value is proportional to the number of neighbourhood (radius Iradius) pixels in Sbmc which values differ more than Ithreshold from the corresponding pixel value in Sbmc. See bmcdiff. (bmcdist Sbmc1 Sbmc2 Ith Bclose) => Fdist [ImageLib] Yields a measure of how different Sbmc1 and Sbmc2 are, as a float between 0 and 1. Only pixels which are greater than Ith in either bmc are considered. If Bclose is non-nil, the image is morphologically closed before comparison. See bmpdist, strdist2. (bmcdiv Sbmc I) => Sbmcdiv Yields a I*I smaller version of Sbmc as a new bmc. (bmcdrawline Sbmc Ix0 Iy0 Ix1 Iy1 Icol) => Sbmc [Mutating] Draws a line in colour Icol from Ix0,Iy0 to Ix1,Iy1. Yields the modified Sbmc. (bmcedges Sbmc Idhom Idhet) => Sbmcedges Yields a new bmc where each pixel value is equal to the corresponding pixel value in Sbmc, if that pixel is part of an edge, or 0 otherwise. Idhom specifies maximum difference between homogenous edge pixels, Idhet specifies minimum difference between edge and background pixels; both parameters with range 0-255. (bmcedges2 Sbmc Idhom Idhet) => Sbmcedges2 Yields a new bmc where each pixel value is equal to the corresponding pixel value in Sbmc, if that pixel is part of an edge, or 0 otherwise. The Idhom and Idhet parameters specify the edge homogeneity and background heterogeneity, range 0-255, with lower values specyfying less rigidity. (bmcedges3 Sbmc Idhom Idhet) => Sbmcedges3 Yields a new bmc where each pixel value is 255 if it's part of an edge, or 0 otherwise. Idhom specifies maximum difference between homogenous edge pixels, Idhet specifies minimum difference between edge and background pixels; both parameters with range 0-255. (bmcextend Sbmc Iwidth Iheight) => Sbmcextended Extends Sbmc width blackness, centering the original, to yield a new bmc with size Iwidth*Iheight. (bmcfillrect Sbmc Ix Iy Iw Ih Icol) => Sbmc [Mutating] Fills the specified rectangle with the specified colour. Yields the modified Sbmc. (bmcfind16v Sbmc Sbmcneedle) => (Ix Iy) Scans Sbmc for the 1*8 pixel subrectangle Sbmcneedle and yields its coordinates if found, or nil otherwise. (bmcfind64 Sbmc Sbmcneedle) => (Ix Iy) Scans Sbmc for the 8*8 pixel subrectangle Sbmcneedle and yields its coordinates if found, or nil otherwise. (bmcgauss Sbmc) => Sbmcgauss Applies a 5x5 Guassian convolution filter to Sbmc and yields the result as a new bmc. (bmcheight Sbmc) => Iheight Yields the height of Sbmc. See bmp2bmc, bmc2bmp, bmcwidth. (bmcheter Sbmc Iradius) => Sbmcheter Yields a new bmc where each pixel value is a measure of how heterogeneous the pixel is to its neighbourhood (radius Iradius). (bmcheter2 Sbmc Iradius Idhom Idhet Idbg Iminhom Imaxhom Iminhom1 Imaxhom1 Iminhet Imaxhet Iminbg Imaxbg) => Sbmcheter Yields a new bmc where each pixel value is 255 if it's uniformely heterogenous with respect to its neighbourhood (radius Iradius), or 0 otherwise. Idhom specifies maximum difference between homogenous edge pixels, Idhet specifies minimum difference between edge and background pixels, Idbg specifies maximum difference between background pixels; all three parameters with range 0-255. The min/max parameters specify the minimum and maximum number of pixels in the respective categories necessary to validate the current pixel. The highest possible maximum is (2*Iradius)^2 for all categories except for hom1, where it is 9. (bmchipass Sbmc Iminval) => Sbmchp Yields a new bmc Sbmchp, where each pixel value is a copy of the corresponding pixel value in Sbmc if the value is >= Iminval or 0 otherwise. See bmcthreshold. (bmchist Sbmc) => Lhist Yields a histogram of each pixel value in Sbmc. Lhist is on the same form as produced by the bincount function. See bmcmedian, bincount, bmp2bmc, bmc2bmp, bmcwidth. (bmchisteq Sbmc) => Sbmche Yields a new bmc Sbmche which is a histogram equalized version of Sbmc. (bmchisthet Sbmc Iradius Idbg Idfg Idhet) => Sbmchisthet Yields a new bmc where each pixel value is a measure of how heterogeneous the pixel is to its neighbourhood (radius Iradius). (bmcinvert Sbmc) => Sbmcinv Yields a new bmc Sbmcinv, where each pixel value is an inverted copy of the corresponding pixel value in Sbmc, (bmckernel Sbmc Iradius Ckernelfunc) => Sbmcres Yields a new bmc where each pixel value is the return value of Ckernelfunc, which takes a string representing the neighbourhood of each pixel in Sbmc. The neighbourhood is consists of (2*Iradius+1)^2 pixels, each represented by 1 byte, left-right, down-up. (bmcmask Sbmc Smask) => Smasked Yields a new bmc where each pixel value is proportional to the corresponding pixel value in Sbmc, using the pixel values in Smask as weights. (bmcmedian Sbmc) => Imedian Yields the median of each pixel value in Sbmc.See bmchist, bmcavg. (bmcmult Sbmc I) => Sbmcmult Yields a I*I bigger version of Sbmc as a new bmc. (bmcopen Sbmc) => Sbmcopen Performs a morphological opening to Sbmc and yields the result as a new bmc. (bmcpower Sbmc Na Ng) => Sbmc [Mutating] Updates each pixel value v in Sbmc to 255*Na*(v/255)^Ng. It's not unusual to set Na=1 and Ng=log(desiredAvg)/log(sourceAvg). (bmcqrenc S Ips) => Sbmcqr Encodes S as QR code bmc. Ips specifies the module size in pixels. The result can be given a border with bmcextend and inverted with bmcinvert. (bmcrect Sbmc Ixpos Iypos Iwidth Iheight) => Sbmcrect Yields the specified rectangular area of Sbmc as a new bmc. Positive Iypos is up unless Ih<0, in which case Ih<=-Ih and positive Iypos is down. (bmcrectmse Sbmc Sbmcneedle Ix Iy) => Nmse Yields the mean squared difference between the rect at Ix, Iy in Sbmc and Sbmcneedle, or nil if Sbmcneedle doesn't fit in Sbmc at Ix, Iy. See bmcrectmsefind. (bmcrectmsefind Sbmc Sbmcneedle Nth) => (Ix Iy) Scans Sbmc for a rectangle similar to Sbmcneedle and yields the rectangle's coordinates, or nil if no rectangle is similar enough, i.e. has a mean squared error less than or equal to Nth.See bmcrectmse. (bmcrowsum Sbmc Iy) => Isum Yields the sum of all pixel values in row Iy (0 is the bottom row). (bmcstats Sbmc) => (stddev, avg, P25, P250, P500, P750, P975) Yields statistics for the specified bmc. (bmcthres1 Sbmc Ith) => Sbmcthres Yields a new bmc, comprising only those pixels which are greater than Ith. See bmcthres2. (bmcthres2 Sbmc Sbmc2 Ith) => Sbmcthres Yields a new bmc, comprising only those pixels in Sbmc which are greater than Ith in either Sbmc or Sbmc2. See bmcthres1. (bmcthreshold Sbmc Iminval) => Sbmcbw Yields a new bmc Sbmcbw, where each pixel value is 255 if the corresponding pixel value in Sbmc is >= Iminval or 0 otherwise. See bmchipass. (bmcwidth Sbmc) => Iwidth Yields the width of Sbmc. See bmp2bmc, bmc2bmp, bmcheight. (bmp2bmc Sbmp [Ir [Ig Ib [Ix Iy Iw Ih]]]) => Sbmc Yields a single channel, 1 byte per pixel version of Sbmp as a string. The first 4 bytes of Sbmc is the bitmap's width; the second 4 bytes its height; after this each pixel follows, 1 byte per pixel, left-right, down-up. If optional Ir,Ig,Ib parameters are provided and non-nil, each pixel value in Sbmc is 255 if the corresponding pixel colour in in Sbmp exactly matches Ir Ig Ib, and 0 otherwise. If optional Ir>=1 and Ig,Ib is nil, pixels with colour (non-white/non-gray pixels) are darkened, with a factor proportional to their non-whiteness/non-grayness, and inverse proportional to Ir. If optional Ix,Iy,Iw,Ih parameters are provided and >=0, the sub-rectangle of Sbmp determined by these parameters are returned; positive Iypos is up unless Ih<0, in which case Ih<=-Ih and positive Iypos is down. If Ir is not supplied or equal to -1, the grayscale conversion uses a luminosity weighted average with RGB weights 0.30, 0.59 and 0.11. If Ir is -2 the grayscale conversion uses an unweighted average. If Ir is -3 the grayscale conversion uses a lightness min/max average. If Ir is -4 the grayscale conversion uses a Lizp4 legacy algorithm. If Ir is -5 the grayscale conversion uses an unweighted average, followed by a gamma correction to make the average pixel value 128. If Ir is -6, the grayscale conversion uses a weighted average with RGB weights 0.4, 0.4, 0.2. If Ir is -7 the grayscale conversion uses another Lizp4 legacy algorithm. If Ir is -8 the grayscale conversion uses another Lizp4 legacy algorithm, followed by a gamma correction to make the average pixel value 128. See bmc2bmp. (bmp2floats Sbmp Ix Iy Iw Ih Ipl Ipr Ipt Ipb Igray) => Sfloats Yields a new byte string of IEEE754 single-precision format floats corresponding to the BGR bytes in Sbmp, 0-padded according to (Ipl Ipr Ipt IPb). If Igray==1, each RGB pixel is converted by (R+G+B)/3. If Igray==2, each RGB pixel is converted by (R+G+B)/(3*255). See arr2floats, floats2arr. (bmpavg Sbmp Ix Iy Iw Ih) => (Nr Ng Nb) Yields the average colour of the specified rect in Sbmp. Positive Iy is down unless Ih<0, in which case Ih<=-Ih and positive Iy is up. See bmpmode. (bmpbgleft Sbmp Ix Iy Iw Ih Ir Ig Ib Ifuzzy Imincount) => Inof Yields the number of rects that has at least Imincount pixels of colour (Ir Ig Ib), stepping left from the first rect specified by (Ix Iy Iw Ih). See bmpmodeleft. (bmpbitpad Sbits Iwidth Iheight) => Sbitspadded [ImageLib] Pads each scanline in Sbits with zeroes to end on a 4-byte boundary. See bmpbitstr, bmpbits, bmpinfoheader, mkbitmapheader. (bmpbits Sbmp) => Sbits [ImageLib] Yields the scan lines of Sbmp, zero-padded to a 4-byte boundary. See bmpbitstr, bmpinfoheader, mkbitmapheader. (bmpbitstr Sbmp) => Sbits [ImageLib] Yields the raw bitmap bits of Sbmp, without pad. See bmpbits, bmpinfoheader, mkbitmapheader. (bmpbordercolrepl Sbmp IminLenV IminLenH Ith Isr Isg Isb Idr Idg Idb) => Sbmp [Mutating] Changes colour from (Isr Isg Isb) to (Idr Idg Idb) for every matching pixel in Sbmp, if the pixel is part of a continous (same-coloured with fuzziness Ith) vertical or horisontal line at least IminLen* pixels long. (bmpcolrepl Sbmp Isr Isg Isb Idr Idg Idb Ifuzziness [Ix Iy Iw Ih]) => Sbmp [Mutating] Changes colour from (Isr Isg Isb) to (Idr Idg Idb) for every matching pixel in Sbmp. Optional (Ix Iy Iw Ih) specifies a sub-rectangle; positive Iy is down unless Ih<0, in which case Ih<=-Ih and positive Iy is up. (bmpdist Sbmp1 Sbmp2) => Fdist Yields a measure of how different Sbmp1 and Sbmp2 are, as a float between 0 and 1. (bmpdistbest Sbmp1 ARR Fth) => (Ibestmatch Fdist) A kind of strdistbest for bmps. (bmpdistfirst Sbmp1 ARR Fth) => (Ifirstmatch Fdist) A kind of strdistfirst for bmps. (bmpfillrect Sbmp Ix Iy Iw Ih Ir Ig Ib) => Sbmp [Mutating] Fills the specified rectangle with the specified colour (Ir Ig Ib). Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. (bmpgrayrect Sbmp Ix Iy Iw Ih Nr Ng Nb Binvert) => Sbmp [Mutating] Converts the specified rectangle to grayscale according to weights (Nr Ng Nb). Optionally inverts the grayscaled image. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. (bmphomoleft Sbmp Ifuzzy) => Inof Yields the number of homogeneous vertical lines from the left, ie that differs at most Ifuzzy. See bmphomoright. (bmphomoright Sbmp Ifuzzy) => Inof Yields the number of homogeneous vertical lines from the right, ie that differs at most Ifuzzy. See bmphomoright. (bmpinfo Sbmp) => Lsize [ImageLib] Yields the dimensions of the BMP image Sbmp as a list (Iwidth Iheight). (bmpinfoheader Sbmp) => Sbmpinfoheader [ImageLib] Yields the bitmap info header stored in Sbmp. See bmpbits, mkbitmapheader. (bmpinvertrect Sbmp Ix Iy Iw Ih) => Sbmp [Mutating] Inverts the specified rectangle. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. (bmplablmultrect Sbmp Ix Iy Iw Ih Fdl Binvert) => Sbmp [Mutating] Multiplies each pixel's lightness with Fdl. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. See bmplabtransformrect, rgblabdiff, rgblabtransform, bmpmatrixrect. (bmplabtransformrect Sbmp Ix Iy Iw Ih Fdl Fda Fdb Binvert) => Sbmp [Mutating] Transforms each pixel colour in Sbmp using the given L*ab factors. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. See bmplablmultrect, rgblabdiff, rgblabtransform, bmpmatrixrect. (bmpmatrixrect Sbmp Ix Iy Iw Ih Amatrix Binvert) => Sbmp [Mutating] Multiplies each RGB value in Sbmp with Amatrix, which should be a 9-element array of numbers. Optionally inverts each pixel colour first. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. See bmprgbmultrect, bmplabtransformrect. (bmpmode Sbmp Ix Iy Iw Ih) => (Nr Ng Nb) Yields the colour mode (i.e. the most common colour) of the specified rect in Sbmp. Positive Iy is down unless Ih<0, in which case Ih<=-Ih and positive Iy is up. See bmpmodeleft, bmpavg. (bmpmodeleft Sbmp Ix Iy Iw Ih Ir Ig Ib Ifuzzy) => Inof Yields the number of rects that has the specified mode (Ir Ig Ib) (tolerance Ifuzzy), stepping left from the first rect specified by (Ix Iy Iw Ih). See bmpmode. (bmpout Hprinter IdestX IdestY IdestW IdestH IsrcX IsrcY IsrcW IsrcH Sbits Sbmpinfo) => ok Prints the bitmap represented by Sbits and Sbmpinfo to the device context represented by Hprinter. The widths and heights can be nil or 0, in which case the actual printer and image sizes are used. See textbox, createfont, getprinter, eanout, lineout. (bmpqrenc S Ips) => Sbmp [ImageLib] Encodes S as QR code 24-bit Windows bmp. Ips specifies the module size in pixels. Nbw specifies the border width as a percentage of the qr code image side length. (bmprect Sbmp Ixpos Iypos Iwidth Iheight) => Sbmpcropped Yields the specified rectangular area of Sbmp as a new bitmap. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. See bmpbits, mkbitmapheader. (bmprectfind Sbmpbig Sbmpsmall) => Lyx [ImageLib] Yields a list (Ix Iy) specifying the topleft coordinate for the first subrectangle in Sbmpbig equal to Sbmpsmall, or nil if no match is found. (bmprectrgb Sbmp Ixpos Iypos Iwidth Iheight) => Lrgb [ImageLib] Yields the average RGB colour vals as a list (Nr Ng Nb) in the specified subrectangle of Sbmp. (bmprgbget Sbmp Ixpos Iypos) => (Ir Ig Ib) Yields the colour value of the specified pixel in Sbmp. Sbmp should be complete with file and info headers. Positive Iypos is down. See bmprgbset. (bmprgbmultrect Sbmp Ix Iy Iw Ih Nr Ng Nb Binvert) => Sbmp [Mutating] Multiplies each RGB value in Sbmp with (Nr Ng Nb). Optionally inverts each pixel colour first. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. See bmpmatrixrect, bmplabtransformrect. (bmprgbreplrect Sbmp Ix Iy Iw Ih Isr Isg Isb Idr Idg Idb) => Sbmp [Mutating] Replaces RGB pixel colours in Sbmp. (bmprgbset Sbmp Ixpos Iypos Ir Ig Ib) => Sbmp [Mutating] Sets the colour value of the specified pixel in Sbmp. Sbmp should be complete with file and info headers. Positive Iypos is down. Yields the modified Sbmp. See bmprgbget. (bmpstegdec Sbmp) => S Yields a new string S with 1 byte for every pixel in Sbmp. See bmpstegenc, decrypt, encrypt. (bmpstegenc Sbmp S) => Sbmp [Mutating] Modifies Sbmp by replacing the least significant bits in the RGB colour table with bits from S. Sbmp should contain at least as many pixels as there are bytes in S. 3, 2 and 3 bits from the R, G and B channels are replaced for every pixel/byte. S should be padded to contain the same number of bytes as there are pixels in Sbmp, using similar data as the rest of S (e.g. use the mprand function if S looks random). Because of this, S should contain enough information to deduce its original length. See bmpstegdec, encrypt, decrypt. (bmpthresholdrect Sbmp Ix Iy Iw Ih Ith Binvert) => Sbmp [Mutating] Thresholds the specified rectangle, optionally preceded by inversion. Sbmp should be complete with file and info headers. Positive Iypos is down unless Ih<0, in which case Ih<=-Ih and positive Iypos is up. Yields the modified Sbmp. (boundp Asymbol) => B Yields true if Asymbol is bound in the current environment; yields nil otherwise. See define, setq. (bringwindowtotop Hwnd) => ok Brings Hwnd to the top of the Z-order. (buttonclick Hbutton) => ok Clicks button Hbutton. Yields ok. (buttongetcheck Hbutton) => Bchecked Yields true if radio or check button Hbutton is checked. Yields nil otherwise. (buttonsbox Scaption Stext Sbutton1 Sbutton2 Howner [Hicon]) => I [StdLib] Displays an dialog box with two buttons, labeled Sbutton1 and Sbutton2. Yields 1 if button 1 is clicked; yields 2 if button 2 is clicked; yields nil if the window is closed by other means. Howner can be nil, in which case the input box has no owner. (buttonsetcheck Hbutton Bchecked) => ok Checks or unchecks button Hbutton. Yields ok. (buttontogglecheck Hbutton) => Bnewstate Toggle the check state of radio or check button Hbutton. Yields the new check state. (bw16match Sbw16 Iskipcols Schars) => (NbestScore SbestLig IbestSkip IbestColWidth) Yields the best match (of the ligatures in Schars), or nil if no match is found. Schars should be a packed string of {nofcols liglen bw16 lig} ligament templates, where nofcols and liglen are single byte integers. See bw16matchfull. (bw16matchfull Sbw16 Schars) => (Nscore Stext) Yields the best text from repeated calls to bw16match. See bw16match. (byteget S Ipos) => Ibyte Yields the integer stored in byte Ipos (0-indexed) in string S. See byteset. (bytes2float S) => F Yields the number represented by S when interpreted as a float byte string. The format of S should be that produced by the n2bytes function. See bytes2int, n2bytes, str2dec, dec2str. (bytes2int S) => I Yields the number represented by S when interpreted as an integer byte string. The format of S should be that produced by the n2bytes function. See bytes2float, n2bytes, str2dec, dec2str. (bytes2obj S) => O Yields the object represented by the byte string S. S must have been created by the obj2bytes function. Objects of type are reset to . See bytes2objlist, bytes2objvalid, obj2bytes. (bytes2objlist S) => Lobj Equivalent to (list (bytes2obj S)) if S is a valid obj2bytes string. Yields nil of S is not a valid obj2bytes string. See bytes2obj, bytes2objvalid, obj2bytes. (bytes2objvalid S) => Bvalid Yields non-nil if S is a valid argument for the bytes2obj function. See bytes2objlist, bytes2obj, obj2bytes. (bytes82n S) => N Interprets S as a byte string in little endian two's-complement format, and yields the corresponding number, as an int (if it fits in 32 bits) or as a float approximation. See n2bytes8. (byteset S Ipos Ibyte) => Ichar [Mutating] Modifies string S by storing the integer Ibyte at byte Ipos in S. The integer (Ibyte) is truncated to 8 bits; yields the truncated value. See byteget. (caaar L) => O [StdLib] [Macro] Equivalent to (car (car (car L))). (caadr L) => O [StdLib] [Macro] Equivalent to (car (car (cdr L))). (caar P) => O [Syntactic sugar] Expands to (car (car P)). See cadr, cdar, cddr. (cadar L) => O [StdLib] [Macro] Equivalent to (car (cdr (car L))). (caddr L) => O [StdLib] [Macro] Equivalent to (car (cdr (cdr L))). (cadr P) => O [Syntactic sugar] Expands to (car (cdr P)). See caar, cdar, cddr. (callstacktrace Itid) => ARRexprs Yields a list of 2 element; an array of expressions representing the call stack for thread Itid, with the most recent return expression first, and the current expression. (car P) => O [Hard-coded] Yields the car of P. Signals an error if P is not a pair. See cdr, cons, append. (cart2ang Nx Ny Nox Noy Nfull) => Fangle Yields the angle to Nx,Ny using Nox,Noy as origo and Nfull as the angle for a full circle. (cartdist Nx0 Ny0 Nx1 Ny1) => Ndist Yields sqrt((Nx0-Nx1)^2+(Ny0-Ny1)^2) (Cartesian distance). (cbadditem Hcombobox Sitem) => Iindex Adds item string Sitem to listbox Hlistbox. Yields the index of the new item. (cbdelall Hcombobox) => ok Deletes all items in combobox Hcombobox. (cbgetindex Hcombobox) => Iindex Yields the index of the selected item in combobox Hcombobox if an item is selected and the text in the edit box matches the selected item. Yields nil otherwise. (cbgettext Hcombobox) => Stext Yields the text in the edit box of combobox Hcombobox, regardless of whether the text is from a matching item in the listbox. (cd Spath) => B Sets the current directory to the drive and path specified by Spath. Yields nil on error; does not raise an exception. (cdaar L) => O [StdLib] [Macro] Equivalent to (cdr (car (car L))). (cdadr L) => O [StdLib] [Macro] Equivalent to (cdr (car (cdr L))). (cdar P) => O [Syntactic sugar] Expands to (cdr (car P)). See cadr, caar, cddr. (cddar L) => O [StdLib] [Macro] Equivalent to (cdr (cdr (car L))). (cdddr L) => O [StdLib] [Macro] Equivalent to (cdr (cdr (cdr L))). (cddr P) => O [Syntactic sugar] Expands to (cdr (cdr P)). See cadr, cdar, caar. (cdecl_I EXTfarproc) => I Calls EXTfarproc with 0 arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_II EXTfarproc Ip1) => I Calls EXTfarproc with 1 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIFF EXTfarproc Ip1 Fp2 Fp3) => I Calls EXTfarproc with 1 int and 2 float arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIFFF EXTfarproc Ip1 Fp2 Fp3 Fp4) => I Calls EXTfarproc with 1 int and 3 float arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_III EXTfarproc Ip1 Ip2) => I Calls EXTfarproc with 2 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIF EXTfarproc Ip1 Ip2 Fp3) => I Calls EXTfarproc with 2 int and 1 float arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIFIJJJJ EXTfarproc Ip1 Ip2 Fp3 Ip4 Ip5 Ip6 Ip7 Ip8) => (Iretval Ip5 Ip6 Ip7 Ip8) Calls EXTfarproc with 3 int, 1 float and 4 int ptr arguments using cdecl conventions. Does not expect a return value. Yields retval and the possibly mutated Ip5, Ip6, Ip7, Ip8. (cdecl_IIII EXTfarproc Ip1 Ip2 Ip3) => I Calls EXTfarproc with 3 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIIFII EXTfarproc Ip1 Ip2 Ip3 Fp4 Ip5 Ip6) => I Calls EXTfarproc with 5 int and 1 float arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIII EXTfarproc Ip1 Ip2 Ip3 Ip4) => I Calls EXTfarproc with 4 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIIII EXTfarproc Ip1 Ip2 Ip3 Ip4 Ip5) => I Calls EXTfarproc with 5 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIIIIFFJJI EXTfarproc Ip1 Ip2 Ip3 Ip4 Ip5 Fp6 Fp7 Ip8 Ip9 Ip10) => (Iretval Ip8 Ip9) Calls EXTfarproc with 6 int, 2 float and 2 int ptr arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIIIII EXTfarproc Ip1 Ip2 Ip3 Ip4 Ip5 Ip6) => I Calls EXTfarproc with 6 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIIIIII EXTfarproc Ip1 Ip2 Ip3 Ip4 Ip5 Ip6 Ip7) => I Calls EXTfarproc with 7 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIIIIIIIFJ EXTfarproc Ip1 Ip2 Ip3 Ip4 Ip5 Ip6 Ip7 Ip8 Fp9 Ip10) => (Iretval Ip10) Calls EXTfarproc with 8 int, 1 float and 1 int ptr arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIIIIIIIIIFJ EXTfarproc Ip1 Ip2 Ip3 Ip4 Ip5 Ip6 Ip7 Ip8 Ip9 Fp10 Ip11) => (Iretval Ip11) Calls EXTfarproc with 3 int, 1 float and 4 int ptr arguments using cdecl conventions. Does not expect a return value. Yields retval and the possibly mutated Ip11. (cdecl_IIIS EXTfarproc Ip1 Ip2 Sp3) => I Calls EXTfarproc with 2 int and 1 0-terminated string arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IIISI EXTfarproc Ip1 Ip2 Sp3) => I Calls EXTfarproc with 3 int and 1 0-terminated string arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IISS EXTfarproc Ip1 Sp2 Sp3) => I Calls EXTfarproc with 1 int and 2 0-terminated string arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IISSI EXTfarproc Ip1 Sp2 Sp3) => I Calls EXTfarproc with 2 int and 2 0-terminated string arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_IS EXTfarproc Sp1) => I Calls EXTfarproc with 1 0-terminated string arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_ISII EXTfarproc Sp1 Ip2 Ip3) => I Calls EXTfarproc with 1 0-terminated string and 2 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_ISTI EXTfarproc Sp1 Ip2 Ip3) => I Calls EXTfarproc with 1 0-terminated string, 1 string and 1 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_ITI EXTfarproc Sp1 Ip2) => I Calls EXTfarproc with 1 string and 1 int arguments using cdecl conventions. Yields a 4-byte result as an int. (cdecl_S EXTfarproc) => S Calls EXTfarproc with 0 arguments using cdecl conventions. Presumes a 0-terminated string pointer result; yields this string. (cdecl_SI EXTfarproc Ip1) => S Calls EXTfarproc with 1 int arguments using cdecl conventions. Presumes a 0-terminated string pointer result; yields this string. (cdecl_VI EXTfarproc Ip1) => ok Calls EXTfarproc with 1 int arguments using cdecl conventions. Does not expect a return value. Yields ok. (cdecl_VII EXTfarproc Ip1 Ip2) => ok Calls EXTfarproc with 2 int arguments using cdecl conventions. Does not expect a return value. Yields ok. (cdecl_VJ EXTfarproc Ip1) => Ip1 Calls EXTfarproc with 1 int ptr arguments using cdecl conventions. Does not expect a return value. Yields the possibly mutated Ip1. (cdr P) => O [Hard-coded] Yields the cdr of P. Signals an error if P is not a pair. See car, cons, append. (ceil N) => I Rounds N towards positive infinity, i.e. yields the smallest integer not less than N. See floor, round, trunc. (cexsetcolwidth Hwindow Icol Iwidth) => Bok Sets the width of column Icol in comboex Hwindow. (cexsetnofcols Hwindow Inofcols) => Bok Sets the number of column in comboex Hwindow. (cexsreqget CEXSREQ Aattrib) => Ovalue Yields attribute Aattrib from comboex search request CEXSREQ. Aattrib should be one of pszExpression, iRequestRangeStart, iRequestRangeEnd, iToken, bDirectResponse, SearchResponse. CEXSREQ is received as the 4th argument to the action function for a comboex window when the wm_notify/*search action is processed. (cexsreqset CEXSREQ Aattrib Oval) => ok Sets attribute Aattrib in comboex search request CEXSREQ. Aattrib should be the atom bDirectResponse. CEXSREQ is received as the 4th argument to the action function for a comboex window when the wm_notify/*search action is processed. (cexsresset CEXSRES Aattrib Oval) => ok Sets attribute Aattrib in comboex search response CEXSRES. Aattrib should be one of iToken, iAvailableRangeStart, iAvailableRangeEnd. CEXSRES is received by the cexsreqget function applied on a CEXSREQ item, attribute SearchResponse. CEXSREQ is received as the 4th argument to the action function for a comboex window when the wm_notify/*search action is processed. (cexvalidateget CEXVALIDATE Aattrib) => Ovalue Yields attribute Aattrib from comboex validate item CEXVALIDATE. Aattrib should be one of iRow, pszDisplayText, iSelectType. CEXVALIDATE is received as the 4th argument to the action function for a comboex window when the wm_notify/*validate action is processed. (checkwindow Hwnd) => ok Yields non-nil if Hwnd is a responsive window; yields nil otherwise. (chr I) => S Yields a new string containing the character represented by the given ASCII value I. See asc. (citatelement Sline Osep) => Lelems [StdLib] Parses Sline as a list of elements separated by Osep. Optional white space between elements is removed. An element may be delimited by quotation marks which are removed. Osep may be a literal string, or a regular expression such as '(| "%09" "%20"). (client2screenx Hwnd Icx) => Isx Yields the horizontal screen coordinate corresponding to the given Hwnd client coordinate. (client2screeny Hwnd Icy) => Isy Yields the vertical screen coordinate corresponding to the given Hwnd client coordinate. (clock) => Fsecs Yields the elapsed system time (the number of seconds since Windows was started). See datetime. (closehandle H) => ok Closes handle H. (closehandles) > ok Closes all handles, all Lizp-created GUI-objects and closures. (closeprinter Hprinter) => ok Deallocates printer Hprinter retrieved by the getprinter function. See getprinter. (closurep O) => B Yields true if O is a closure; yields nil otherwise. See procp, nullp, pairp, intp, stringp, floatp, numberp, reservedp, atomp, externalp, arrayp. (cls) => ok Clears the console. (compare Oa Ob) => N Yields a negative integer if Oa is less than Ob. Yields 0 if Oa equals Ob. Yields a positive integer if Oa is greater than Ob. See equal, eq, =, streq, comparei, compareu. (compareexchange P Otestval Onewcar) => Ooldcar [Mutating] Performs (setcar P Onewcar) if (eq (car P) Otestval). The test and set operations are performed atomically with respect to other Lizp threads. Yields the original car of P. (comparei Oa Ob) => N Yields a negative integer if Oa is less than Ob. Yields 0 if Oa equals Ob. Yields a positive integer if Oa is greater than Ob. Case insensitive. See equali, eq, =, streqi, compare. (compareu Oa Ob) => N Yields a negative integer if Oa is less than Ob. Yields 0 if Oa equals Ob. Yields a positive integer if Oa is greater than Ob. Case insensitive. All strings should be UTF-8 Unicode. See equali, equalu, eq, =, strequ, compare. (complement L1 L2 [Bmulti]) => L [StdLib] Yields a new list with every element from L1 which is not a member of L2. See union, intersection. (compress S) => Scompressed Compressed S to a new string. See decompress. (cond (Opredicate Oexp*)* [(else Oexp*)]) => O [Special form] [Syntactic sugar] Evaluates the first Opredicate. If this yields non-nil, the corresponding Oexp* expressions are evaluated in sequence, and the value of the last evaluation is returned, or nil of none were provided. If the first Opredicate yields nil, the next is evaluated, and so on. If none of the predicates yields non-nil, the Oexp* expressions corresponding to the else clause are evaluated and the value of the last evaluation is returned (or nil if none were provided). If none of the predicates yields non-nil and no else clause is provided, nil is returned. See if, or, and, not. (cons Ocar Ocdr) => P [Hard-coded] Yields a new pair constructed from Ocar and Ocdr. See car, cdr, append. (consolecreate) => ok Creates the Lizp console window if it doesn't already exist. If the current Lizp session was started without the console, closing the console window will not close Lizp. Yields nil on error, but does not signal an error. See consoledestroy. (consoledestroy) => ok Removes the Lizp console window if it exists. Note that this will also close Lizp if the console was automatically created when the current Lizp session started. Yields nil on error, but does not signal an error. See consolecreate. (copydataread Iid [Ntimeout]) => Sdata Reads data sent via the WM_COPYDATA message and yields the data as a new string. Only messages with a dwData field equal to Iid are considered. Yields nil if no such message already has been received since Iid was registered, and still isn't received within Ntimeout seconds. Ntimout can be nil for infinite time-out. Default to 5 seconds if omitted. If multiple messages have been received without being fetched with this function, the first message is kept and subsequent discarded. Lizp listens for WM_COPYDATA messages sent to its GUI window. See copydatawrite, copydatareg, copydataunreg, getguiwindow. (copydatareg Iid) => Bok Registers Iid as a WM_COPYDATA message to listen for. See copydatawrite, copydataread, copydataunreg, getguiwindow. (copydataunreg Iid) => Bok Unregisters Iid as a WM_COPYDATA message to listen for. See copydatawrite, copydataread, copydataunreg, getguiwindow. (copydatawrite Hwindow Iid Sdata) => Bok Sends Sdata to Hwindow through the WM_COPYDATA message. Lizp listens for WM_COPYDATA messages sent to its GUI window. See copydataread, copydatareg, copydataunreg, getguiwindow. (copytree Ssrc_dir Sdst_dir) => B [StdLib] Copies directory Ssrc_dir, including all files and subdirectories, to the directory Sdst_dir which is created if necessary. Yields the number of files copied. See dirlist, dirtree. (cos Nradians) => N Yields the cosine of Nradians. (cosech N) => Ncosech Yields the hyperbolic cosecant of N. (cosh N) => Ncosh Yields the hyperbolic cosine of N. (coth N) => Ncoth Yields the hyperbolic cotangent of N. (countbits I) > Inof Yields the number of bits set to 1 in I. (countbits64 Sui64) > Inof Yields the number of bits set to 1 in the 64-bit value Sui64. (cputhreadcount) => InofThreads [StdLib] Yields the CPU thread count as reported by WMIC CPU Get NumberOfLogicalProcessors, or nil if WMIC doesn't return expected values. (crc32 S) => I Yields the IEEE CRC-32 32-bit signed integer for S. (crc32 "a") => -390611389. (cread Inofbytes Ntimeout) => S Reads from stdin. Ntimeout specifies the timeout in seconds. Inofbytes can be nil, in which case all available data is read. Ntimeout can be nil, which specifies infinite timeout. If stdin is a pipe which is closed by the remote end before Inofbytes bytes has been read, as much data as was read is returned. The stdin handle must be a pipe for this function to succeed. See cwrite. (createbitmap Iwidth Iheight Sbits) => Hbitmap Yields a Win32 bitmap handle corresponding to the given bitmap bits. (createfont Nheight Nangle Bitalic Bbold Bunderlined Bstriked Bprop Stypeface) => Hfont Yields a new font with the specified attributes. See selectfont. (createicon HBMPmask HBMPcolor) => Hicon Yields a Win32 icon handle corresponding to the given mask and color bitmaps. (cwrite S) => ok Writes S to stdout. (datetime) => L Yields a list of 6 integers representing the current year, month, day, hour, minute and second. See datetimex, clock. (datetimeex) => L Yields a list of 7 integers representing the current year, month, day, hour, minute, second and millisecond. See datetime, clock. (debugbreak) > Bok Causes a breakpoint exception to occur in the Lizp process. (dec Ovar) => Inewval [Mutating] Atomically rebinds the variable Ovar evaluates to to its old value minus 1. Yields the new, decreased value. See inc, compareexchange. (dec2bin Idec) => Sbin [StdLib] Yields a string representing Idec in base 2. A negative Idec is treated as that value modulo 2^32 (two’s-complement low 32 bits), so (dec2bin (crc32 "a")) => "11101000101101111011111001000011" and not a minus-prefixed string. Equivalent to (dec2str Idec 2). (dec2hex Idec) => Shex [StdLib] Yields a lowercase string representing Idec in base 16. A negative Idec is treated as that value modulo 2^32 (two’s-complement low 32 bits), so (dec2hex (crc32 "a")) => "e8b7be43" and not a minus-prefixed string. Equivalent to (dec2str Idec 16). (dec2lmp Sdec) => Slmp [MathLib] Parses Sdec as an unsigned radix 10 integer string; yields an unsigned radix 256 integer string. See lmp2dec. (dec2str Idec Ibase) => Snum Yields a string representation of Idec in base Ibase, 2<=Ibase<=36. See bytes2int, n2bytes, bytes2float, dec2str. (decompress S) => Sdecompressed Decompresses S, which must have been compressed with the compress function. See compress. (decrypt Sencrypted Spwd [Bbmp]) => (O) [MathLib] Decrypts Sencrypted using Spwd. Sencrypted should be the result from the encrypt function. If optional Bbmp is non-nil, Sencrypted should be a 24-bit Windows bitmap (including file and info headers), produced by the encrypt function with a non-nil Bbmp argument. Yields a list with the original object supplied to encrypt as the only element, or nil on error. See encrypt. (encurl Surl) => S [StdLib] Replaces every '+' with ' ', and every hexadecimal %XX encoding with its equivalent character, in S. See encurl. (deembed Sfilename) => Lexpr Yields the embedded expression in executable Sfilename. (defglobal Avar O) => ok [Special form 1] [Mutating] (defglobal (Afunc Avar*) Oexp*) => ok [Special form 2] [Mutating] [Syntactic sugar] Creates a new binding from Avar to O in the global environment, or rebinds Avar to O if it already exists. Form 2 is syntactic sugar for (defglobal Afunc (lambda (Avar*) Oexp*)). Avar and Oexp* are not evaluated; O is. See define, defmacro, set, let, letrec, lambda. (define Avar O) => ok [Special form 1] [Mutating] (define (Afunc Avar*) Oexp*) => ok [Special form 2] [Mutating] [Syntactic sugar] Creates a new binding from Avar to O in the current environment, or rebinds Avar to O if it already exists. Form 2 is syntactic sugar for (define Afunc (lambda (Avar*) Oexp*)). Avar and Oexp* are not evaluated; O is. The current environment must be a lambda, and all define calls must come first in the lambda body (ie, they can't be intertwined with other statements). The definition is internal, and the scope is all of the lambda body. See defmacro, defglobal, set, let, letrec, lambda. (defmacro Aname Ctransfunc) => ok [Special form] [Mutating] Creates a new macro with a 1-arg transformation function Ctransfunc, and binds Aname to the macro in the global environment. Aname is flagged as a macro by the parser, ie before compilation. See define, defglobal, set, let, letrec, lambda. (delay O) => Odelayed [StreamLib] [Macro] [Special form] Yields a function of 0 arguments which when invoced yields the evaluated value of O, in effect delaying the evaluation of O. The evaluated value is memoized, so that subsequent invocations only yields the result. See force. (delmenu LMENU) => ok Deletes LMENU. (deltree Sfname) => Inof [StdLib] Deletes all files and folders matching Sfname, removing DACL security if the Restore privilege is enabled. Recurses into matching directories. Note that for subdirectories, every name will match. Yields the number of files and directories successfully deleted. See dirlist, dirtree. (delwindow Hwindow) => B Removes and destroys window Hwindow, which should have been created with mkwindow. (dfamatch Odfa S Nstartpos ENV) => Nendpos Yields an integer representing the end position in S for the longest substring starting in Nstartpos matching dfa, so that Nendpos-Nstartpos is length of the matching substring. Yields nil if no match is found. A regular expression in its simplest form is a string, in which case an exact string match is performed. A regular expression may also be one of the atoms any which matches any 1-char string white which matches the 1-char strings " " "%09" "%0a" "%0b" "%0c" "%0d" newline which matches the strings "%0d%0a" "%0d" "%0a" digit which mathces any decimal 1-char string alpha which matches any alphabetic 1-char string alnum which matches any alphanumeric 1-char string hexdig which matches any hexadecimal 1-char string print which mathces any printable 1-char string including space print7 which mathces any 7-bit printable 1-char string including space nonprint which matches any non-printable 1-char string nonprint7 which matches any 8-bit (msb set) or non-printable 1-char string graph which mathces any printable 1-char string excluding space lower which matches any lowercase alphabetic char upper which mathces any uppercase alphabetic char punct which mathces the 1-char strings "." "," ";" ":" "!" bos which matches the begining of S eos which matches the end of S A regular expression may also be a list on one of the forms (| re1 re2 ...) alternation: matches if re1 or re2 matches (& re1 re2 ...) concatenation: matches if re1 followed by re2 matches (* re) repetition: matches if 0 or more of re matches (? re) optional: matches re or the empty string (+ re) one-or-more: matches if 1 or more of re matches (= re) same: matches if re matches (^ Avar) lookup: matches by using the regexp stored in Avar (oneof Schars) matches any 1-char string consisting of a char from Schars (except se Schars) matches any 1-char string matching se and not containing chars from Schars (! se) negation: matches any 1-char string se doesn't match (icase se) ignore case (ucase se) ignore case (UTF8) (inonspace se) ignore non-spacing characters (isymbols se) ignore symbols (iwidth se) don't differentiate between single- and double-byte characters Note that a 'simple expression' (se) cannot contain the operators | & * ? + or =. The operator may be specified as one of the atoms | & * ... above, or as in (Aop Avar) where Aop is one of the atoms | & * ... as before, and Avar is a variable. When the operator expression matches, the variable Avar is bound to the mathcing (sub-)string. The concatenation operator matches the leftmost operand with the longest substring possible. The alternation operator tries the operands left to right. The lookup operator allows for recursive patterns and context-free grammars. See re2dfa. (dfarepl Odfa S Oexpr ENV) => Snew Yields an new string by replacing every substring matching Odfa with the expression yielded by evaluating Oexpr. See dfamatch, re2dfa. (dirlist Sfilename [Butf8]) => L Yields a list of all files and folders matching Sfilename. Each element in L is on the form (Sfilename Sattributes Ifilesize IcreationDate ImodifiedDate). Sattributes is a string of at most the following characters, in given order: d a c h n o r s t representing Directory, Archive Compressed, Hidden, Normal, Offline, Readonly, System, Temporary. The attribute string will always contain at least 1 character. The dates can be converted with the secs2time function. If optional Butf8 is non-nil, file names are always in UTF-8 format. Yields nil if no files or folders match Sfilename. (dirtree Sfname) => L [StdLib] Yields a list of all files and folders matching Sfilename. Recurses into matching directories. Note that for subdirectories, every name will match. See dirlist, sizetree. (disableghosting) => Bok Disables window ghosting for the Lizp process. (display O) => ok Prints O to the console. Strings are not surrounded by double quotes. Special characters in strings and atoms are not slashified. Objects are printed in full, no capping, no pretty formatting. Line breaks only when specified in a string (with CRLF, "%0d%0a"). See print, printc, sprintsimple. (div N1 N2) => I Yields the integer quotient of the division N1/N2, such that (div N1 N2) equals (trunc (/ N1 N2)). (dlgcursor Hwindow Bhourglass) => ok Sets the cursor for Lizp4 dialog window Hwindow to an hourglass if Bhourglass is non-nil, or restores the normal cursor if Bhourglass is nil. (dlgid2hwnd Hwndparent Idlgid) => HWND Yields the specified control's handle, given its parent dialog box and control id. (doubles2arr Sdoubles) => ARRdoubles Yields a new array of doubles from the byte string of IEEE754 double-precision format doubles in Sdoubles. See arr2doubles, bmp2floats. (duplist L) => Lresult Yields a new list with the same elements as L, in the same order. See splice, append. (eanout Hprinter Inumber Nx Ny Nwidth Nheight [Ibold]) => ok Prints Inumber as an EAN-coded bar code to printer Hprinter. Nx, Ny specifies the upper left corner of the graphics. All units are in mm/10, and are rounded to multiples of device units. Ibold specifies, in device units, how much thicker (or thinner for if <0) the lines should be, compared with the standard specification. See textbox, createfont, getprinter. (editgetsel Hwindow) > Lsel Yields the current selection in an edit box as a list of start and end integers. (editsetsel Hwindow Istart Iend) > Bok Sets the current selection in an edit box. (embed Lexpr Sfilename Bconsole) => ok Creates a new executable with Lexpr embeded. (enablewindow Hwindow Benable) => Bwasdisabled Enables (if Benable is non-nil) or disable window Hwindow. Yields true if the window was previously disable; yields nil otherwise. (encrypt O Spwd [Bbmp]) => Sencrypted [MathLib] Encrypts O with Spwd. If optional Bbmp is non-nil, Sencrypted is formatted as a 24-bit Windows bitmap (including file and info headers). See decrypt. (encurl S) => Surl [StdLib] Replaces every non-alphanumeric character in S with its equivalent hexadecimal %XX encoding See decurl. (enddoc Hprinter) => ok Ends the current job on printer Hprinter. See startdoc, getprinter. (endpage Hprinter) => ok Ends the current page on printer Hprinter. See startpage. (enumchildwindows Hwindow) => Lchildwindows Yields a list of Hwindow's child windows. (enumtasks) > Lplist Yields a list of all running processes. Each element is on the form (Ihwnd Stitle Ipid Spname Sdesk). (enumwindows) => Lwindows Yields a list of every top-level window on the screen. (envgetcur) => ENV Yields the current environment. (envgetglobal) => ENV Yields the global environment. (eq Oa Ob) => B [Hard-coded] Yields true if Oa and Ob are one and the same Lizp object; yields nil otherwise. Same-named atoms are equal; same-valued integers are equal; same-valued floats are equal. The empty list is equal to nil. An integer is never equal to a float. See equal, =. (equal Oa Ob) => B Yields true if Oa and Ob are equal according to eq, or if Oa and Ob are pairs and their cars and cdrs are equal according to equal (recursively), or if Oa and Ob are numbers and equal according to =, or if Oa and Ob are strings and equal according to streq, or if Oa and Ob are arrays of the same length and their elements are in the same order and equal according to equal (recursively). See eq, =, streq, compare, equali, equalu. (equalIUA Oa Ob) => B [IUA] IUA version of equal. (equali Oa Ob) => B Yields true if Oa and Ob are equal according to eq, or if Oa and Ob are pairs and their cars and cdrs are equal according to equali (recursively), or if Oa and Ob are numbers and equal according to =, or if Oa and Ob are strings and equal according to streqi. See eq, =, streqi, equal, equalu. (equalu Oa Ob) => B Yields true if Oa and Ob are equal according to eq, or if Oa and Ob are pairs and their cars and cdrs are equal according to equalu (recursively), or if Oa and Ob are numbers and equal according to =, or if Oa and Ob are strings and equal according to strequ. See eq, =, strequ, equal, equali. (erf N) => Nerf [MathLib] Yields a real valued approximation of the Gauss error function for N. (erf (/ a (* sd (sqrt 2)))) is the probability that the error of a single measurement lies between -a and +a, for positive a and a normal distribution with standard deviation sd and mean 0. The proportion of data values within z standard deviations of the mean is defined by (erf (/ z (sqrt 2))). See stats, bincount. (eval O) => Oresult Evaluates O in the current environment and yields the value of the evaluation. See apply, applyprim, timeval. (exception Smsg) Raises exception 18 (User exception) with the specified message. Does not yield a value. (exit Iretcode) Ends the current process immediatley with exit code Iretcode. Yields no value. (exp N) => Nexp Yields the exponential function of N. (expand O) => O Yields an equivalent version of O by transforming all syntactic sugar to primitive expansions. (extendedp O) => B Yields true if O is of type ; yields nil otherwise. See nullp, pairp, intp, stringp, floatp, numberp, reservedp, procp, atomp, externalp. (externalp O) => B Yields true if O is of type ; yields nil otherwise. See nullp, pairp, intp, stringp, floatp, numberp, reservedp, procp, atomp. (fasthash S Iseed) => Ihashval Yields a 32-bit hash value for S, using Zilong Tan's 2012 fast-hash algorithm. See hashval. (fbmpbits Sfname) => Sbits [ImageLib] Yields the raw bitmap bits stored in bmp-file Sfname. See bmpinfoheader, mkbitmapheader. (fbmpinfo Sfname) => Lsize [ImageLib] Yields the dimensions of a BMP-file as a list (Iwidth Iheight). (fbmpinfoheader Sfname) => Sbmpinfoheader [ImageLib] Yields the bitmap info header stored in bmp-file Sfname. See bmpbits, mkbitmapheader. (fbuffer Sfname) => Obuffer [StdLib] Yields a buffered stream to file Sfname. The buffer supports the operations (Obuffer 'write S) and (Obuffer 'flush). (fcopy Ssource Sdest) => B Copies the file Ssource to Sdest. Yields nil on error; does not raise an exception. Overwrites Sdest if it exists. See fempty, fmove, fdel, fcopybup. (fcopybup Ssource Sdest Bsecurity) => B Copies the file Ssource to Sdest using backup semantics. This requires both Backup and Restore privileges to be enabled. If Bsecurity is non-nil, owner and security information is copied. Yields nil on error; does not raise an exception. If Sdest exists, permissions must allow the current thread to overwrite it, or an Access Denied error will occur. See fempty, fmove, fdel, fcopy, privenable, fsecremove. (fdel Sfilename) => B Deletes the file Sfilename. Yields nil on error; does not raise an exception. See fempty, fcopy, fmove. (fdircopy Ssource Sdest) => B Creates a new directory Sdest using existing directory Ssource as template. With proper file permissions (or Backup/Restore privileges enabled), this will make the new directory inherit attributes, ownership and DACL security from the template. Note that files and subdirectories are not copied. See fdirmake. (fdirdel Sname) => B Deletes directory Sname. Yields nil on error; does not raise an exception. See fdirmake. (fdirfree Sname) => Ffree Yields the size of the free space in directory Sname available to the calling thread, in KB. The number can be converted to bytes by multiplying with 1024. Yields nil on error; does not raise an exception. (fdirmake Sname) => B Creates a new directory Sname. Yields nil on error; does not raise an exception. See fdirdel, fdircopy. (fempty Sfilename) => ok Empties file Sfilename if it exists, or creates a new, empty file if the file doesn't already exist. See fdel. (feval Sfname) => O [StdLib] [Macro] Parses and evaluates the expression in file Sfname. (fgetcurdir) => Scurdir Yields the current directory. Yields nil on error, but does not signal an error. (fgetfullpath Spath) => Sfullpath Yields the full path to Spath. Yields nil on error, but does not signal an error. See fgettitle, fgetinvoke, fgetpdir. (fgetinvoke) => Smodulepath Yields the full path to the current module. Yields nil on error, but does not signal an error. See fgettitle, fgetpdir, fgetfullpath. (fgetpdir Spath) => Spdir Yields the parent directory of Spath. Yields nil on error, but does not signal an error. See fgettitle, fgetinvoke, fgetfullpath. (fgettemp) => Stmppath Yields a new, unique, temporary filename. Yields nil on error, but does not signal an error. (fgettitle Spath) => Stitle Yields the file title part of Spath. Yields nil on error, but does not signal an error. See fgetpdir, fgetinvoke, fgetfullpath. (fgifinfo Sfname) => Lsize [ImageLib] Yields the dimensions of a GIF-file as a list (Iwidth Iheight). (filter Cpredicate L) => Lres [StdLib] Yields a new list consisting of all elements from L for which the 1-arg function Cpredicate yields non-nil. Lres is ordered as L. (fimgtype Sfname) => Atype [ImageLib] Yields one of the atoms (png gif jpg bmp) or nil if the image type of Sfname cannot be determined. (find O L) => Iindex Searches L for an element equal to O. Yields the 0-based index of the first match found, or nil if O is not equal to any top-level element in L. See member. (findIUA O L) => I [IUA] IUA version of find. (findi O L) => Iindex Searches L for an element equal to O. Yields the 0-based index of the first match found, or nil if O is not equal to any top-level element in L. Case insensitive. See member. (findq O L) => Iindex Searches L for an element eq to O. Yields the 0-based index of the first match found, or nil if O is not eq to any top-level element in L. See memberq. (findu O L) => Iindex Searches L for an element equal to O. Yields the 0-based index of the first match found, or nil if O is not equal to any top-level element in L. Case insensitive. Strings should be UTF-8 Unicode. See member. (findwindow Stitle [Sclass]) => Lhwnds [StdLib] Yields a list of handles to all visible windows which' titles match Stitle. Stitle may contain wild-cards. (findwindowex Stitle [Sclass]) => Lhwnds [StdLib] Yields a list of handles to all visible windows which' titles match Stitle. Stitle may NOT contain wild-cards. Case is significant. (fjpginfo Sfname) => Lsize [ImageLib] Yields the dimensions of a JPEG-file as a list (Iwidth Iheight). (fjpginfoheader Sfname) => Sjpginfoheader [ImageLib] Yields the jpeg info header stored in jpg-file Sfname. See fbmpinfoheader. (flatten L) => Lflat [StdLib] Yields a new, flattened list from L. (flen Sfilename) => Nfilelen Yields the length in bytes of file Sfilename. (float2int F) => I Yields an int representation of F, when F is treated as a signed int. See int2float, round, trunc, uint2float, float2uint. (float2uint F) => I Yields an int representation of F, when F is treated as an unsigned int. See int2float, round, trunc, uint2float, float2int. (floatp O) => B Yields true if O is a float; yields nil otherwise. See nullp, pairp, intp, stringp, atomp, numberp, reservedp, procp, externalp, arrayp. (floats2arr Sfloats) => ARRfloats Yields a new array of floats from the byte string of IEEE754 single-precision format floats in Sfloats. See arr2floats, bmp2floats. (floor N) => I Rounds N towards negative infinity, i.e. yields the greatest integer not greater than N. See ceil, round, trunc. (flushstdout) => ok Flushes stdout. This doesn't work on consoles, since console output isn't buffered. Yields nil on error, but does not signal an error. (fmod N1 N2) => N Yields the remainder of the division N1/N2, such that (+ (* (/ N1 N2) N2) (fmod N1 N2)) equals N1. (fmove Ssource Sdest) => B Moves the file Ssource to Sdest. Yields nil on error; does not raise an exception. Overwrites Sdest if it exists. See fempty, fcopy, fdel. (force Odelayed) => O [StreamLib] Yields the evaluated value of Odelayed, which should be the result of the delay function. (foreach Cclosure L) => ok [Syntactic sugar] Applies the 1-argument function Cclosure to each element in L. See while. (format Sformat Largs) => S Yields a new string formatted using Sformat and the arguments in Largs, which can be of type . The Sformat string should be on standard C printf format, with the addition that '¤' can be substituted for '%'. The Sformat string will be modified by replacing any '¤' with '%'. (formatex Nnum Inofdec Stsep Sdsep) => Snum [StdLib] Formats Nnum with given number of decimals, thousands and decimal separators. (fownerset Sfname Scomputer Sowner) => B Sets the owner of file Sfname to the SID corresponding to Sowner. The SID is retreived from Scomputer. This requires the Restore or TakeOwnership privilege to be enabled. Yields nil on error; does not raise an exception. See privenable, fsecremove, fcopybup. (fpnginfo Sfname) => Lsize [ImageLib] Yields the dimensions of a PNG-file as a list (Iwidth Iheight). (fread Sfilename [Istart Inof]) => S Yields the contents of file Sfilename as a new string. Optional Istart and Inof is used to specify how many bytes to skip before reading, and how many bytes to read after that. Inof may be nil, in which case the rest of the file is read. (free EXTmalloc) => Bok Frees (deallocates) memory block EXTmalloc, which should have been allocated with the malloc function. Yields nil on failure. See malloc, str2mem, mem2str. (freeconsole) => ok Frees (destroys) the Lizp process console. Yields nil on error. (freelibrary Hmodule) => Bok Unloads the module represented by Hmodule. Yields nil on failure. See loadlibrary, getprocaddress. (fround N) => F Rounds N to the nearest integer, with fractional halves away from zero. The rounded integer value is returned as a float. (fround 0.5) => 1.0; (fround -0.5) => -1.0; (fround 1.5) => 2.0; (fround -1.5) => -2.0. See round, floor, ceil, trunc. (fsecremove Sfname) => B Removes all DACL security information from file Sfname, and resets all file attributes to normal. This requires the Restore privilege to be enabled. Yields nil on error; does not raise an exception. See privenable, fcopybup. (ftreesize Spath) => Fsize Yields the size in KB of the entire tree specified by Spath, which can contain wildcards. The number can be converted to bytes by multiplying with 1024. Yields nil on error; does not raise an exception. (fwrite Sfilename S) => ok Appends S to file Sfilename, which is created if necessary. (gc) => ok [Hard-coded] Immediately performs a full garbage collection. See gcgen. (gcclock) => Fsecs Yields the number of seconds spent by the Lizp thread in GC since the last reset. See gc, lizpclock, clock. (gcdisable) => ok Disables garbage collection. Yields nil if already disabled. See gcenable, gcstatus. (gcenable) => ok Enables garbage collection. Yields nil if already enabled. See gcdisable, gcstatus. (gcgen) => ok Immediately performs a generational garbage collection. See gc. (gcstatus) => Bon Yields nil if garbage collection is disabled. See gcdisable, gcenable. (get822body Smail) => Sbody [MimeLib] Extracts the body part of a RFC822 message. Equivalent to (cadr (split822 Smail)). (get822header Shdrs Sheadername) => Shdrbody [MimeLib] Yields a RFC822 header body corresponding to the given header name, or nil if no such header is found in Shdrs. Use the get822headers or split822 functions to get the Shdrs string from a RFC822 message. (get822headers Smail) => Shdrs [MimeLib] Extracts the header part of a RFC822 message. Equivalent to (car (split822 Smail)). (getactivewindow) => Hwnd Yields a handle to active window. (getclientrect Hwindow) => Lrect Yields the specified window's client area size and position as a list (Ixpos Iypos Iwidth Iheight). (getclipboardformats) => Lfmtnames Yields all formats on the Windows Clipboard, if any, as a list of strings. Yields nil on error or if no data is on the clipboard; does not signal an error. (getclipboardrtf) => S Yields RTF text on the Windows Clipboard, if any. Yields nil on error or if no RTF text is on the clipboard; does not signal an error. (getclipboardrtftext) => S Yields RTF as text on the Windows Clipboard, if any. Yields nil on error or if no RTF text is on the clipboard; does not signal an error. (getclipboardtext) => S Yields text on the Windows Clipboard, if any. Yields nil on error or if no text is on the clipboard; does not signal an error. (getclipboardtextw) => S Yields unicode text on the Windows Clipboard, if any. Yields nil on error or if no unicode text is on the clipboard; does not signal an error. (getconsolewindow) => Hwnd Yields a handle to the Lizp console. See getguiwindow, getoutputwindow, getinputwindow, getstatuswindow. (getdesktopwindow) => Hwnd Yields a handle to desktop window. (getenvblock) => Sblock Yields the current process' environment block, which is a string on the form "name1=val1%00name2=val2%00%00". The name/value pairs are sorted on name. (getenvvar Svarname) => S Yields the string value of environment variable Svarname, or nil if Svarname doesn't exist in the current process environment. (getfocus) => Hwnd Yields a handle to the window that has the keyboard focus, if the window is associated with the calling thread's message queue. (getforegroundwindow) => Hwnd Yields a handle to foreground window. (getguiwindow) => Hwnd Yields a handle to the hidden Lizp GUI window. See getconsolewindow. (gethostbyaddr Sipaddr) => Shostname Yields the host name for the ip address Sipaddr. Yields nil on error, but does not signal an error. NOTE: This function may block for several seconds. See gethostbyname. (gethostbyname Shost) => Saddress Yields the IP address for Shost on dotted form. Yields nil on error, but does not signal an error. See gethostbyaddr. (gethostname) => Sname Yields the standard host name for the local machine. Yields nil on error, but does not signal an error. See gethostbyname. (geticoncolor Hicon) => HBMPcolor Yields a Win32 bitmap handle corresponding to the given icon's color bitmap. (geticonmask Hicon) => HBMPmask Yields a Win32 bitmap handle corresponding to the given icon's mask bitmap. (getimagebits Himage Ixpos Iypos Iwidth Iheight) => Simage Yields the specified area of Himage as a 24-bit RGB top-down bitmap. Every scan line is zero-padded to end on 4-byte boundary. (getimagehdc Himage) => Hdc Yields a handle to the specified image's device context. (getinputwindow) => Hwnd Yields a handle to the Lizp console input window. See getguiwindow, getconsolewindow, getoutputwindow, getstatuswindow. (getoutputwindow) => Hwnd Yields a handle to the Lizp console output window. See getguiwindow, getconsolewindow, getinputwindow, getstatuswindow. (getparentwindow Hwindow) => Hparent Yields the parent window to Hwindow, or nil if Hwindow has no parent. (getprinter) => Hprinter [Form 1] (getprinter Hownerwnd) => Hprinter [Form 2] Form 1: Yields a handle to the default printer, or nil on error. Form 2: Display a printer dialog box, and yields the printer selected by the user, or nil if the user cancels. See startdoc, enddoc, startpage, endpage, printbox, createfont, selectfont. (getprintermargins Hprinter) => ok Yields a list of the width and height of the left and top non-printable areas for printer Hprinter, in mm/10. See getprinterpage, getprinter. (getprinterpage Hprinter) => ok Yields a list of the width and height of the physical page for printer Hprinter, in mm/10. See getprintermargins, getprinter. (getprinterres Hprinter) => ok Yields a list of the width and height of 1 physical device point in mm/10, followed by the horisontal and vertical resolution i dpi. See getprintermargins, getprinter. (getprocaddress Hmodule Sprocname) => EXTfarproc Yields the external address of function Sprocname in module Hmodule. Yields nil on failure. See loadlibrary, freelibrary. (getstatuswindow) => Hwnd Yields a handle to the Lizp console status window. See getguiwindow, getconsolewindow, getinputwindow, getoutputwindow. (gettype O) => Ltypeinfo Yields type information for object O. The result is a list which first element is one of the atoms (unassigned reserved proc macro atom string pair array int float external handle hdc hfont socket hwnd lwnd lmenu hicon dirhandle extended bcentry env), or nil, or an integer representing un unknown primary type. The rest of the elements, if any, depend on the primary type. Primary type 'external' is followed by two integers representing the object's subtype and value (the "extra" and "external" fields). (getval2 Asymbol) => Oval2 Yields the optional value (val2) of Asymbol. See putval2. (getwindowbitmap Hwindow Ixpos Iypos Iwidth Iheight [Bfull]) => Simage Yields the specified area of Hwindow as a 24-bit RGB top-down bitmap. Every scan line is zero-padded to end on 4-byte boundary. If optional Bfull is non-nil, the source is the entire window including borders and title bar, instead of just the client area. (getwindowbmp Hwnd [Ix Iy Iw Ih]) => Sbmp [ImageLib] Yields the client area of Hwnd as a bitmap (including file and info headers). (getwindowbmpfull Hwnd [Ix Iy Iw Ih]) => Sbmp [ImageLib] Yields the full window area of Hwnd as a bitmap (including file and info headers). (getwindowclass Hwindow) => S Yields the specified window's class name. (getwindowexstyle Hwindow) => Istyle Yields the specified window's extended style attribute. The numeric constants can be found in winuser.h. See setwindowexstyle, setwindowstyle, getwindowstyle. (getwindowinfo Hwindow) => Linfo Yields the specified window's state as a list (LrcWindow LrcClient LrcTitleBar Istyle IexStyle Bactive IborderW IborderY). See getwindowrect, getclientrect. (getwindowprocessid Hwindow) => Ipid Yields the process id of the process that created Hwindow. (getwindowrect Hwindow) => Lrect Yields the specified window's size and position as a list (Ixpos Iypos Iwidth Iheight) in screen coordinates relative to the upper left corner. (getwindowstate Hwindow) => Astate Yields the specified window's show state as one of the atoms . (getwindowstyle Hwindow) => Istyle Yields the specified window's style attribute. The numeric constants can be found in winuser.h. See setwindowexstyle, setwindowstyle, getwindowexstyle. (getwindowtaborder Hwindow) => Itaborder Yields the specified window's taborder. (getwindowtext Hwindow) => S Yields the specified window's text attribute. (getwindowtextlen Hwindow) > Ilen Yields the text length of Hwindow. (gifinfo Sgif) => Lsize [ImageLib] Yields the dimensions of the GIF image Sgif as a list (Iwidth Iheight). (goto Ilabel) [Special form] Transfers to the execution point specified by Ilabel, 0<=Ilabel<=1023. See label. (guimsgloop) => ok Starts the GUI message loop. Never returns (blocks indefinitely). (handle2int H) => Ihandle Yields the OS integer corresponding to the Lizp handle object H. (hashconstruct Isize) => HT [HashLib] Yields a new, empty hash table optimized for a maximum of Isize elements. (hashconstruct8 Isize) > Shashtable8 Yields a new hashtable8 with size at least Isize. See hashinsert8, hashfind8. (hashfind HT Skey) => Pelem [HashLib] Searches for an element in hash table HT with key Skey and yields a pair (Skey . Oval) if found; yields nil if no element with key Skey is found. (hashfind8 Shashtable8 Skey8) > Ival Yields the value for Skey8, or nil if Skey8 can't be found. See hashconstruct8, hashinsert8. (hashinsert HT Skey Oval Bupdate) => B [HashLib] Inserts a new element with key Skey, value Oval into the hash table HT. If an element with key Skey already exists and Bupdate is non-nil, the existing element's value is updated to Oval. Yields the pair (Skey . Oval) whether the element already existed or not. (hashinsert8 Shashtable8 Skey8 Ival) > Bok Inserts Skey8/Ival into Shashtable8 if Skey8 doesn't exist; updates val otherwise. Yields nil if the table is full and Skey8 doesn't exist. See hashconstruct8, hashfind8. (hashremove HT Skey) => Bremoved [HashLib] Removes the element in hash table HT with key Skey. Yields the removed (Skey . Oval) pair, or nil if the key was not found. (hashval S) => Ihashval Yields a 32-bit hash value for S, using a variant of Jenkin's algorithm. (hashval4 I) => Ihashval Yields a 32-bit hash value for I using a variant of Wang's algorithm. (help [Afunc]) => ok Prints every primitive function and special form to the console. If Afunc is given and equals the name of a primitive function, that function's help text is printed to the console. Otherwise, if Afunc contains wildcards, every primitive function and special form matching Afunc is printed to the console. See helplist. (helplist [Afunc]) => Shelptext [StdLib] Yields the help text associated with Afunc, or a list of every function of which name Afunc is a substring if Afunc doesn't exactly match a function name. Yields a list of every function if Afunc is omitted. (hex2dec Shex) => Idec [StdLib] Yields the integer represented by Shex when interpreted as a number in base 16. Equivalent to (str2dec Shex 16). (hex2list Shexstr) => Lints [ImageLib] Yields a list of integers corresponding to the byte values specified with 2 hex digits per byte in Shexstr. See list2hex, strhex, strdehex. (hsl2hsv Nh Ns Nl) => (Nh Ns Nv) [ImageLib] Yields the HSV components of the colour represented by (Nh Ns Nl). See hsv2hsl. (hsl2rgb Nh Ns Nl) => (Ir Ig Ib) [ImageLib] Yields the RGB components of the colour represented by (Nh Ns Nl). See rgb2hsl. (hsv2hsl Nh Ns Nv) => (Nh Ns Nl) [ImageLib] Yields the HSL components of the colour represented by (Nh Ns Nv). See hsl2hsv. (hsv2rgb Nh Ns Nv) => (Ir Ig Ib) [ImageLib] Yields the RGB components of the colour represented by (Nh Ns Nv). See rgb2hsv. (hwnd2dlgid Hwindow) => Idlgid Yields the specified control's dialog id. (i2uf I) => F [MathLib] Parses I as an unsigned integer and yields the value as a (positive) float. (id O) => O [StdLib] The identity function. Yields O. (if Opredicate Oconsequent [Oalternative]) => O [Special form] If Opredicate evaluates to non-nil, Oconsequent is evaluated and returned; Oalternative is not evaluated. If Opredicate evaluates to nil, Oalternative (or nil if not provided) is evaluated and returned; Oconsequent is not evaluated. See cond, or, and, not. (imagebmp Himg IdestX IdestY IdestW IdestH IsrcX IsrcY IsrcW IsrcH Sbits Sbmpinfo) => ok Bitblts the bitmap represented by Sbits and Sbmpinfo to Himg. Positive x is right; positive y is down. The widths and heights can be nil or 0, in which case the actual printer and image sizes are used. (imagebuffer Himage Bon) => B Sets image buffering mode for Himage to on if Bon is non-nil; sets the mode to off if Bon is nil. With buffering on, drawing operations are buffered and not shown on the image until the imageredraw function is invoked. See imageredraw. (imageclear Himage Lrgb) => B Fills Himage with background colour Lrgb. (imagedot Himage Lxy Lrgbt) => B Plots a dot on Himage, using coordinates, colours and size from Lxy and Lrgbt. (imageellipse Himage Lx1y1x2y2 Lrgbt Lrgb) => B Plots an ellipse on Himage, using coordinates, colours and size from Lx1y1x2y2 and Lrgbt. Lrgb specifies the fill colour; use nil for hollow. (imageline Himage Lx1y1x2y2 Lrgbt) => B Plots a line on Himage, using coordinates, colours and size from Lx1y1x2y2 and Lrgbt. (imagepie Himage Lx1y1x2y2x3y3x4y4 Lrgbt Lrgb) => B Plots a pie on Himage, using coordinates, colours and size from Lx1y1x2y2x3y3x4y4 and Lrgbt. Lrgb specifies the fill colour; use nil for hollow. (imagerect Himage Lx1y1x2y2 Lrgbt Lrgb) => B Plots a rectangle on Himage, using coordinates, colours and size from Lx1y1x2y2 and Lrgbt. Lrgb specifies the fill colour; use nil for hollow. (imageredraw Himage) => B Redraws image Himage from an internal buffer. See imagebuffer. (imagexor Himage Bon) => B Sets the foreground mix mode for Himage to XOR if Bon is non-nil; sets the mode to normal COPYPEN if Bon is nil. (imgtype Simg) => Atype [ImageLib] Yields one of the atoms (png gif jpg bmp) or nil if the image type of Simg cannot be determined. (inc Ovar) => Inewval [Mutating] Atomically rebinds the variable Ovar evaluates to to its old value plus 1. Yields the new, increased value. See dec, compareexchange. (incmod Ovar Imod) => Inewval [Mutating] Atomically rebinds the variable Ovar evaluates to to its old value plus 1 mod Imod. Yields the new, increased value. See dec, compareexchange. (inputbox Scaption Sdeftext Howner [Hicon]) => S [StdLib] Displays an inputbox and yields the entered text value, or nil if the user aborts. Howner can be nil, in which case the input box has no owner. (int2float I) => F Yields a float representation of I, when I is treated as a signed int. See uint2float, round, trunc, float2uint, float2int. (int2handle Ihandle Atype) => H Yields a Lizp handle of type Atype from the given OS integer value. The following constants are defined for the handle type: HANDLE SOCKET HWND LMENU HICON DIRHANDLE LWND HDC HFONT Yields the Lizp handle object. (intersection L1 L2) => L [StdLib] Yields a new list with every element from L1 which is also a member of L2. See union, complement. (intp O) => B Yields true if O is an integer; yields nil otherwise. See nullp, pairp, atomp, stringp, floatp, numberp, reservedp, procp, externalp, arrayp. (ints2arr Sints) => ARRints Yields a new array of ints from the byte string of 4-byte ints in Sints. See arr2ints. (ipchksum S) => Ichecksum Yields the Mike Muuss IP checksum for string S, as used in the original ping program from 1983 on RFC 792 ICMP headers. See tcpclose, ipsocket, ipchksum, ipsendto, ipreadfrom. (ipreadfrom Hsocket Inofbytes [Ntimeout]) => (Sdata Sclient) Reads one (1) datagram from ip socket Hsocket and yields the result as a string, together with the name (ip address) of the remote endpoint. Ntimeout specifies the number of seconds to wait for the incoming packet. The ipreadfrom function will read at most Inofbytes bytes; excess bytes are discarded. If no data is received before Ntimeout seconds, nil is returned. If the socket is reset or an error occurs nil is returned. In all other cases as much data as was read is returned. Ntimeout defaults to 5 seconds. The timeout value can be nil which specifies infinite time-out. Inofbytes can be nil which specifies all bytes in the datagram. See ipsocket, ipclose, ipchksum, ipsendto. (ipsendto Hsocket Sdata Shost) => Hsocket Writes Sdata as a datagram to host Shost port Iport using socket Hsocket. Yields Hsocket on success. Yields nil on error, but does not signal an error. See ipsocket, ipclose, ipchksum, ipreadfrom. (ipsocket Iproto) => Hsocket Yields a raw ip socket for protocol Iproto (eg 1 for ICMP). Yields nil on error, but does not signal an error. See ipclose, ipchksum, ipsendto, ipreadfrom. (ir Ifrom Ito) => Lintrange [StdLib] Yields a new list of integers from Ifrom to Ito, both inclusive. (ir I I) => (I). (ir I (1- I)) => nil. (isansi Oansi) > Bansi Yields non-nil if every string in Oansi is a valid 1252 string. (isinf F) > B Yields non-nil if F is a IEEE754 double-precision Inf bit pattern. See isnan. (isnan F) > B Yields non-nil if F is a IEEE754 double-precision NaN bit pattern. See isinf. (isprint7 S) => B [StdLib] Yields non-nil if every byte in S is greater than 31 and less than 127. (isrdpsession) => B [StdLib] Yields non-nil if the current Lizp process is running in a RDP session. (isremotecontrol) => B Yields non-nil if the current session is remotely controlled. See isremotesession. (isremotesession) => B Yields non-nil if the calling process is associated with a Terminal Services client session. See isremotecontrol. (isutf8 Outf8) > Butf8 Yields non-nil if every string in Outf8 is a valid UTF-8 string. (iswindow O) => B Yields true if O is a handle to a Win32 window; yields nil otherwise. (iswindowenabled O) => B Yields true if O is a handle to an enabled Win32 window; yields nil otherwise. (iswindowvisible Hwindow) => Bvisible Yields non-nil if the specified window and all its ancestors have the WS_VISBLE style. (iswindowvisible2 Hwindow) => Bvisible Yields non-nil if the specified window is visible and fully unobscured. (fjpginfo Sjpg) => Lsize [ImageLib] Yields the dimensions of the JPEG image Sjpg as a list (Iwidth Iheight). (json2lzp Sjson) => Ojzp [JsonLib] Parses Sjson as a JSON object and yields a new corresponding Lizp4 object on jzp form. This is possible for all well-formed JSON object strings; jzp is a subset of Lizp4. Yields nil if Sjson can not be parsed as a well-formed JSON object string. See lzp2json, jzp2lzp, lzp2jzp. (jzp2lzp O) => Olzp [JsonLib] Yields a (possibly new) object from O, with the effects of the lzp2jsp function reversed if applicable. See lzp2jzp, lzp2jzp, json2lzp. (keydown Ivcode Bextended) > Bok Simulates a key down event corresponding to the given virtual key code. (keystate Ivcode) > Bdown Yields non-nil if the key represented by the virtual key code Ivcode is down. (keystate2 Ivcode) > Bpressed Yields non-nil if the key represented by the virtual key code Ivcode was pressed since the last call to this function; yields nil otherwise. (keydown Ivcode Bextended) > Bok Simulates a key up event corresponding to the given virtual key code. (killall) => Inof [StdLib] Kills all runnable Lizp threads except thread 1 and the current one. Yields the number of killed threads. See threadstate, threadeval, threadid, threadlist. (killprocess Ipid) => B Terminates the process identified by Ipid. The current security context must allow the process to be opened with full access (fx being the owner or having the Debug privilege enabled). Yields nil on error, but does not signal an error. (killprocess2 Hprocess) => B Terminates the process identified by handle Hprocess. The current security context must allow the process to be opened with full access (fx being the owner or having the Debug privilege enabled). Yields nil on error, but does not signal an error. (l4p2builddist ItoCallAc Inls Imac ARRleft NwidthL NwidthXL NwidthR NwidthXR In Iack) > Bok Special L4P2 function. (l4p2builddistc ItoCallAc Imac ARRleft NwidthL NwidthXL In Iack) > Bok Special L4P2 function. (l4p2builddistl ItoCallAc Imac ARRleft NwidthL NwidthXL In Iack) > Bok Special L4P2 function. (l4p2builddistl2 ItoCallAc Imac ARRleft NwidthL NwidthXL Nwf In Iack Nwstop) > Bok Special L4P2 function. (l4p2builddistl3 ItoCallAc Imac ARRleft Ndl In) > Bok Special L4P2 function. (l4p2builddistr ItoCallAc Imac ARRleft NwidthLo NwidthHi In) > Bok Special L4P2 function. (l4p2doacts NackA NackB NackC NackD ARRdists ARRcom ARRom Nmb ItoCall In) > Bok Special L4P2 function. (l4p3calcEv1 Ls1 Ls2 Ir1 Ir2 Nkkk) > (ev1 -ev2) Special L4P3 function. (l4p3calcEv1NB Ls1 Ls2 Ir1 Ir2 Ikkk ARRrankM ARRbetM Npot) > (ev1 -ev2) Special L4P3 function. (l4p3calcStrat1b As1s Ir2 Nkkk) > Lstrats Special L4P3 function. (l4p3calcStrat1bRev As2s Ir1 Nkkk) > Lstrats Special L4P3 function. (l4p3init) > Bok Special L4P3 function. (l4p3keepBestStrats Lss) > LssBest Special L4P3 function. (l4p3pbfsEv As1s Nkkk) > (Fev1 . Fev2) Special L4P3 function. (l4p3pbfsEvRev As2s Nkkk) > (Fev1 . Fev2) Special L4P3 function. (lab2rgb Fl Fa Fb) > (Ir Ig Ib) Yields the RGB coordinates corresponding to the given L*ab colour. 0<=Fl<=100, -86.185<=Fa<=98.255, -107.864<=Fb<=94.483. See rgb2lab. (label Ilabel) [Special form] Stores the current execution point in label Ilabel, 0<=Ilabel<=1023. See goto. (lambda (Avar*) Oexp*) => Cclosure [Special form] Creates a new function with the caller's environment as parent, with formal parameters Avar* and body Oexp*. Neither Avar* nor Oexp* are evaluated. See set, define, let, letrec. (lambda_envless (Avar*) Oexp*) => Cclosure [Special form] Creates a new function with the caller's environment as parent, with formal parameters Avar* and body Oexp*. Differs from normal lambda in that the created function's parent environment might be destroyed. This implies that the new function must be called only when the parent (creating) function is still active, or it must use only local and global variabel references. Neither Avar* nor Oexp* are evaluated. See set, define, let, letrec. (last L) => Olast Yields the last element in list L. (lbadditem Hlistbox Sitem) => Iindex Adds item string Sitem to listbox Hlistbox. Yields the index of the new item. (lbadditemunique Hlistbox Sitem Idata) => Iindex Adds item string Sitem to listbox Hlistbox, unless a similar item already exists. Yields the index of the new item, or nil if the item existed. (lbdelall Hlistbox) => ok Deletes all items in listbox Hlistbox. (lbdelthis Hlistbox Iindex) => ok Deletes item Iindex in listbox Hlistbox. (lbfocusthis Hlistbox Iindex) => ok Focuses item Iindex in listbox Hlistbox. (lbgetfocusedindex Hlistbox) => Iindex Yields the index of the focused item in listbox Hlistbox. (lbgetitemdata Hlistbox Iindex) => Idata Yields the integer associated with item Iindex in listbox Hlistbox. (lbgetselectedindex Hlistbox) => Lindices Yields a list of all selected item indices in listbox Hlistbox. (lbgetthis Hlistbox Iindex) => Sitem Yields item string Iindex in listbox Hlistbox. (lbinsertitem Hlistbox Iindex Sitem) => Iindex Inserts item string Sitem into listbox Hlistbox at position Iindex. Yields the index of the new item. (lbnofselected Hlistbox) => Inof Yields number of selected items in listbox Hlistbox. (lbnoftotal Hlistbox) => Inof Yields number of items in listbox Hlistbox. (lbselectthis Hlistbox Iindex Bselect) => ok Selects (if Bselect is non-nil) or unselects item Iindex in listbox Hlistbox. (lbsetitemdata Hlistbox Iindex Idata) => Idata Associates Idata with item Iindex in listbox Hlistbox. Yields Idata. (length L) => I Yields the length of (number of elements in) L. (let ((Avar Oval)*) Oexp*) => O [Special form] [Syntactic sugar] Locally binds Oval to Avar and evaluates Oexp* as a sequence. Avar is not evaluated. The scope of Avar is all the expressions of Oexp*. See letrec, set, define, lambda. (letrec ((Avar Oval)*) Oexp*) => O [Special form] [Syntactic sugar] Locally binds Oval to Avar and evaluates Oexp* as a sequence. Avar is not evaluated. The scope of Avar is all the expressions of Oexp*, as well as of the ((Avar Oval)*) expression, in which the Ovals are bound sequentially from left to right. See let, set, define, lambda. (lineout Hprinter Ix1 Iy1 Ix2 Iy2 Ir Ig Ib It) => ok Prints a line using the given coordinates, colours and thickness values to the device context represented by Hprinter. See textbox, createfont, getprinter, eanout, bmpout. (list O*) => L Yields a new list consisting of the arguments in given order. See cons. (list2arr L) => ARR Yields a new array ARR, constructed from every element in L in that order. See arrcons, arrget, arrlen, arrset, arr2list. (list2hex Lints) => Shexstr [ImageLib] Yields a new string representing S with 2 hex digits for every byte value in Lints. See hex2list, strhex, strdehex. (list2str L Lelemseps) => S Yields a string created by appending the elements in L using the first string in Lelemseps as element separator. If an element in L is a list, each of its elements is appended, using the second element in Lelemseps as element separator, and so on recursively. If, at any nested level, Lelemseps is nil, nothing separates the elements in the resulting string from each other. See str2list. (list2string L Lelemseps) => S [StdLib] As list2str, except elements deeper than Lelemseps are stringified with sprintsimple instead of the mkstring-like internal function L_ObjString. See list2str. (lizpclock) => Fsecs Yields the total number of seconds spent by the Lizp thread since Lizp started. The value is retreived from the operating system's performance counters. See gcclock, clock. (lmp2dec Slmp) => Sdec [MathLib] Parses Slmp as an unsigned radix 256 integer string; yields an unsigned radix 10 integer string. See dec2lmp. (lmp< Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is less than unsigned radix 256 integer Sv. Yields nil otherwise. (lmp<> Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is not equal to unsigned radix 256 integer Sv. Yields nil otherwise. (lmp= Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is equal to unsigned radix 256 integer Sv. Yields nil otherwise. (lmp> Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is greater than unsigned radix 256 integer Sv. Yields nil otherwise. (lmpadd Su Sv) => Ssum [MathLib] Adds the unsigned radix 256 integers Su and Sv, yielding the unsigned result. (lmpbitlen Slmp) => Inbits [MathLib] [Macro] Yields the bit length of Slmp as a multiple of 8. (lmpbitshift Slmp Inof) => Sshifted [MathLib] Yields the unsigned radix 256 integer Slmp shifted Inof bits to the right, or (-Inof) bits to the left if Inof<0. (lmpcompare Su Sv) => I [MathLib] Yields a negative integer if unsigned radix 256 integer Su is less than unsigned radix 256 integer Sv. Yields 0 if Su equals Sv. Yields a positive integer if Su is greater than Sv. (lmpdiv Su Sv [Iretval]) => Sq [MathLib] Divides the unsigned radix 256 integers Su and Sv, yielding the unsigned radix 256 quotient. Optional Iretval should be nil, 0, 1 or 2; 1 yields the unsigned radix 256 remainder; 2 yields the list (Sq Sr) where Sq is the quotient and Sr is the remainder. Iv should be positive and less than 256. (lmpdivs Su Iv [Iretval]) => Sq [MathLib] Divides the unsigned radix 256 integer Su with the integer Iv, yielding the unsigned radix 256 quotient. Optional Iretval should be nil, 0, 1 or 2; 1 yields the remainder as an integer; 2 yields the list (Sq Ir) where Sq is the quotient and Ir is the integer remainder. The result is not normalized. Iv should be positive and less than 256. (lmpeven Slmp) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Slmp is even. Yields nil otherwise. (lmphash4 S) => Ihash [MathLib] Yields a 4-byte (32-bit) integer from string S. (lmphashn S In) => Slmphash [MathLib] Yields an In-byte unsigned radix 256 integer Slmphash from S. In should be equal to or greater than 4. (lmpisprime Slmp) => B [MathLib] Yields true if unsigned radix 256 integer Slmp is prime according to a 20-pass Miller-Rabin probability test. The randinit function must be called before the first use of this function. (lmpmkprime Inbits) => Sprime [MathLib] Yields a random, prime (according to a 20-pass Miller-Rabin probability test), unsigned radix 256 integer with up to Inbits bits. The randinit function must be called before the first use of this function. (lmpmodpow Sbase Sexp Smod) => Smodpow [MathLib] Yields the unsigned radix 256 modular power (Sbase raised to Sexp) mod Smod. (lmpmodrand+ Smod) => Srandom [MathLib] Yields a pseudo-random unsigned radix 256 positive integer less than Smod. The randinit function must be called before the first use of this function. See randbits, randinit, lmprand, lmprand+. (lmpmul Su Sv) => Sprod [MathLib] Multiplies the unsigned radix 256 integers Su and Sv, yielding the unsigned result. (lmpmuls Su Iv) => Sprod [MathLib] Multiplies the unsigned radix 256 integer Su and the integer Iv, yielding the unsigned result. The result is not normalized. Iv should be nonnegative and less than 256. (lmpnof0bits Slmp) => Inof [MathLib] Yields the number of traling non-set bits in unsigned radix 256 integer Slmp. (lmpnormalize Su) => Sw [MathLib] Yields the unsigned radix 256 integer represented by Su as a new string with superflous leading 0-bytes removed. (lmpodd Slmp) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Slmp is odd. Yields nil otherwise. (lmppow Sbase Sexp) => Spow [MathLib] Yields the unsigned radix 256 power Sbase raised to Sexp. (lmprand Inbits) => Srandom [MathLib] Yields a pseudo-random unsigned radix 256 integer with at most Inbits bits. Inbits should be a multiple of 8. The randinit or randinit2 function must be called before the first use of this function. See randbits, randinit, randinit2, lmprand+, lmpmodrand+. (lmprand+ Inbits) => Srandom [MathLib] Yields a pseudo-random unsigned radix 256 positive integer with at most Inbits bits. Inbits should be a multiple of 8. The randinit function must be called before the first use of this function. See randbits, randinit, lmprand, lmpmodrand+. (lmpsub Su Sv) => Sdiff [MathLib] Subtracts the unsigned radix 256 integer Sv from Su, yielding the unsigned result. Raises an exception on underflow. (loadbitmap Sfname) => Hbitmap Yields a Win32 bitmap handle corresponding to the given bitmap file. (loadicon Sfname) => Hicon Yields a Win32 icon handle corresponding to the given icon file. (loadlibrary Smodule) => Hmodule Loads and yields the given module using the Win32 API-function LoadLibrary. Yields nil on failure. See freelibrary, getprocaddress. (lockwindowupdate Hwindow) => ok Disables or reenables drawing in window Hwindow. Only one window can be locked at a time. If Hwindow is nil, drawing is reenabled. (log N) => Nlog Yields the natural logarithm (base e) of N. N must be positive. (log10 N) => Nlog10 Yields the logarithm (base 10) of N. N must be positive. (log2 N) => Nlog2 Yields the logarithm (base 2) of N. N must be positive. (logonuser Susrname Sdomain Spwd Alogontype) => Htoken Logs on to the local computer with the specified credentials Susrname, Sdomain, Spwd. Sdomain may be nil if Susrname is in UPN format. Sdomain may be "." in which case the local account database is used for validation. Alogontype should be one of . (lumcontrast Nlum1 Nlum2) => Ncontrast [ImageLib] Yields the contrast (as defined by W3C) between the relative luminances Nlum1 and Nlum2. See rgblum. (lvdelallitems Hwindow) => ok Deletes all items from listview Hwindow. (lvdelcol Hwindow Icol) => ok Deletes column Icol from listview Hwindow. (lvdelitem Hwindow Iitem) => ok Delets item Iitem from listview Hwindow. (lvdeselectitem Hwindow Iitem) => ok De-selects item Iitem in listview Hwindow. (lvensurevisible Hwindow Iitem) => ok Ensures that item Iitem is visible in listview Hwindow. (lvfocusitem Hwindow Iitem) => ok Focuses item Iitem in listview Hwindow. (lvgetcachehint LVI) => Lrange Yields a list containing the Ifrom and Ito range to cache. LVI is received as the 4th argument to the action function for a listview window. (lvgetcolorder Hwindow Inofcols) => ARRcolpos Yields an array of column indices in the order they appear from left to right. (lvgetcolwidth Hwindow Icol) => Iwidth Yields the width of column Icol in pixels. (lvgetfocused Hwindow) => Iitem Yields the index of the currently focused item in listview Hwindow, or nil if none is focused. (lvgetitemcount Hwindow) => Inof Yields the number of items in listview Hwindow. (lvgetitemdata Hwindow Iitem) => Idata Retrieves the 32-bit value associated with item Iitem in listview Hwindow. (lvgetpagecount Hwindow) => Inof Yields the number of items fully visibible in one page of listview Hwindow. (lvgetselectedindex Hlistview) => Lindices Yields a list of all selected item indices in listview Hlistview. (lvgettop Hwindow) => Iitem Yields the index of the topmost visible item in listview Hwindow, or nil if none is visible. (lvinsertcol Hwindow Icol Stext Iwidth) => Icolindex Inserts a new column at index Icol in listview Hwindow. Yields the index of the new column, or nil on error. (lvitemget LVI Aattrib) => Ovalue Yields attribute Aattrib from listview item LVI. Aattrib should be one of mask, iItem, iSubItem, state, stateMask, pszText, cchTextMax, iImage, lParam. LVI is received as the 4th argument to the action function for a listview window. (lvitemset LVI Aattrib Ovalue) => ok Sets attribute Aattrib in listview item LVI. Aattrib should be one of mask, iItem, iSubItem, state, stateMask, pszText, cchTextMax, iImage, lParam. LVI is received as the 4th argument to the action function for a listview window. (lvnofselected Hwindow) => Inof Yields the number of selected items in listview Hwindow. (lvnoftotal Hwindow) => Inof Yields the number of items in listview Hwindow. This function is equivalent to the lvgetitemcount function. (lvredrawitems Hwindow Ifirst Ilast) => ok Redraws all items from Ifirst to Ilast in listview Hwindow. (lvselectitem Hwindow Iitem) => ok Selects item Iitem in listview Hwindow. (lvsetcol Hwindow Icol Stext Iwidth) => Bok Changes the column at index Icol in listview Hwindow. (lvsetcolorder Hwindow ARRcolpos) => Bok Sets the column order of a listview. ARRcolpos should be an array of column indices in the order they should appear from left to right. (lvsetcolwidth Hwindow Icol Iwidth) => Bok Sets the width of column Icol to Iwidth pixels. (lvsetitemcount Hwindow Inof) => ok Sets the number of items in listview Hwindow. (lvsetitemdata Hwindow Iitem Idata) => ok Associates the 32-bit value Idata with item Iitem in listview Hwindow. (lvxcnget LVXCN Aattrib) => Ovalue Yields attribute Aattrib from listviewex comboex item LVXCN. Aattrib should be one of row, col, code, data. LVXCN is received as the 4th argument to the action function for a listview window processing a *combomessage notification. (lvxfccget LVXFCC Aattrib) => Ovalue Yields attribute Aattrib from listviewex comboex item LVXFCC. Aattrib should be one of row, col. LVXFCC is received as the 4th argument to the action function for a listview window processing a focuscellchange notification. (lvxgetcolwnd Hwindow Icol) => Hwnd Yields the window handle for the specified column's edit window. (lvxsetcoltype Hwindow Icol Atype) => Bok Sets the type of the specified column. Atype should be one of text, checkbox, comboex. (lzp2json Ojzp) => Sjson [JsonLib] Yields a new JSON object string from Ojzp, the latter which should be on jzp form. Not every Lizp4 expression is on jzp form; Lizp4 is a superset of jzp. Use the lzp2jzp function to convert Ojzp to jzp form if necessary. Signals an argument error if Ojzp is not on jzp form. See json2lzp, lzp2jzp, jzp2lzp. (lzp2jzp O) => Ojzp [JsonLib] Yields a (possibly new) object on jzp form from O, by replacing every non-pair car Ocar with the pair (Adummy . Ocar) recursively, where Adummy is the atom LIZP-CDR-3vwUoFuAX52. This ensures that the result is on jzp form (where every car is a pair). The operation can be reversed with the jzp2lzp function. See jzp2lzp, lzp2jzp, json2lzp. (makeart W H LimgFnames Inof SmagickExe Ntimeout Sfname [Nsw]) => Smres [ImageLib] Combines Inof parts from the image files given by LimgFnames to a WxH image with the help of ImageMagick, started by the path given in SmagickExe. Yields the ImageMagick result as a string, usually the empty string, or the resulting image if Sfname is f.x. "bmp3:-". Yields nil on timeout or error. W may be nil, in which case H should be a string which will determine the image's size; the image will contain at least 3 times as many pixels as there are bytes in H, and H will be encoded in the image using the bmpstegenc function. In this case, H is usually encrypted (f.x. with the encrypt function) and looks random. Optional Nsw specifies the seed width and defaults to 256 pixels. See bmpstegenc, bmpstegdec, encrypt, decrypt. (malloc Ilen) => EXTmalloc Allocates a memory block of size Ilen bytes and yields it as an external address. The memory block is not garbage collected, but freed on exceptions. Yields nil on failure. See free, str2mem, mem2str. (map Cclosure L1 L2) => Lres [StdLib] Yields a new list by applying Cclosure pairwise to the elements in L1 and L2. (map* Cclosure L1 L2) => Lres [StdLib] Yields a new list by applying Cclosure to all combinations of the elements in L1 and L2. (mapcar Cclosure L) => Lres [StdLib] Yields a new list with every element in L transformed by applying Cclosure. (matflatten ARR) => ARRflattened [MathLib] Equivalent to (list2arr (accumulate append nil (mapcar arr2list (arr2list ARR)))). (matid In) => ARRidmatrix [MathLib] Yields an In*In identity matrix as an array of rows, where each row is an array. (max N...) => N Yields the greatest (most positive) of N... See min. (md5 S) => S [MathLib] Yields the 32 char RFC 1321 MD5 hex digest of S. (md5 "") => "d41d8cd98f00b204e9800998ecf8427e". (md5 "a") => "0cc175b9c0f1b6a831c399e269772661". See md5digest. (md5digest S) => Sdigest [MathLib] Yields the 16-byte RFC 1321 MD5 digest of S. See md5. (mean Lnum) => N Yields the arithmetic mean of Lnum as a float. (meani Lnum) => I Yields the arithmetic mean of Lnum as an int. (median Lnum) => N Yields the median of Lnum. (mediani Lnum) => I Yields the median of Lnum as an int. (mem) => ok Prints object memory usage statistics to the console. See gc. (mem2str EXTaddr Ilen) => S Yields a byte string copy of the memory at the address contained in the car part of EXTaddr. If Ilen < 0, a zero-terminated string is presumed. See str2mem, malloc, free. (member O L) => L Searches L for an element equal to O. Yields the tail of L beginning with this match if found, or nil if O is not equal to any top-level element in L. See find. (memberIUA O L) => L [IUA] IUA version of member. (memberi O L) => L Searches L for an element equal to O. Yields the tail of L beginning with this match if found, or nil if O is not equal to any top-level element in L. Case insensitive. See find. (memberq O L) => L Searches L for an element eq to O. Yields the tail of L beginning with this match if found, or nil if O is not eq to any top-level element in L. See findq. (memberu O L) => L Searches L for an element equal to O. Yields the tail of L beginning with this match if found, or nil if O is not equal to any top-level element in L. Case insensitive. Strings should be UTF-8 Unicode. See find. (memberwild S Lwildstrs) => L [IUA] Searches Lwildstrs for an element equal to S. Yields the tail of Lwildstrs beginning with this match if found, or nil if S is not equal to any top-level element in Lwildstrs. Lwildstrs may contain wildcards, S may not. S and the members in Lwildstrs must be strings. See memberwild2. (memberwild2 Swild Lstrs) => L [IUA] Searches Lstrs for an element equal to Swild. Yields the tail of Lstrs beginning with this match if found, or nil if Swild is not equal to any top-level element in Lstrs. Swild may contain wildcards, Lstrs may not. Swild and the members in Lstrs must be strings. See memberwild. (memberwild2IUA Swild Lstrs) => L [IUA] IUA version of memberwild2. (memberwildIUA S Lwildstrs) => L [IUA] IUA version of memberwild. memo-proc (menugetcheck LMENU) => Bchecked Yields non-nil if menu item LMENU is checked; yields nil otherwise. (menusetcheck LMENU Bchecked) => ok Checks or unchecks menu item LMENU. Yields ok. (menutogglecheck LMENU) => Bchecked Toggles the check state of menu item LMENU. Yields non-nil if the new state is checked; yields nil otherwise. (mimedec822 Smail) => L [MimeLib] Decodes the content of a MIME-compliant RFC822 message (RFC 822, 1123, 1343, 1344, 1345, 1521, 1522). If the content can be parsed as a MIME message, it is returned as a list Lmsg (Scontent_type Sfilename Ocontents). Otherwise, Lmsg is the undecoded content as a byte string. If Scontent_type is "multipart", Ocontents is a list ("multipart" nil Lmsgs), where Lmsgs is a list of 0 or more Lmsg elements, recursively. Otherwise Ocontents is a byte string representing the decoded content. Sfilename is the Content-Type Name attribute or the Content-Disposition Filename attribute, or nil if none of these are found. (min N...) => N Yields the smallest (most negative) of N... See max. (mk822 Sreplyto Sfrom Sto Ssubject Sbody Aencoding Sctype [Sheaders]) => S822msg [SmtpLib] Yields a RFC 822-conformant message. Sreplyto, Sfrom and Sto should be proper 822-compliant e-mail addresses, f.x. (including the brackets) or "Eva Luator \(Kernel Inc\)" (including brackets, backslashes and quotation marks). Aencoding should be nil (no MIME encoding), the atom '8bit (no encoding), 'qp (quoted-printable) or 'b64 (base64). If Sbody is a list (see later), Aencoding should be a list of the same length. Sctype should be a MIME Content-Type string, such as text/plain, or nil if Aencoding is nil. Sbody may be a list, in which case it's interpreted as an inline body string followed by a list of attachment strings. If Sbody is a list, Sctype should be a list of the same length, where the first element is the Content-Type string and the rest are the attachment file names. (mk_tcp_client Sserver Iport Sid [Oerrval]) => Lfunctions [TcpLib] Yields a list of functions on the form (Creval Crconnect Crstatus Crdisconnect). The functions are used as in: (reval Oexp [Lconn [(Ntimeout1 Ntimeout2)] ]) (rconnect [Ntimeout]) (rstatus Lconn) (rdisconnect Lconn) where Lconn is the structure returned by the Crconnect function. The Crstatus function yields non-nil if Lconn is a valid connection. (mkatom O1 O*) => A Yields an atom by appending the textual representations of O1 and each O* in given order. O1 and O* must be of type . Yields nil if the resulting name is of zero length. See mkstring, list2str, str2list. (mkbitmapheader Iwidth Iheight) => Sbmpheader [ImageLib] Yields a bitmap file and info header for a 24-bit RGB bitmap of the given dimensions. Note that each scan line in a bitmap file must be padded with zeroes to end on a 4-byte boundary. The RGB pixel data (3 bytes per pixel) follows immediately after the header. See bmpinfoheader, bmpbits. (mkellipticrgn Ileft Itop Iright Ibottom) => Hregion Yields an elliptic window region. (mkevent Binit Bauto) => Cevent [StdLib] Yields a new event in the form of a closure. Binit specifies the initial event state; nil for non-signaled, true for signaled. Bauto specifies that as the event is signaled (by the signal command), it's automatically reset to non-signaled as soon all waiting threads have been released. If Bauto is nil, all waiting threads will be released, and the event will remain signaled until explicitly reset (by the reset command). Use (Cevent 'wait [Imillisecs]) to wait for an event to enter the signaled state. Nil is returned if the wait timed out. Use (Cevent 'waiteval Oexpr [Imillisecs]) to both evaluate Oexpr once and wait, with the guarantee that no event state transitions will be missed (even if caused by Oexpr). Commonly, here, Oexpr is on the form `(',mutex_rw 'release_write). Use (Cevent 'signal) to set the event's state to signaled. Use (Cevent 'pulse) to pulse the event, which is reset to non-signaled after exactly 1 waiting thread has been released. Use (Cevent 'reset) to reset the event's state to non-signaled. Use (Cevent 'test) to yield the event's state (nil corresponds to non-signaled). Use (Cevent 'clear) to initialize Cevent to its virgin state. Use (Cevent 'threads) to yield a list of waiting threads. (mkexternal Ival Itype) => EXTERNAL Yields an object of type EXTERNAL, subtype Itype of value Ival. (mkhwnd Ihwnd) => HWND Yields a handle object of type HWND from the given Win32 hwnd integer. (mklmenu Iid) => LMENU Yields a handle object of type LMENU from the given Lizp menu identifier. (mklwnd Ihwnd) => LWND Yields a handle object of type LWND from the given Win32 hwnd integer. (mkmacro Ctransfunc) => M Yields a new macro constructed from the transforming, 1-argument function Ctransfunc, which takes the original expression and should yield the transformed expression. (mkmenu Hwnd) => LMENU Yields the menu (which is created if necessary) of Hwnd, which is subclassed to handle Lizp menus. Hwnd must belong to the same process as the Lizp thread executing the mkmenu function. (mkmenuitem LMENU Ipos Sname Cactionfunc) => LMENU Creates a new menu item at position Ipos in parent menu LMENU. Cactionfunc should be nil or a 2-argument function, which will be called with the window (HWND) and menu (LMENU) handles as arguments whenever the menu item is clicked. If Sname is the string "-" a separator is created. (mkmutex) => Cmutex [StdLib] Yields a new mutex in the form of a 1-argument closure. Use (Cmutex 'acquire) to acquire the mutex. This will block until the mutex is released. Use (Cmutex 'try [Imillisecs]) to try to acquire the mutex within Imillisecs; this will yield non-nil if successful or nil otherwise. Use (Cmutex 'force [Imillisecs]) to acquire the mutex, forcefully after Imillisecs if necessary. Use (Cmutex 'release) to release it. Use (Cmutex 'test) to yield the current owning thread id, or nil of it's not acquired. Use (Cmutex 'count) to yield the current lock count (duplicate acquires by same thread). Use (Cmutex 'reset) to reset the mutex to non-signaled. Use (Cmutex 'threads) to yield a list of waiting threads. The mutex is reentrant; subsequent acquire commands by the owning thread will not block. (mkmutexrw) => Cmutexrw [StdLib] Yields a new read/write mutex in the form of a 1-argument closure. Use (Cmutexrw 'acquire_read) or (Cmutexrw 'acquire_write) to acquire the mutex. This will block until the mutex is released. Use (Cmutexrw 'try_read [Imillisecs]) or (Cmutexrw 'try_write [Imillisecs]) to try to acquire the mutex within Imillisecs; yields non-nil on success or nil otherwise. Use (Cmutexrw 'force_read [Imillisecs]) or (Cmutexrw 'force_write [Imillisecs]) to acquire the mutex within Imillisecs, forcefully after Imillisecs if necessary. Use (Cmutexrw 'release_read) or (Cmutexrw 'release_write) to release it. Use (Cmutexrw 'test) to yield a list of number of read- and write locks. Use (Cmutexrw 'reset) to reset the mutex to non-signaled. The mutex is non-reentrant; the second (Cmutexrw 'acquire_write) will block indefinitely even if called by the same thread as the first. (mkrectrgn Ileft Itop Iright Ibottom) => Hregion Yields a rectangular window region. (mkstr O*) => S [StdLib] As mkstring extended to handle lists. (mkstring O*) => S Yields a string by appending the textual representations of each O* in given order. (mkstring nil) => "" (mkstring 0.0) => "0" (mkstring 1.0) => "1" (mkstring (/ 1 3)) => "0.33333333333333" (mkstring 1 2 3) => "123" (mkstring '(1 2 3)) => "" (mkstring '(1 2 3) [[a] b c] 17) => "17" where 'n' is short for instance specific internal decimal numbers. Note: mkstring caps long lists and arrays (but not strings). (mkstring (arrcons 128 0)) => "" See mkstringsimple, mkatom, list2str, str2list, sprintsimple. (mkstringsimple O*) => S Yields a string by appending the textual representations of each O* in given order. mkstring simple differs from mkstring in that no type or instance data are given. (mkstringsimple nil) => "" (mkstringsimple 0.0) => "0" (mkstringsimple 1.0) => "1" (mkstringsimple (/ 1 3)) => "0.33333333333333" (mkstringsimple 1 2 3) => "123" (mkstringsimple '(1 2 3)) => "(1 2 3)" (mkstringsimple '(1 2 3) [[a] b c] 17) => "(1 2 3)[[a] b c]17" Note: mkstringsimple caps long lists and arrays (but not strings). (mkstringsimple (arrcons 128 0)) => "[0 0 0 0 0 0 0 0 ...]>" See mkstring, mkatom, list2str, str2list, sprintsimple. (mksubmenu LMENU Ipos Sname) => LMENU Creates a new popup menu at position Ipos in parent menu LMENU. (mkutf8 O) => Outf8 [StdLib] Yields a new object by converting each string in O to utf8 using (oa2u (ou2a O)), unless O is already utf8 (according to isutf8), in which case the original O is returned. See oa2u, ou2a, ansi2utf8, utf82ansi. (mkwindow Atype Howner Nx Ny Nwidth Nheight Scaption Cfunc [Iflags [Iexflags [Sclass]]]) => Hwindow Creates a new Lizp GUI window of type Atype. Cfunc should be a 4-argument closure, which will receive the arguments (Hwindow Amsgname Opar1 Opar2) for every window message sent to the new window. The type and format of Opar1 and Opar2 depend on the window type and message. Atype may be one of (generic dialog container text link edit medit redit button defbutton check radio group cmdlink image listview listviewex list combo comboex tab treeview). Rows in a listbox can be coloured and font formatted individualy, by setting the first char of the string to 1; chars 2,3,4 to the RGB values for the text colour (add 1 to each component); char 4 to the font size (add 1); char 5 to the font format (LSB 1..5 corresponding to prop bold italic strike underline; add 1). If LSB 6 (32) of char 5 is set, the row background is painted in a alternative colour. Yields a handle to the new window, or nil on error. (mod N1 N2) => I Yields the integer remainder of the division N1/N2, such that (+ (* (div N1 N2) N2) (mod N1 N2)) equals N1. (mode L) => Lmodes Yields the mode (most common element) of L as a list. The result is a one-element list if L is single mode. (money2num Smoney Scursymb Stsep Sdsep) => F Tries to parse Smoney as a money string with specified currency symbol and separators. Yields nil if the parsing fails. (mouseclick Ix Iy) => Inof Moves the mouse cursor to the given position (screen coordinates) and simulates a left click using SendInput. Restores the cursor back to its initial position. Yields the number of successfully inserted mouse events, which should be 2. (mouseclick2 Ix Iy) => Inof Moves the mouse cursor to the given position (screen coordinates) and simulates a left click using SendInput. Yields the number of successfully inserted mouse events, which should be 1. (mousedblclick Ix Iy) => Inof Moves the mouse cursor to the given position (screen coordinates) and simulates a double click using SendInput. Restores the cursor back to its initial position. Yields the number of successfully inserted mouse events, which should be 3. (mousedblclick2 Ix Iy) => Inof Moves the mouse cursor to the given position (screen coordinates) and simulates a double click using SendInput. Yields the number of successfully inserted mouse events, which should be 2. (mousehwheel I) => ok Queues a mouse horizontal wheel scroll (tilt) amount Iamnt (positive corresponds to right). (mouselbutton Bdown) => ok Queues a left-button 'down' (if Bdown is non-nil) or 'up' mouse event. (mousembutton Bdown) => ok Queues a middle-button 'down' (if Bdown is non-nil) or 'up' mouse event. (mousemove Ix Iy) => ok Moves the mouse cursor to the given position (screen coordinates) using SetCursorPos. (mousemove2 Ix Iy) => ok Moves the mouse cursor to the given position (screen coordinates) using mouse_event. (mousemove3 Ix Iy) => Inof Moves the mouse cursor to the given position (screen coordinates) using SendInput. Yields the number of successfully inserted mouse events, which should be 1. (mousepos) => Lxy Yields the coordinates of the cursor, or nil on error. (mouserbutton Bdown) => ok Queues a right-button 'down' (if Bdown is non-nil) or 'up' mouse event. (mouseshow Bshow) => Bok Shows (if Bshow is non-nil) or hides (if Bshow is nil) the cursor. (mousewheel Iamnt) => ok Queues a mouse wheel scroll amount Iamnt (+120 corresponds to a feel forward wheel click). (movewindow Hwindow Ix Iy Iw Ih) => Bok Moves and resizes Hwindow. See setwindowpos. (movingmean Lnum Ik) => Lmm Yields a new list moving means, each computed from Ik consecutive Lnum elements using overlapping sliding windows of size Ik. The resulting list has length (1+ (- (length Lnum) Ik)). (movingmeani Lnum Ik) => Lmm Yields a new list moving means, each computed from Ik consecutive Lnum elements using overlapping sliding windows of size Ik. Each average is rounded to the nearest int. The resulting list has length (1+ (- (length Lnum) Ik)). (mp* Su Sv) => Sprod Multiplies the unsigned radix 256 integers Su and Sv; yields the unsigned result. (mp+ Su Sv) => Ssum Adds the unsigned radix 256 integers Su and Sv; yields the unsigned result. (mp- Su Sv) => Sdiff Substracts the unsigned radix 256 integer Sv from Su; yields the unsigned result. (mp/ Su Sv) => Squot Divides the unsigned radix 256 integers Su and Sv; yields the unsigned result. (mp2n Smp) => N Yields the unsigned radix 256 integer string Smp as an int if the least significant 64 bits of Smp represents a number less than 4294967296 (unsigned). Yields an approximation of the least significant 64 bits of Smp as a float otherwise. See n2mp. (mp2str Smp Ibase) => S Parses Smp as an unsigned radix 256 integer string; yields an unsigned radix Ibase (2<=Ibase<=64) integer string. See str2mp. (mp< Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is less than unsigned radix 256 integer Sv. Yields nil otherwise. (mp<= Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is less than or equal to unsigned radix 256 integer Sv. Yields nil otherwise. (mp<> Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is not equal to unsigned radix 256 integer Sv. Yields nil otherwise. (mp= Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is equal to unsigned radix 256 integer Sv. Yields nil otherwise. (mp> Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is greater than unsigned radix 256 integer Sv. Yields nil otherwise. (mp>= Su Sv) => B [MathLib] [Macro] Yields non-nil if unsigned radix 256 integer Su is greater than or equal to unsigned radix 256 integer Sv. Yields nil otherwise. (mpand Su Sv) => Sand Calculates the bitwise AND of the unsigned radix 256 integers Su and Sv; yields the unsigned result. (mpbitshift Smp In) => Sshifted Yields the unsigned radix 256 integer Slmp shifted Inof bits to the right, or (-Inof) bits to the left if Inof<0. (mpcompare Su Sv) => I Yields a negative integer if unsigned radix 256 integer Su is less than unsigned radix 256 integer Sv. Yields 0 if Su equals Sv. Yields a positive integer if Su is greater than Sv. (mpfactint I) => Sfactorial Yields the factorial of I as an unsigned radix 256 integer. (mpgcd Su Sv) => Sgcd Yields the greatest common divisor of the unsigned radix 256 integers Su and Sv. (mphashn S Ibytes) => Shash Yields an Ibytes long unsigned radix 256 integer from S using a combination of secure variants of the PCG random number-generator and Zilong Tan's 2012 fast-hash algorithm. (mpisprime Smp) => Bprime Yields non-nil if unsigned radix 256 integet Smp is prime (according to a Miller-Rabin probability test). Yields nil otherwise. Se mpmkprime. (mplcm Su Sv) => Slcm Yields the least common multiple of the unsigned radix 256 integers Su and Sv. (mpmkprime Ibits) => Sprime Yields a random, safe prime (according to a Miller-Rabin probability test) p, p=2q+1 where q is also prime, as an unsigned radix 256 integer with Ibits bits. See mpisprime. (mpmod Su Sv) => Srem Yields the remainder of the division of the unsigned radix 256 integers Su and Sv. (mpmodinv Su Sv) => Sinv Computes the multiplicative inverse (reciprocal) of Su modulo Sv (unsigned radix 256 integers), such that Su*Sinv = 1 (mod Sv). Yields the result as an unsigned radix 256 integer. Yields nil if no integer modular inverse exists, i.e. if gcd(Su,Sv)<>1. (mpmodpow Sbase Sexp Smod) => Smodpow Yields the unsigned radix 256 modular power Sbase^Sexp (mod Smod). (mpmodsqrt Su Sp) => Ssqrt Yields the modular square root of Su (mod Sp) where Sp must be prime (unsigned radix 256 integers). (mpor Su Sv) => Sor Calculates the bitwise OR of the unsigned radix 256 integers Su and Sv; yields the unsigned result. (mprand Ibits) => Srandom Yields a random unsigned radix 256 integer of size Ibits using 127 bits from the PCG RNG as seed. See randinit. (mpsqr Smp) => Ssquare Squares the unsigned radix 256 integer Smp; yields the unsigned result. (mpxor Su Sv) => Sxor Calculates the bitwise XOR of the unsigned radix 256 integers Su and Sv; yields the unsigned result. (mpxorpad Su Sv) => Sxor_padded [MathLib] If the result string from (mpxor Su Sv) is shorter than either Su or Sv, mpxorpad left-pads the result string with zero-bytes. (msgbox Scaption Sdeftext Howner [nil [Hicon]]) => Hwnd [StdLib] (msgbox Scaption Sdeftext Howner Isecs [Hicon]) => Oreason [StdLib] (msgbox Scaption Sdeftext Howner true [Hicon]) => Oreason [StdLib] Displays an message box with specified caption and text. If the first form is used, returns immediately and yields a handle to the window. If the second form is used, blocks for at most Isecs seconds or until the Ok or Cancel action is taken. If the third form is used, blocks until the Ok or Cancel action is taken. The second and third forms yields nil for timeout, 'ok for the Ok action and 'cancel for the Cancel action. (mysql_binlog_dump Lconn [Oerrval]) => MyResult [MySqlLib] Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_change_iser Lconn Suser Spwd Sdb [Oerrval]) => MyResult [MySqlLib] Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_connect Shost Suser Spwd Sdb [Iport]) => Lconn [MySqlLib] Establishes a connection to a MySQL server. Yields a list object representing a valid connection to the MySQL server on success. Yields nil or an error string on failure. See mysql_disconnect. (mysql_create_db Lconn Sdb [Oerrval]) => MyResult [MySqlLib] Creates a new database on the MySQL server represented by Lconn. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_disconnect Lconn) => ok [MySqlLib] Closes a connection to a MySQL server. Lconn must be the result of a previous mysql_connect function call. See mysql_connect. (mysql_drop_db Lconn Sdb [Oerrval]) => MyResult [MySqlLib] Deletes a database from the MySQL server represented by Lconn. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_field_list Lconn Stable [Oerrval]) => MyResult [MySqlLib] Queries the MySQL server represented by Lconn for table fields. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_init_db Lconn Sdb [Oerrval]) => MyResult [MySqlLib] Prepares to use the database Sdb with the existing MySQL connection Lconn. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. See mysql_connect. (mysql_mquery Lconn Squery [Oerrval]) => (MyResult...) [MySqlLib] Evaluates the SQL query Squery on the MySQL server represented by Lconn, which could be a multi-statement. Yields a list of all results in reverse order. See mysql_squery, mysql_query, mysql_query_log, mysql_connect, mysql_init. (mysql_next Lconn [Oerrval]) => MyResult [MySqlLib] Retrieves the next result from the server. Usually used following a multi-statement yielding a multi-result, indicated by a status code including 8 (MORE_RESULTS_EXISTS). The global variable MYSQL_PROTOCOL_41 should be non-nil for this to work. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. See mysql_query_log, mysql_query_log, mysql_connect, mysql_init. (mysql_ping Lconn [Oerrval]) => MyResult [MySqlLib] Tests the connectability to the MySQL server represented by Lconn. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_query Lconn Squery [Oerrval]) => MyResult [MySqlLib] Evaluates the SQL query Squery on the MySQL server represented by Lconn. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. See mysql_squery, mysql_mquery, mysql_query_log, mysql_connect, mysql_init. (mysql_query_log Lconn Squery [Oerrval]) => MyResult [MySqlLib] As mysql_query with verbose console output. (mysql_result MyResult Afdname Iindex) => Oval [MySqlLib] Yields the value of field Afdname in row Iindex of MyResult. MyResult must be a list (tabular data). (mysql_result0 MyResult) => O [MySqlLib] Equivalent to (arrget (arrget (mysql_result_array MyResult) 0) 0). Hence, the result must contain at least 1 row of at least 1 column, or an array out-of-bounds error be signaled. (mysql_result_aliases MyResult) => Laliases [MySqlLib] Yields the aliases of MyResult. MyResult must be a list (tabular data). (mysql_result_array MyResult) => A [MySqlLib] Yields the value array (3rd element) of MyResult. MyResult must be a list (tabular data). (mysql_result_array0 MyResult) => A [MySqlLib] Yields column 0 for each row in the value array (3rd element) of MyResult. MyResult must be a list (tabular data). (mysql_result_fields MyResult) => Lfields [MySqlLib] Yields the field names of MyResult. MyResult must be a list (tabular data). (mysql_result_nof MyResult) => Inofrows [MySqlLib] Yields the number of rows in a tabular data result. MyResult must be a list (tabular data). (mysql_set_option Lconn Aoption [Oerrval]) => MyResult [MySqlLib] Sets option Aoption, which should be of (MULTI_STMTS_ON MULTI_STMTS_OFF). Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_shutdown Lconn [Oerrval]) => MyResult [MySqlLib] Shuts down the MySQL server represented by Lconn. Yields an int (nof affected rows), a list (tabular data), the atom 'upload_file, nil (indicating EOF) or an error string. (mysql_squery Lconn Squery [Oerrval]) => MyResult [MySqlLib] Evaluates the SQL query Squery on the MySQL server represented by Lconn, which could be a multi-statement. Yields a the last result, discarding the previous (if any). See mysql_mquery, mysql_query, mysql_query_log, mysql_connect, mysql_init. (mysql_statistics Lconn) => MyResult [MySqlLib] Yields a status string on success. Yields nil on error. mysqllib (n2bytes N [Bsingle]) => S Yields a byte string representing N. If N is an integer, the string is 4 bytes in little endian two's-complement format. If N is a float, the string is 8 bytes in IEEE754 double-precision format, or 4 bytes in IEEE754 single-precision format if optional Bsingle is non-nil. See bytes2int, bytes2float, str2dec, dec2str. (n2bytes8 N) => S Yields the nearest integer to N as an 8 byte string in little endian two's-complement format. See bytes82n. (n2mp N) => Smp Yields an unsigned radix 256 integer string from N. If N is an int, its 32 bits are interpreted as an unsigned int. If N is a float, sign is disregarded (yielding 48 bits of precision). See mp2n. (name2sid Sname) > (Ssid Itype) Yields the SID for the given account name, together with the account type, or nil if the name can't be translated. (neg N) => Nneg Yields -N. (netlogoff Snetresource) => Bok Logs off from the specified network resource. (netlogon Snetresource Susrname Spwd) => Bok Logs on to the specified network resource with the specified credentials. (normalise L) => Lnormalised [MathLib] Yields a normalised copy of L, stretched and centered in the interval (-1,1). (not O) => B [Hard-coded] Yields nil if O is non-nil, or true otherwise. This function is equivalent to the nullp function. See and, or, if, cond. (nth I L) => O Yields element number I (0-indexed) in list L. See car, cdr, nthcdr. (nthcar I L) => Lhead Yields the I first elements of L as a new list. (nthcdr I L) => O Yields the list produced by taking the cdr I times on L. See car, cdr, nth. (nthremove I L) => L' [StdLib] Yields a new list with every element from L except element number I (0-indexed). (nullp O) => B [Hard-coded] Yields nil if O is non-nil, or true otherwise. This function is equivalent to the not function. See not. (numberp O) => B Yields true if O is a number; yields nil otherwise. See isnan, isinf, nullp, pairp, intp, stringp, floatp, atomp, reservedp, procp, externalp, arrayp. (oa2u Oa) > Ou Recursively applies the ansi2utf8ex function to each string element in Oa. See ou2a, ansi2utf8, utf82ansi. (obj2bytes O) => S Yields a byte string representation of O. See bytes2obj, bytes2objlist, bytes2objvalid. (objcar O) => Icar Yields the car part of object O (32 bits). (objcdr O) => Icdr Yields the cdr part of object O (32 bits). (objcons Icar Icdr) => O Yields an object from its parts Icar (32 bits), Icdr (32 bits). (objextra O) => Iextra Yields the extra part of object O (16 bits). The following constants are defined for type extended: HANDLE 1 SOCKET 2 HWND 3 LMENU 4 HICON 5 DIRHANDLE 6 LWND 7 HDC 8 HFONT 9 UNASSIGNED 10 MACRO 11 HPEN 12 HBRUSH 13 HRGN 14 HBITMAP 15 HTHREAD 16 HWAVEOUT 17 HWAVEBLOCK 18 HMODULE 19 FARPROC 20 MALLOC 21 (objlist Icar Iextra Itype) => O Yields an object from its parts Icar (32 bits), Iextra (16 bits), Itype (8 bits). (objtype O) => Itype Yields the type part of object O (8 bits). The following type constants are defined: THREADINFO 1 NIL 2 PAIR 3 ATOM 4 INT 5 FLOAT 6 RESERVED 7 PROC 8 STRING 9 EXTERNAL 10 ENV 11 ARRAY 12 LASTPAIR 13 BCENTRY 14 EXTENDED 15 (oblist) => ok Prints every object in the object list to the console. (oem2ansi Soem) > Sansi Yields an ANSI version of the OEM string Soem. (or Oexp*) => O [Special form] Evaluates each expression in Oexp* as long as the previous expression evaluated to nil. Yields the value of the first expression which evaluates to non-nil; the remaining expressions are not evaluated. If all expressions evaluate to nil, or if no expressions are provided, nil is returned. See and, not, if, cond. (ou2a Ou) > Oa Recursively applies the utf82ansiex function to each string element in Ou. See oa2u, ansi2utf8, utf82ansi. (pairp O) => B Yields true if O is a pair; yields nil otherwise. See nullp, atomp, intp, stringp, floatp, numberp, reservedp, procp, externalp, arrayp. (peekmsg) => Bpresent Yields non-nil if there are messages in the GUI queue. (percentile Lcoords Npercentile) => Nx Yields the x coordinate for which the cumulative sum of y equals Npercentile. Lcoords is a frequency table represented by a sorted list of x and y coordinates on the form ((x1 y1) (x2 y2)... ). See stats. (perms Lset N) => Lperms [StdLib] Yields a list of all permutations of Lset consisting of N elements from Lset, with no duplicates, not regarding order. (perms2 L) => Lperms [StdLib] Yields a list of all permutations of L consisting of all elements from L, regarding order. (physicalseed) => Iseed Yields an integer based on the internal CPU clock. See physicalseed2, randinit*. (physicalseed2 Inbytes) => Sseed Yields a random string of Inbytes bytes based on the internal CPU clock. See physicalseed, randinit*. (ping Shost [Ntimeout]) => (Ims Ittl Sip) [TcpLib] Sends 1 ICMP echo request to the specified host Shost. Waits for at most Ntimeout seconds for a matching reply (default 3). Yields a list with the round trip time, the TTL, and the peer address on success. Yields an atom describing the error on failure (eg. 'read_failed on timeout). See pingmulti. (pingmulti Lhosts [Ntimeout [Bnice]]) => ((Ims Ittl Sip) ...) [TcpLib] Pings multiple hosts in parallell and yields the result for each as a list. If Bnice is non-nil, the first response from a specific ip address is used for every such ip address in Lhosts, even if some packets to that ip address were lost. See ping. (pipecreate Sname) => Hpipe Creates a new named pipe (server end), or a new instance to an existing pipe (server end) if a pipe with name Sname already exists. Sname must begin with "\\.\pipe\". The rest of the name can include any character other than a backslash. The entire pipe name string can be up to 256 characters long. Pipe names are not case sensitive. The pipe should be closed with the closehandle function. (pipedisconnect Hpipe) => ok Disconnects the server end of named pipe Hpipe from a connected client. Any unread data in the pipe is discarded. The pipelisten function cannot be used with a connected pipe. (pipelisten Hpipe [Ntimeout]) => ok Blocks for at most Ntimeout seconds, waiting for a client to connect to the given pipe Hpipe. Yields ok if a connection is established within the timeout period. Yields nil on error or time-out, but does not signal an error. (pipeopen Sname [Ntimeout]) => Hpipe Connects to named pipe Sname. Yields a handle to the pipe, if it can be established within Ntimeout seconds (defaults to 5 seconds). Ntimeout can be nil, specifying infinite timeout. Yields nil on error or time-out, but does not signal an error. (piperead Hpipe Inofbytes Ntimeout) => S Reads from named pipe Hpipe. Ntimeout specifies the timeout in seconds. Inofbytes can be nil, in which case all available data is read. Ntimeout can be nil, which specifies infinite timeout. If the pipe is closed by the remote end before Inofbytes bytes has been read, as much data as was read is returned. (pipestatus Hpipe) => Bconnected Yields non-nil if Hpipe is a valid, connected pipe. Yields nil otherwise. (pipewrite Hpipe Sdata) => ok Writes Sdata to the named pipe Hpipe. (playstring S) => Hwavedev [StdLib] Plays a sound representation of string S asynchronously. Yields a handle to the wave-out device. (pnginfo Spng) => Lsize [ImageLib] Yields the dimensions of the PNG image Spng as a list (Iwidth Iheight). (postmessage Hwindow Imsg Iwparam Ilparam) => Bok Posts the specified message to Hwindow. Yields non-nil on success. (pow Nbase Nexp) => N Yields Nbase raised to the power Nexp. If Nbase is negative, Nexp must be a whole number. (prec Iprecision N) => Snum Yields a new string which looks like N rounded (half-away-from-zero) to exactly Iprecision decimal digits (if Iprecision is positive), or at most -Iprecision significant digits (if Iprecision is negative). Rounds halves away from zero. (print O) => ok Pretty prints O to the console. See printc, display, sprintsimple. (printbcp) => ok Prints bytecode instructions to the console as they are executed. (printbcptrace) => ok Prints the last 32 bytecode instructions executed to the console. (printc O) => ok Pretty prints O followed by a new-line to the console. See print, display, sprintsimple. (printcsimple O) => ok Prints O to the console on one line, followed by a new-line. See printc, display, sprintsimple. (printprec Iprec) => Bok Sets the maximum number of significant digits to be displayed when using the print and display functions on floats. Default is 14. (printsimple O) => ok Prints O to the console on one line. See printc, display, sprintsimple. (privenable Apriv Bflag) => B Enables or disables the token privilege Apriv for the current process. If Bflag is nil, the privilege is disabled, otherwise it's enabled. Yields nil if the operation fails, but does not signal an error. Windows Server 2003 defines the following privileges: AssignPrimaryToken, Audit, Backup, ChangeNotify, CreatePagefile, CreatePermanent, CreateToken, Debug, EnableDelegation, Impersonate, IncreaseBasePriority, IncreaseQuota, LoadDriver, LockMemory, MachineAccount, ManageVolume, ProfileSingleProcess, RemoteShutdown, Restore, Security, Shutdown, SyncAgent, SystemEnvironment, SystemProfile, Systemtime, TakeOwnership, Tcb, Undock, UnsolicitedInput. (process_cmdline) => O [StdLib] Checks the command line for /evalquit and /evalstay parameters, and evaluates the argument expression if found. (processhandle) => Hprocess Yields the Lizp process' Win32 handle. (processid) => Ipid Yields the Lizp process' Win32 id. (processname Ipid) > Smodule Yields the module file name corresponding to the given process id, or nil if a name can't be retrieved. (processsetpriority Ipid Aclass) Sets the given process' priority class to Aclass, which should be one of {above|below|high|idle|normal|realtime}. See processid. (procp O) => B Yields true if O is a procedure object; yields nil otherwise. See closurep, nullp, pairp, intp, stringp, floatp, numberp, reservedp, atomp, externalp, arrayp. (putval2 Asymbol Oval2) => ok [Mutating] Binds the optional value (val2) of Asymbol to Oval2 in the global environment. This binding is used for help text for symbols representing functions. See getval2. (qpdec Sqp) => Stext [MimeLib] Decodes Sqp from RFC1521 Quoted-Printable Content-Transfer-Encoding. (qpenc Stext [Imaxlen]) => Sqp [MimeLib] Encodes Stext in RFC1521 Quoted-Printable Content-Transfer-Encoding. Optional Imaxlen defaults to a maximum line length of 75. (quasiquote O) -> (quasiquote O) [Special form] Yields the the expression (quasiquote O), or `O for short. O is not evaluated unless the unquote or unquote-splicing form is used. (questionbox Scaption Stext Howner [Hicon]) => Byes [StdLib] Displays an dialog box with two buttons, labeled Yes and No. Yields true if Yes is clicked; yields nil otherwise. Howner can be nil, in which case the input box has no owner. (quit) Quits Lizp. Yields no value. (quit_when_done) => ok Quits Lizp as soon as the main thread is idle. (quote O) -> (quote O) [Special form] Yields the the expression (quote O), or 'O for short. O is not evaluated. (rand) => N Watcom simple 31-bit random number-generator. Yields a pseudo-random number between 0 and 1 (inclusive). See randseed, randinit. (randbits) => I PCG fast random number-generator. Yields 32 pseudo-random bits as an integer. See randinit. (randbits2) => I PCG secure random number-generator. Yields 32 pseudo-random bits as an integer. See randinit. (randbits2f) => F PCG secure random number-generator. Yields a pseudo-random floating point number with a resolution of 60 bits. See randbits2, randfloat2b. (randbits4 Sstate) => I [Mutating] Local secure PCG random number-generator. Yields 32 pseudo-random bits as an integer. Updates Sstate. See randinit4. (randbits5) => I Brent's XORSHIFT random number-generator. Yields 32 pseudo-random bits as an integer. See randinit5. (randbytes Inbytes) => S [MathLib] [Macro] Yields an Inbytes long string of random bytes using a combination of physical seed and the PCG random number-generator. (randfloat) => F PCG fast random number-generator. Yields a pseudo-random floating point number in the interval 0 <= x < 1 with a resolution of 32 bits. See randinit. (randfloat2) => F PCG secure random number-generator. Yields a pseudo-random floating point number in the interval 0 <= x < 1 with a resolution of 32 bits. See randinit, randfloat2b. (randfloat2b) => F PCG secure random number-generator. Yields a pseudo-random floating point number in the interval 0 <= x <= 1 with a resolution of 60 bits. See randinit. (randfloat4 Sstate) => F [Mutating] Local secure PCG random number-generator. Yields a pseudo-random floating point number in the interval 0 <= x < 1 with a resolution of 32 bits. Updates Sstate. See randinit4. (randhex Inofdigs) => Srandhex [MathLib] Yields a zero-padded random hex string of the specified length. (randinit Iseed) => ok Initialises the PCG random number-generators with the given seed Iseed. See physicalseed, randfloat*, randint*, randbits*. (randinit2 Sseed) => ok Initialises the PCG random number-generator with the given seed Sseed. See physicalseed, randfloat*, randint*, randbits*. (randinit4 Sseed) => Sstate Initialises a new, local PCG random number-generator with the given seed Sseed. See randfloat*, randint*, randbits*. (randinit5 Sseed) => I Initialises the XORSHIFT random number-generator with the given seed Sseed. Yields 32 pseudo-random bits as an integer. See randfloat*, randint*, randbits*. (randint Imin Imax) => I PCG fast random number-generator. Yields a pseudo-random integer in the interval Imin <= x <= Imax. See randinit. (randint2 Imin Imax) => I PCG secure random number-generator. Yields a pseudo-random integer in the interval Imin <= x <= Imax. See randinit. (randint4 Imin Imax Sstate) => I [Mutating] Local secure PCG random number-generator. Yields a pseudo-random integer in the interval Imin <= x <= Imax. Updates Sstate. See randinit4. (randseed I) => B Initialises the Watcom random number-generator with the given seed I. Example: (randseed (time2secs (datetime))). See rand, randinit. (randxor4 S Sstate) => S [Mutating] Modifies S by XORing it with bits from local secure PCG random number-generator Sstate and yields the modified S. Updates Sstate in the same way as (ceil (/ (strlen S) 4)) calls to randbits4 would have; i.e. some random bytes of Sstate are wasted if (strlen S) is not a multiple of 4. Sstate may be a concatenation of multiple states, each 16 bytes long, in which case each state is treated as a separate generator which is applied (xored) iteratively to S, in the same order as they appear in Sstate. See randinit4. (rcons Oa Ob) => P [StdLib] Equivalent to (cons Ob Oa). (re2dfa Oregexp) => Odfa Yields a deterministic finite automaton from the regular expression Oregexp. The dfa can be used with the dfamatch function. Regular expression syntax is described in the help for the dfamatch function. See dfamatch. (re2nfa Oregexp Bedges) => Lnfa Yields a nfa from Oregexp, or edges if Bedges in non-nil. (rectfind Sbig Ibwidth Ibheight Ssmall Iswidth Isheight [Ibwidth2 Iswidth2]) > Lpos Treats the strings as Iheight rows of Iwidth columns (bytes) each. Locates the upper leftmost subrectangle in Sbig equal to Ssmall. Yields the the coordinate for the topleft corner of this rectangle as a pair (Irow Icolumn), or nil if no match is found. (redrawwindow Hwindow) => B Redraws Hwindow, including its non-client parts. (refreshmenu Hwnd) => ok Refreshes the menu of window Hwnd. Yields nil on failure. (regvalget Akey Ssubkey Svalname) => Oval Yields the registry value Svalname in key Akey\Ssubkey. Akey should be one of the atoms (CLASSES_ROOT CURRENT_USER LOCAL_MACHINE USERS). The result is returned as a list of 2 elements, where the first element is one of the atoms (binary dword dword_big_endian expand_sz none resource_list sz unknown), and the second element is the value. The value is an for dword; a for all others. Yields nil of the value can't be retrieved, but does not signal an error. (remote_eval Shost Iport Sid Oexp [Oerrval [Ntimeout]]) => O [TcpLib] Evaluates Oexp on tcpserver Shost, which should have tcp_server running on port Iport. Yields the value of the evaluation, and disconnects immediately. For performance reasons, the mk_tcp_client function should be used for frequent calls. (remote_eval_keepconn Lhinfo Sid Oexp [Oerrval])) => O [TcpLib] [Mutating] Evaluates Oexp on tcpserver Shost, which should have tcp_server running on port Iport. Yields the value of the evaluation, and keeps the connection, with connection info stored in Lhinfo, which should be used on subsequent calls. The Lhinfo list should be on the form (nil Shost Iport) on the first call. After the first call, Lhinfo will be on the form (Ssock Shost Iport Ceval Cconnect Cstatus Cdisconnect). To close the connection, use the Cdisconnect function with Lhinfo as the Lconn argument. If Oerrval is provided on the first call, this value is returned on error instead of exception raising. See remote_eval, mk_tcp_client. (remote_ping Shost Iport Sid Ntimeout [sock]) => Nresponse_time [TcpLib] Yields a measure of host Shost's response time, or nil if no response is received within Ntimeout seconds. If provided, optional sock is used to verify the connection. (reservedp O) => B Yields true if O is of type ; yields nil otherwise. See nullp, pairp, intp, stringp, floatp, numberp, atomp, procp, externalp, arrayp. (reset) Resets the Lizp run-time system to its initial state. Yields no value. (reverse L) => Lrev Yields a new list, containing all elements from L in reverse order. (rgb2hsl Ir Ig Ib) => (Nh Ns Nl) [ImageLib] Yields the HSL components of the colour represented by (Ir Ig Ib). 0<=Nh<=360, 0<=Ns<=1, 0<=Nl<=1. See hsl2rgb. (rgb2hsv Ir Ig Ib) => (Nh Ns Nv) [ImageLib] Yields the HSV components of the colour represented by (Ir Ig Ib). 0<=Nh<=360, 0<=Ns<=1, 0<=Nv<=1. See hsv2rgb. (rgb2lab Ir Ig Ib) > (Fl Fa Fb) Yields the L*ab coordinates corresponding to the given RGB colour. 0<=Fl<=100, -86.185<=Fa<=98.255, -107.864<=Fb<=94.483. See lab2rgb. (rgbdiff Ir1 Ig1 Ib1 Ir2 Ig2 Ib2) > Ndiff Yields the perceptual difference between the two colours specified by (Ir1 Ig1 Ib1) and (Ir2 Ig2 Ib2) as a number 0<=Ndiff<=1. (rgblabdiff Ir1 Ig1 Ib1 Ir2 Ig2 Ib2) > (Fdl Fda Fdb) Yields L*ab factors to transform from colour (Ir1 Ig1 Ib1) to (Ir2 Ig2 Ib2) with the rgblabtransform function. See rgblabtransform, bmplabtransformrect. (rgblabtransform Ir Ig Ib Fdl Fda Fdb) > (Ir' Ig' Ib') Transforms the colour specified by (Ir Ig Ib) using the given L*ab factors. See rgblabdiff, bmplabtransformrect. (rgblum Ir Ig Ib) => Nlum [ImageLib] Yields the relative luminance (as defined by W3C) of the colour represented by (Ir Ig Ib). See lumcontrast. (rgnand Hdestrgn Hsrcrgn) => Bok Modifies Hdestrgn by ANDing it with Hsrcrgn. (rgndiff Hdestrgn Hsrcrgn) => Bok Modifies Hdestrgn by substracting Hsrcrgn from it. (rgnor Hdestrgn Hsrcrgn) => Bok Modifies Hdestrgn by ORing it with Hsrcrgn. (rgnxor Hdestrgn Hsrcrgn) => Bok Modifies Hdestrgn by XORing it with Hsrcrgn. (round N) => I Rounds N to the nearest integer, with fractional halves towards even. (round 0.5) => 0; (round -0.5) => 0; (round 1.5) => 2; (round -1.5) => -2. See floor, ceil, trunc, fround. (roundsingle F) => I Rounds N to 23 fractional bits. (rsagen Ibits) => (Sn Se Sd) [MathLib] Yields a list of unsigned radix 256 integers representing the public and private keys of a random RSA key-pair. Ibits is the size of the modulus Sn. Ibits must be even and >= 256. (Sn Se) corresponds to the public key; (Sn Sd) corresponds to the private key; (Sm^Se)^Sd :=: Sm (mod Sn) for all Sm, 0 <= Sm < Sn. The :=: here denotes modular congruence: when you divide (Sm^Se)^Sd with Sn and Sm by Sn, they both have the same remainder. To encrypt, raise (a padded version of) Sm to Se: Sc <= Sm^Se (mod Sn). To decrypt, raise the ciphertext to Sd: Sm <= Sc^Sd (mod Sn). To sign, raise Sh=hash(Sm) to Sd: Ss <= Sh^Sd (mod Sn). To verify, compare Sh=hash(Sm) with Ss raised to Se: Sh :=:? Ss^Se (mod Sn). (rtfbold HWNDrtf BOOL) > BOOL Sätter (om BOOL skilt från nil) eller stänger av fetstil i RTF-fönstret. RTF-fönstret måste först initieras med RtfInit. (rtffixed HWNDrtf Nheight) > BOOL Sätter typsnitt med fast teckenbredd och höjd Nheight i RTF-fönstret. RTF-fönstret måste först initieras med RtfInit. (rtfPrint HWNDrtf Stext) > BOOL Replaces the current selection in HWNDrtf with Stext, or inserts if nothing is selected. (rtfitalic HWNDrtf BOOL) > BOOL Sätter (om BOOL skilt från nil) eller stänger av kursiv stil i RTF-fönstret. RTF-fönstret måste först initieras med RtfInit. (rtfparse Srtf) => Ortfparts [RtfLib] Parses and yields the elements of an RTF-string. (rtfplaintext Ortf) => Splaintext [RtfLib] Yields any plain text in Ortf; Ortf is the output from rtfparse. (rtfprint HWNDrtf Stitle Lfr) > Lfr Prints the contents of HWNDrtf using the parameters in Lfr which are yielded by the rtfprintsetup function. (rtfprintsetup HWNDrtf Bdefprinter) > Lfr Prepares HWNDrtf for WYSIWYG display and printing. Yields an Lfr structure which is used with subsequent rtfprint invocations. (rtfstrikeout HWNDrtf BOOL) > BOOL Sätter (om BOOL skilt från nil) eller stänger av överstrykning i RTF-fönstret. RTF-fönstret måste först initieras med RtfInit. (rtfunderline HWNDrtf BOOL) > O Sätter (om BOOL skilt från nil) eller stänger av understrykning i RTF-fönstret. RTF-fönstret måste först initieras med RtfInit. (rtfvariable HWNDrtf Nheight) > BOOL Sätter typsnitt med variabel teckenbredd och höjd Nheight i RTF-fönstret. RTF-fönstret måste först initieras med RtfInit. (s-curve Nx Nw) => Ny [StdLib] Maps points in the interval (0,1) to points in the same interval (0,1), using an arctan-transform yielding an S-shaped distribution with points below 0.5 diminished and points above 0.5 exagerated. Nw specifies the sharpness; the higher the sharper. (screen2clientx Hwnd Isx) => Icx Yields the horizontal Hwnd client coordinate corresponding to the given screen coordinate. (screen2clienty Hwnd Isy) => Icy Yields the vertical Hwnd client coordinate corresponding to the given screen coordinate. (screenheight) => Iheight Yields the primary monitors screen height in pixels. (screenwidth) => Iwidth Yields the primary monitors screen width in pixels. (sech N) => Nsech Yields the hyperbolic secant of N. (sech2 N) => Nsech2 Yields the square of the hyperbolic secant of N. (secs2time Nsecs) => Ltime Yields a datetime list on the form (Iyear Imonth Iday Ihours Iminutes Iseconds) corresponding to the Nsecs parameter (number of seconds since 2000-01-01_00:00:00). See time2secs. (secs2time0 Isecs) => Ltime Yields a datetime list on the form (Iyear Imonth Iday Ihours Iminutes Iseconds) corresponding to the Isecs parameter (number of seconds since 2000-01-01_00:00:00). Yields (0 0 0 0 0 0) if Isecs is 0 (representing 'none/nil'). Yields (2000 1 1 0 0 0) if Isecs is 1 (representing 'invalid'). The earliest and latest times representable by signed 32-bit integers are 1931-12-13_20:45:52 (intmin) and 2068-01-19_03:14:07 (intmin) respectively; note that Isecs 1 yields 2000-01-01_00:00:00 (not 2000-01-01_00:00:01), and that this time is interpreted as 'invalid' by many functions. See time2secs0. (secs2wday Isecs) => Iwdy Yields an integer representing the weekday corresponding to Isecs. 0=Sun, 1=Mon, 2=Tue, 3=Wed, 4=Thu, 5=Fri, 6=Sat. (secsadd Ltime Isecs) => Lnewtime [StdLib] Yields a new datetime, Isecs seconds later than Ltime. Ltime should be on the form (Iyear Imonth Iday Ihours Iminutes Iseconds). Isecs can be negative. See secs2time, time2secs, secsbetween. (secsbetween Ltimelo Ltimehi) => Isecs [StdLib] Yields the number of seconds between Ltimelo and Ltimehi. The arguments should be on the form (Iyear Imonth Iday Ihours Iminutes Iseconds). See secs2time, time2secs, secsadd. (selectfont Hprinter Hfont) => ok Selects the font Hfont into printer Hprinter. See createfont, getprinter. (sendkeys Svkeys) > Inofevents Simulates down/up-events corresponding to the chars or virtual keycodes in Svkeys. If a byte is 0, the next byte is taken to be a keydown virtual keycode. If a byte is 1, the next byte is taken to be a keyup virtual keycode. Otherwise, the byte is interpreted as text. See keydown, keyup. (sendmessage Hwindow Imsg Iwparam Ilparam) => Ilresult Sends the specified message to Hwindow. Yields the LRESULT return value. (seq Oexp*) => O [Special form] Evaluates all expressions Oexp* in sequence; yields the value of the last evaluation, or nil if none were provided. (sessionid) => Isid Yields the Lizp process' session id. (set Ovar O) => O [Mutating] Rebinds the existing variable that Ovar evaluates to to O. If the name that Ovar evaluates to is unbound, an error is signaled. Yields the value of O. See setq, define, let, letrec, lambda, unset, unassigned. (setactivewindow Hwnd) => ok Makes Hwnd the active window. (setaffinitymask Imask) => Bok Sets Lizp's process affinity mask. (setcar P Ocar) => P [Mutating] Modifies the pair P by replacing its car with Ocar. Yields the modified P. See setcdr. (setcdr P Ocdr) => P [Mutating] Modifies the pair P by replacing its cdr with Ocdr. Yields the modified P. See setcar. (setclipboardtext S) => Bok Copies S to the Windows Clipboard. Yields nil on error, but does not signal an error. (setconsolebgcol Ir Ig Ib) => Bok [StdLib] Uses the setoutputbgcol and setwindowbackground functions to set the Lizp output window's background colour. (setfocus Hwnd) => HwndPrev Sets the keyboard focus to Hwnd, which must be associated with the calling thread's message queue. Yields the handle of the previously focused window, or nil if Hwnd is invalid or not associated with the calling thread's message queue. (setfont Hwnd Hfont) => ok Sets the font Hfont as the current font in control Hwnd. See createfont, selectfont. (setforegroundwindow Hwnd) => ok Makes Hwnd the foreground window. (setforegroundwindow2 Hwnd) => ok Makes Hwnd the foreground window, using AllocConsole to bypass limitations. (seticonbig Hwindow Hicon) => ok Sets the specified window's big (32*32) icon. (seticonsmall Hwindow Hicon) => ok Sets the specified window's small (16*16) icon. (setlayeredattribs Hwindow Ikey Ialpha Iflags) => Bok Specifies chroma key or alpha value for Hwindow, which should have the WS_EX_LAYERED (0x80000) extended window style. Ikey specifies the RGB value of the chroma key. Ialpha specifies the alpha opacity; 0 is fully transparent; 255 fully opaque. Iflags should be a combiniation of 1 (use Ikey) and 2 (use Ialpha). (setoutputbgcol Lrgb) => Bok Sets the Lizp console output text background colour. See setwindowbackground, getoutputwindow. (setq Avar O) -> O [Special form] [Mutating] Rebinds the existing variable Avar to O. Avar is not evaluated; O is. If Avar is unbound, an error is signaled. Yields the value of O. See define, let, letrec, lambda, set. (setwindowbackground Hwnd Icol) => Ioldbg Sets the background colour of Hwnd to Icol (0x00bbggrr) by setting the window's class hbrBackground member. See setwindowbcol. (setwindowbcol Hwnd Icol) => ok Sets the background colour of Hwnd to Icol (0x00bbggrr). Hwnd should have been created with mkwindow. See setwindowtcol, setwindowbackground. (setwindowexstyle Hwindow Inewstyle) => Ioldstyle Sets the specified window's extended style attribute and calls SetWindowPos(SWP_FRAMECHANGED) to update the window cache. The numeric constants can be found in winuser.h. See setwindowstyle, getwindowstyle, getwindowexstyle setwindowpos. (setwindowpos Hwindow Hafter Ix Iy Iw Ih [Iflags]) => Bok Changes Z-order, moves and/or resizes Hwindow. If Hafter is nil, the Z-order is unchanged. If Ix is nil, the position is unchanged; if Iw is nil the size is unchanged. Optional Iflags specifies SWP-values from WinUser.h, e.g. SWP_NOACTIVATE (16). See movewindow. (setwindowrgn Hwindow Hregion) => Bok Sets the window region. (setwindowstyle Hwindow Inewstyle) => Ioldstyle Sets the specified window's style attribute and calls SetWindowPos(SWP_FRAMECHANGED) to update the window cache. The numeric constants can be found in winuser.h. See setwindowexstyle, getwindowstyle, getwindowexstyle setwindowpos. (setwindowtaborder Hwindow Itaborder) => Bok Sets the specified window's taborder. (setwindowtcol Hwnd Icol) => ok Sets the text colour of Hwnd to Icol (0x00bbggrr). Hwnd should have been created with mkwindow. See setwindowbcol. (setwindowtext Hwindow Stext) => ok Sets the specified window's text attribute. (sfloats2bytes Ssfloats) > Sbytes Converts a string of floats in IEEE754 single-precision format to a string of bytes, where each byte value is the float value v converted as with min(255,max(0,v*255+0.5)). (showstat) => ok Displays current run-time information in the console status bar. (showwindow Hwindow Astate) => ok Sets the specified window's show state. Astate should be one of . (shuffle L) => Lshuffled [StdLib] Yields a new list with every element in L in random order. (sin Nradians) => N Yields the sine of Nradians. (sinh N) => Nsinh Yields the hyperbolic sine of N. (sizetree Sfname) => Fsize [StdLib] Yields the total size in KB of all files matching Sfilename. The size can be converted to bytes by multiplying with 1024. Recurses into matching directories. Note that for subdirectories, every name will match. See dirlist, dirtree. (sleep N) => B Blocks execution (sleeps) for N seconds in an efficient manner. N can specify fractions of seconds. (sleepex Nseconds) => Bok [StdLib] Sleeps for Nseconds using a combination of the sleep and usleep functions. See sleep, usleep, threadsleep. (smtpsend Ssmtpsrv Iport Sfrom Sto Smsg) => B [SmtpLib] Sends Smsg (which should be a RFC 822-conformant message) to Ssmtpsrv using SMTP (RFC 821). Sfrom (MAIL FROM) and Sto (RCPT TO) should be proper e-mail addresses, f.x. user@domain.com. Non-delivery reports will be sent to Sfrom. The message will be sent to Sto. If no non-delivery reports should be sent, Sfrom should be the empty string. Yields nil if the message could not be sent. (socksetrxto Hsocket Ims) => Bok Sets the thread-blocking receive-timeout for socket Hsocket to Ims milliseconds, or infinite if Ims is 0. The default thread-blocking receive-timeout is infinite. See udpbind, udpreadfrom. (sort L [cols]) => Lsorted Yields a new, sorted copy of list L. The optional cols parameter specifies which 0-indexed column to sort a list of lists on. The parameter may be an integer or a nested list of integers. (sortIUA L [cols]) => Lsorted [IUA] IUA version of sort. (sorti L [cols]) => Lsorted Yields a new, sorted copy of list L. The optional cols parameter specifies which 0-indexed column to sort a list of lists on. The parameter may be an integer or a nested list of integers. Case insensitive. (sortu L [cols]) => Lsorted Yields a new, sorted copy of list L. The optional cols parameter specifies which 0-indexed column to sort a list of lists on. The parameter may be an integer or a nested list of integers. Case insensitive. Strings should be UTF-8 Unicode. (splice L1 L2) => L1 [Mutating] Appends L2 to the end of L1 by modifying the last pair of L1. Yields L1. L2 is not copied; its pairs become the tail of L1. (splice L1 nil) yields L1 unchanged. See append, duplist, setcdr. (split822 Smail) => L [MimeLib] Yields a list of the header and body parts of Smail in the form of two strings. The header string is guaranteed to end with CRLF. The body part may be the empty string. (sprint O) => S Yields a new string which is a text representation of O as it would look if printed with print. Objects are printed in full (no capping). See sprintsimple, sprintraw. (sprintraw O) => S Yields a new string which is a text representation of O as it would look if printed with display. See sprintrawsimple, sprint, sprintsimple. (sprintrawsimple O) => S Yields a new string which is a text representation of O as it would look if printed with display without newlines and type delimiters. See sprintraw, sprint, sprintsimple. (sprintsimple O) => S Yields a new string which is a text representation of O as it would look if printed with printsimple. Objects are printed in full (no capping). (sprintsimple nil) => "nil" (sprintsimple lambda) => "" (sprintsimple car) => "( -1 . arglist)" (sprintsimple 'atom) => "atom" (sprintsimple "string") => "%22string%22" (sprintsimple "Alpha%0d%0aBravo") => "%22Alpha%0D%0ABravo%22" (sprintsimple [[a b] c d]) => "[[a b] c d]" (sprintsimple '((a b) c d)) => "((a b) c d)" (sprintsimple 0) => "0" (sprintsimple 0.0) => "0.0" (sprintsimple (/ 1 3)) => "0.33333333333333" (sprintsimple (/ 1 1)) => "1.0" (sprintsimple (/ 1 0)) => "inf" (sprintsimple (neg (/ 1 0))) => "-inf" (sprintsimple (/ 0 0)) => "-nan" (sprintsimple (neg (/ 0 0))) => "nan" (sprintsimple caddr) => "( 1 exp)" (sprintsimple (unassigned)) => "" (sprintsimple (mkexternal 1 2)) => "" (sprintsimple (int2handle 1 'HANDLE)) => "" (sprintsimple (envgetcur)) => "" See sprint, sprintraw. (sqrt N) => Nsqrt Yields the non-negative square root of N. N must not be negative. (start Scmdline [nil [Senvblock [Sindata [Htoken [Susr Sdom Spwd]]]]) => (Ipid Hprocess) (start Scmdline true [Senvblock [Sindata [Htoken [Susr Sdom Spwd]]]]) => (S Ipid Iexitcode Hprocess) (start Scmdline Nsecs [Senvblock [Sindata [Htoken [Susr Sdom Spwd]]]]) => (S Ipid Iexitcode Hprocess) Creates a new process corresponding to Scmdline. If the first form is used, returns immediately and yields the new process id. If the second form is used, blocks until the new process is completed and yields a a list of a string representing everything the new process output to stdout, the new process' pid and exit code. If the third form is used, blocks Nsecs seconds or until the new process completes, whichever comes first. If the process does not complete in time it is terminated. The new process will use Senvblock if given, or inherit the caller's environment if not. If provided, Sindata will be directed to the new process' stdin. Exit code (Iexitcode) 259 decimal is Win32 magic constant 'STILL_ACTIVE'. If Htoken is provided and non-nil, the process is created in this token's security context. The logonuser function can be used to retrieve the token. The caller usually needs the Tcb (Act as part of the operating system), the IncreaseQuota and the AssignPrimaryToken privileges to be allowed to start use Htoken to start a process. If Susr is provided and non-nil, the new process runs in the security context of the specified credentials, and loads the specified user's profile. Susr must be allowed to logon interactively, but the caller needs no special privileges. Yields nil if the process can't be created or doesn't complete before time-out, but does not signal an error. (startdoc Hprinter Stitle) => ok Prepares printer Hprinter for a new job, titled Stitle. See enddoc, getprinter. (startinteractive Susr Sdomain Spwd Scmdline) > Bok Starts a new interactive process on the current winsta/desktop. Needs privileges AssignPrimaryToken and IncreaseQuota. (startpage Hprinter) => ok Prepares printer Hprinter for a new page. See endpage, startdoc, getprinter. (stats Lcoords) => Lcounts Yields statistics from the coordinates in Lcoords, which is a frequency table represented by a list of x and y coordinates on the form ((x1 y1) (x2 y2)... ). The result is a list of 5 lists: (Sx Sx2 xmin xminy xmax xmaxy), (Sy Sy2 ymin yminx ymax ymaxx), (Sxy Sx2y), (P25 P250 P500 P750 P975), (nof SDx SDy SDxy Mx My Mxy). The 4th list (percentiles) is valid only if the input list is sorted on x. (str2arr S) => A Yields an array A of all characters in S as strings. See mkstring, list2str. (str2date Sdate) > Ldatetime Yields a standard datetime list (YYYY MM DD hh mm ss) from Sdate, which can be in any of the standard formats, with or without clocktime. Seconds are ignored and are always set to 0. Yields nil if Sdate can not be interpreted as a datetime. See str2datesecs, str2date2. (str2date2 Sdate) > Ldatetime Yields a standard datetime list (YYYY MM DD hh mm ss) from Sdate, which can be in any of the standard formats, with or without clocktime. Clocktime defaults to 23:59. Seconds are ignored and are always set to 0. Yields nil if Sdate can not be interpreted as a datetime. See str2date, str2datesecs. (str2datesecs Sdate) > Ldatetime Yields a standard datetime list (YYYY MM DD hh mm ss) from Sdate, which can be in any of the standard formats, with or without clocktime; if given, clocktime must include seconds. Yields nil if Sdate can not be interpreted as a datetime. See str2date, str2date2. (str2dec S Ibase) => I Yields the integer represented by S when interpreted as an integer in base Ibase, 2<=Ibase<=36. See bytes2int, n2bytes, bytes2float, dec2str. (str2list S Lelemseps [Ostrelems]) => L Yields a list created by appending the elements in S using the first string in Lelemseps as element separator. If an element in S contains subelements [according to Lelemseps], each of its subelements is appended using the second element in Lelemseps as element separator, and so on recursively. A leaf element in the reulting list will be of type or if the corresponding string-part can be interpreted as a number. If it can't, the element will be of type . Leaf elements will never be of any other type. If the optional parameter Ostrelems is non-nil, leaf elements will be of type , unless it is the atom 'floats, in which case number-like leaf elements will be interpreted as floats (even if they look like ints). See list2str. (str2mem S EXTaddr) => ok Copies the bytes in string S to the address contained in the car part of EXTaddr. See mem2str, malloc, free. (str2mp S Ibase) => Smp Parses S as an unsigned radix Ibase (2<=Ibase<=64) integer string; yields an unsigned radix 256 integer string. See mp2str. (str2num S) => N [StdLib] Tries to parse S as a number in decimal form, with possible leading whitespace and possible trailing non-numeric characters. Yields the parsed number, or 0 if no number is found. (strcpy Sdest Idest Ssrc Isrc Ilen) => Sdest [Mutating] Modifies Sdest by copying Ilen bytes from Ssrc, starting from byte Isrc, to Sdest, byte Idest, overwriting the existing bytes. (strdehex Shexstr [Iskip]) > S Yields a new string from Shexstr, the latter which is interpreted as a sequence of 2-digit hex numbers representing each byte in S. Optional Iskip specifies that a each 2-digit number is prepended by a Iskip chars long prefix. See strhex, strjson, strdejson, strdejsonhex, strdejsonlzp. (strdejson Sjson) > S Yields a new string from Sjson, the latter which is interpreted as a JSON-encoded string. See strdejsonhex, strjson, strhex, strdehex, strdejsonlzp. (strdejsonhex Sjson) > S Yields a new string from Sjson, the latter which is interpreted as a JSON-encoded string. JSON escape sequences are converted to Lizp4 %-syntax; all other chars are left intact. See strdejson, strjson, strhex, strdehex, strdejsonlzp. (strdejsonlzp Sjson) > S Yields a new string from Sjson, the latter which is interpreted as a JSON-encoded string. Chars (after converting JSON escape sequences to actual byte values if applicable) which are Lizp-significant are converted so that the resulting string is suitable for strparse. See strdejsonhex, strdejson, strjson, strhex, strdehex. (strdist S1 S2 [BweightDark]) => Fdist Yields the distance (inverse similarity) between string S1 and S2 as a number between 0 and 1. If optional BweightDark is non-nil, dark pixel differences are exaggerated. See strdist2, strdistbest, strdistfirst. (strdist2 S1 S2) => Fdist Yields the distance (inverse similarity) between string S1 and S2 as a number between 0 and 1. See strdist, strdistbest, strdistfirst. (strdistbest S ARR Fth [BweightDark]) => (Ibestmatch Fdist) Compares S with the strings in ARR and yields the index of the most similar element. Only strings with distances < Fth are considered; yields nil if none are found. If optional BweightDark is non-nil, dark pixel differences are exaggerated. See strdist, strdistfirst. (strdistfirst S ARR Fth [BweightDark]) => (Ifirstmatch Fdist) Compares S with the strings in ARR and yields the index of the first element with distance < Fth, or nil if none is found. If optional BweightDark is non-nil, dark pixel differences are exaggerated. See strdist, strdistbest. (streq S1 S2) => B Yields true if S1 contains precisely the same characters as S2 in the same order; yields nil otherwise. The test is case sensitive. See eq, equal, =. (streqIUA S1 S1) => B [IUA] IUA version of streq. (streqi S1 S2) => B Yields true if S1 contains precisely the same characters as S2 in the same order; yields nil otherwise. The test is case insensitive. See eq, equal, =, streq, strequ. (strequ S1 S2) => B Yields true if S1 contains precisely the same characters as S2 in the same order; yields nil otherwise. The test is case insensitive. The strings should be UTF-8 Unicode. See eq, equal, =, streq. (strfind S Ssubstr [Iright]) => Ipos Finds the 0-indexed position of Ssubstr within S using a case-sensitive Boyer-Moore algorithm. Yields the position as an integer, or nil of not found. If Iright is given, the search begins Iright chars to the right. It's not an error if Iright > the length of S (but Ssubstr would not be found). See re2dfa, dfamatch. (strfind2 S Ssubstr [Iright]) => Ipos Finds the 0-indexed position of Ssubstr within S using a case-sensitive native optimized algorithm. Yields the position as an integer, or nil of not found. If Iright is given, the search begins Iright chars to the right. It's not an error if Iright > the length of S (but Ssubstr would not be found). See re2dfa, dfamatch. (strhex S [Spre]) > Shexstr Yields a new string representing S with 2 hex digits for every byte in S. Spre specifies an optional prefix to be prepended to each 2-digit hex number. See strdehex, strjson, strdejson, strdejsonhex, strdejsonlzp. (stringp O) => B Yields true if O is a string; yields nil otherwise. See nullp, pairp, atomp, intp, floatp, numberp, reservedp, procp, externalp, arrayp. (strjson S) > Sjson Yields a new string representing S, with non-printable chars encoded as per the JSON spec. See strdejson, strhex, strdehex, strdejsonhex, strdejsonlzp. (strlen S) => I Yields the length of S. (strlower S) => S [Mutating] Modifies S by converting every character to lowercase. Note that this operation will also modify all derived substrings of Sdest (eg those created by strpart). Yields (the modified) S. See strupper. (strmatch S Oregexp) => Bmatch [StdLib] Yields true if Oregexp matches S; yields nil otherwise. See dfamatch. (strmeval S Oregexp Cclosure ENV [Odfa]) => ok [StdLib] Applies the 3-arg function Cclosure to every substring matching Oregexp. The first argument is S, the second is the starting pos in S for the match, the third is the length of the matching substring. See dfamatch. (strmfind S Oregexp ENV [Nstartpos [Odfa]]) => Pmatch [StdLib] Finds the first substring in S matching Oregexp. If Nstartpos is given, the search begins Nstartpos chars to the right in S. Yields a pair of integers, such that (strpart S (car Pmatch) (cdr Pmatch)) would yield the matching substring. See dfamatch. (strmfindall S Oregexp ENV [Odfa]) => Lmatches [StdLib] Yields a list of all substrings matching Oregexp. See dfamatch. (strmrepl S Oregexp Oexpr ENV [Odfa]) => Snew [StdLib] Yields an new string by replacing every substring matching Oregexp with the expression yielded by evaluating Oexpr. See dfamatch. (strmreplmap S Avar Lmap) => Snew [StdLib] Extends the strmrepl function with a list Lmap of elements (Oregexp Oexpr). Yields an new string by replacing every substring matching Oregexp with the expression yielded by evaluating Oexpr. When evaluating Oexpr, Avar is bound to the matched substring (unless Avar is nil). The order of the elements in Lmap matters for same-sized substrings; early elements take precedence. Example: (strmreplmap "\\\\\\ yields \\ \n" 'm '( ("\n" "NL") ((& "\" any) (mkstring (byteget m 1))) ("\\\" "\") ) ) See dfamatch. (strpad Iwidth Sstr [Spadchar]) => S Yields a new string of length abs(Iwidth). If Sstr is longer than abs(Iwidth) it is truncated on the right. Otherwise it is padded to abs(Iwidth) with spaces, or with the first character of Spadchar when that argument is given. Iwidth>0 left-aligns (pad on the right). Iwidth<0 right-aligns (pad on the left). Iwidth=0 yields "". (strpad 5 "ab") => "ab " (strpad -5 "ab") => " ab" (strpad 24 "nil") => "nil " (strpad 24 "" "-") => "------------------------" (strpad -8 "a" "0") => "0000000a" See utf8strpad, strpart. (strparse S) => O Parses S as a Lizp expression and yields the corresponding Lizp value. Signals an error if S does not represent a valid Lizp expression. See wellformed. (strpart S Iright Ilen) => Ssubstr Yields a new string, equivalent to the substring of S starting Iright chars to the right of S, containing at most Ilen chars. If Ilen is <0 or would surpass the length of S, all remaining chars in S are used. (strrepl S Sold Snew) => S [Mutating] Modifies S by replacing every substring matching Sold with Snew. The lengths of Sold and Snew must be equal. (strrev S) => Sreversed [Mutating] Modifies S by reversing it. (strset Sdest Snew [Iright]) => Sdest [Mutating] Modifies Sdest by overwriting chars with chars from Snew. Optional Iright specifies the how many positions to skip to the right in Sdest before starting the overwriting. The length of Snew plus Iright must not exceed the total length of Sdest, or an error is signaled. Note that this operation will also modify all derived substrings of Sdest. Yields (the modified) Sdest. (strupper S) => S [Mutating] Modifies S by converting every character to uppercase. Note that this operation will also modify all derived substrings of Sdest (eg those created by strpart). Yields (the modified) S. See strlower. (strwild S Swild) => B Yields true if S matches Swild. Swild can contain wildcard characters "*" and "?" and character sets enclosed in brackets as in "[c-f]". The test is not case sensitive. Backslash \ is interpreted as break character; the next character is matched with case sensitivity. (strwildIUA S Swild) => B [IUA] IUA version of strwild. (strxor Su Sv) => Su [Mutating] Modifies Su by XORing it with Sv. The lengths of Su and Sv must be equal. (switchdisable) => ok Disables context switching. (switchenable) => ok Enables context switching. (switchstatus) => Bon Yields nil if switching is disabled. (switchtothiswindow Hwnd) => Bok Makes Hwnd the foreground window, restores it if minimized, activates it and forces a redraw. Blocks until finished, or at most 1000 ms. Yields non-nil if the window was successfully switched to, or nil otherwise. (systemtext Bshow) => Boldstate Disables (if Bshow is nil) or enables system messages to the console. Yields the previous state. (tabsetcursel Hwindow) => Itabno Yields the specified tab control's selected tab index, or -1 if no tab is selected. (tabinsert Hwindow Itabno Stext) => Itabno Inserts a new tab at index Itabno in tab control Hwindow. Yields the index of the new tab, or nil on error. (tabsetcursel Hwindow Itabno) => Iprev Sets the specified tab control's selected tab index. Yields the previously selected tab index, or -1 on error. (tan Nradians) => N Yields the tangent of Nradians. (tanh N) => Ntanh Yields the hyperbolic tangent of N. (tanh2 N) => Ntanh2 Yields the square of the hyperbolic tangent of N. (tcp_server Iport [Cfilter]) [TcpLib] Listens to local port Iport for TCP/IP connections and evaluates received wellformed Lizp expressions in separate threads. Blocks indefinitely, and hence does not yield a value. The global variables TCPS_READ_TIMEOUT, TCPS_SHOW_CLIENTS, TCPS_LOGFILE, TCPS_SHOW_QUERIES, TCPS_SHOW_QUERIES and TCPS_SHOW_TIMINGS can be set dynamically. If optional 1-arg closure Cfilter is given, every expression is passed thru this function before it is evaluated. (tcpaccept Hsocket [Ntimeout]) => (Hpeersocket Speername) Blocks for at most Ntimeout seconds, waiting for an incoming connection to the given socket Hsocket. If a connection is established, a new, connected socket Hpeersocket is yielded, which can be used with the tcpread and tcpwrite functions. Hsocket must have been associated with a local name with the tcpbind function. Ntimeout is optional; defaults to 5 seconds. Ntimeout values can be nil which specifies infinite time-out. Yields nil on error or time-out, but does not signal an error. See tcpbind, tcpclose, tcpread, tcpwrite. (tcpbind Iport [Sshost]) => Hsocket Yields a new stream socket associated with the local tcp port Iport. Optional Sshost can be used to specify which local interface to use. The socket can be used with the tcpaccept function to accept incoming connections. Yields nil on error, but does not signal an error. See tcpaccept, tcpclose. (tcpclose Hsocket) => B Closes socket Hsocket. See tcpconnect. (tcpclosegrace Ssock) => Nid [TcpLib] Tries to close Ssock gracefully. Yields an asynchronous thread's id, or the atom 'notsock if Ssock is not a tcp socket. (tcpconnect Shost Iport [Ntimeout [Sshost [Isport]]]) => Hsocket Connects to host Shost on tcp port Iport. Yields a stream socket handle to the virtual circuit, if it can be established within Ntimeout seconds (defaults to 5 seconds). Yields nil on error or time-out, but does not signal an error. Optional Sshost and Isport can be used to specify the local address and port to be used. See tcpclose. (tcpnullreason) => Areason Yields an atom describing why the last call to tcpread or tcpwrite yielded nil. (tcpread Hsocket Inofbytes [Ntimeout1 Ntimeout2 [Bslowstart]]) => S Reads from tcp socket Hsocket and yields the result as a string. Ntimeout1 specifies the number of seconds to wait for the first incoming packet. Ntimeout2 specifies the number of seconds to wait for subsequent packets. The tcpread function will continue to read data as long as incoming data is available within the timeout periods, until the connection is closed by the remote end, or an error occurs, or Inofbytes bytes has been read. If no data is received before Ntimeout1 seconds, nil is returned. If the connection is gracefully closed by the remote end before any data has been received, the empty string is returned. If the connection is reset or an error occurs nil is returned. In all other cases as much data as was read is returned. Ntimeout1 defaults to 5 seconds; Ntimeout2 defaults to 1 second. The timeout values can be nil which specifies infinite time-out. Inofbytes can be nil which specifies infinitely many bytes. Inofbytes can be -1, in which case the length is taken from the first 4 bytes (see Bmsgmode in the tcpwrite function). See tcpconnect, tcpclose, tcpwrite, tcpstatus. (tcpshutdown Hsocket) => B Disables send and receive on socket Hsocket. See tcpclose. (tcpstatus Hsocket) => Lstatus Yields a list on the form (localname peername listening readable writable error) Yields nil on error or if the socket is closed, but does not signal an error. See tcpconnect. (tcpwrite Hsocket Sdata [Bmsgmode]) => B Writes Sdata to tcp socket Hsocket. If Bmsgmode is non-nil, the length of Sdata is sent along with Sdata. Yields nil on error, but does not signal an error. See tcpconnect, tcpread. (tcpwsaerrno) => Ierrno Yields the last WSA error number. (test Inof) => Aok GCP fast. (test2 Inof) => Aok GCP secure. (test3) => Aok OpenBLAS test. (textbox Hprinter Stext Nleft Ntop Nwidth Nheight Ahalign Avalign Bellipsis Bwordbreak) => ok Prints Stext to printer Hprinter in a rectangular area as specified by (Nleft Ntop Nwidth Nheight), according to the specified format options. Ahalign can be one of (left center right). Avalign can be one of (top center bottom). The currently selected font and colour for the printer is used. See textout, createfont, getprinter. (textout Hprinter Stext Nx Ny) => ok Prints Stext to printer Hprinter in the current font and colour. See textbox, createfont, getprinter. (threadeval O) => Nid Evaluates O in the current environment in a new Lizp thread. Yields the new thread's id. (threadevalevent O) => Cevent [StdLib] [Macro] Evaluates O in a new thread. Yields an event which will be signaled when the evaluation of O is completed. (threadid) => Nid Yields the current Lizp thread's id. (threadkill Ntid) => B Terminates the specified thread. Note that terminating a thread can cause undesired effects such as loss of data, memory leakage and and kernel instability. Only threads in state 2 (runable) are affected by this function. Yields true if the thread was terminated; yields nil otherwise. (threadlist) => Lthreads Yields a list of all threads. The elements in Lthreads are on the form (Nid Nstate Nfiber Nparent_tid Nprio). Nstate is one of 0 (unused), 1 (new), 2 (runable), 3 (running), 4 (done), 5 (suspended). (threadnofactive) => Inofactive Yields the number of active threads. A thread is active unless it's in state 0 (unused). (threadprioget Itid) => Iprio Yields the specified Lizp thread's (fiber) priority, or nil if Itid is invalid. (threadprioset Itid Iprio) => Bok Sets the specified Lizp thread's (fiber) priority to Iprio. (threadquit) [StdLib] Terminates the current thread. Yields no value. (threadsleep Imilliseconds) => Bok Puts the current Lizp thread (fiber) in an efficient sleep state. Imilliseconds can be nil, corresponding to infinity. In this case, the thread can be awoken by another thread using the threadprioset function. (threadsleepse Imilliseconds) => Bok Executes the threadsleep function, atomically followed by the switchenable function. (threadstate Ithread) => Istate [StdLib] Yields the state of thread Ithread, or nil if no such thread exists. Istate is one of 0 (unused), 1 (new), 2 (runable), 3 (running), 4 (done), 5 (suspended) See threadeval, threadid, threadlist. (time2secs Ltime) => Nsecs Yields an int or a float corresponding to the datetime Ltime, which should be on the form (Iyear Imonth Iday Ihours Iminutes Iseconds). See secs2time. (time2secs0 Ltime) => Isecs Yields a signed 32-bit integer corresponding to the datetime Ltime, which should be on the form (Iyear Imonth Iday Ihours Iminutes Iseconds). Yields 0 if the year in Ltime is 0 (representing 'none/nil'). Yields 1 if the integers in Ltime don't represent a valid time, or if Ltime equals (2000 1 1 0 0 0) (representing 'invalid'). The earliest and latest times representable by signed 32-bit integers are 1931-12-13_20:45:52 (intmin) and 2068-01-19_03:14:07 (intmin) respectively; note that both 2000-01-01_00:00:00 and 2000-01-01_00:00:01 yield 1, and that this time is interpreted as 'invalid' by many functions. See secs2time0. (time2secsex Ltimeex) => Fsecs [StdLib] Yields a float corresponding to the datetimeex Ltimeex, which should be on the form (Iyear Imonth Iday Ihours Iminutes Iseconds Imillisecs). See time2secs, secs2time. (time2str Ltime [Bdashes]) => Stime [StdLib] Yields a rfc 822-conformant date-and-time string corresponding to Ltime. The produced string is on the form "DDD, d MMM yyyy hh:mm:ss sbbbb" where sbbbb is f.x. +0200. If optional Bdashes is non-nil, dashes (-) is used instead of space to separate the date parts. Dashes are used for cookie expiration dates. (time2unix [Llocaltime]) => Fseconds [StdLib] Yields the number of seconds between Llocaltime and 1 January 1970 as a float. If Llocaltime is nil or omitted, the current datetimeex is used. See unix2time. (time2utc Ltime [Bdashes]) => Sutc [StdLib] Yields a rfc 822-conformant date-and-time string corresponding to Ltime. Ltime is taken to be in local time; the produced string is converted to UTC. If optional Bdashes is non-nil, dashes (-) is used instead of space to separate the date parts. Dashes are used for cookie expiration dates. (time2week Ldatetime) => Iweek [StdLib] Yields the ISO 8601 week number corresponding Ldatetime. (timeeval O) => Oresult Evaluates O in the current environment and yields the value of the evaluation. Prints timing info (wall-clock) to the console. See eval. (timestamp) => Fseconds Yields the current value of the performance counter in seconds as a float. See unixtime, clock, datetime. (tokenmkprimary Htoken) => HprimaryToken Yields a primary duplicate token of Htoken, suitable for the start function. (trim S) => Strimmed Yields a copy of S with white-space at the start and end removed. (trunc N) => I Yields an integer by truncating (stripping the decimal fraction part from) N. (trunc -1.9) => -1. See div, which is (trunc (/ N1 N2)). See floor, ceil, round. (tvdeleteitem Htreeview Iitem) => Bok Deletes item Iitem from treeview Htreeview. If Iitem is the special value TVI_ROOT (hex FFFF0000) all items are deleted. (tvensurevisibleitem Htreeview Iitem) => Bok Ensures that item Iitem in treeview Htreeview is visible, expanding and scrolling as necessary. (tvgetchild Htreeview Iitem) => Iitem Yields the first child of item Iitem in treeview Htreeview. (tvgetcount Htreeview) => Inof Yields the number of items in treeview Htreeview. (tvgetnext Htreeview Iitem) => Iitem Yields the next sibling of item Iitem in treeview Htreeview. (tvgetparent Htreeview Iitem) => Iitem Yields the parent of item Iitem in treeview Htreeview. (tvgetprevious Htreeview Iitem) => Iitem Yields the previous sibling of item Iitem in treeview Htreeview. (tvgetroot Htreeview) => Iitem Yields the root item of treeview Htreeview. (tvgetselected Htreeview) => Iitem Yields the currently selected item in treeview Htreeview, or nil on error or if no item is selected. (tvinsertitem Htreeview Iparent Iafter Stext BhasChildren IlParam) => Itvitem Inserts a new item into the specified tree-view. Yields an item identifier. Iparent and Iafter can be the return values of previous calls to tvinsertitem, or one of the special values 0 (no parent), TVI_ROOT (hex FFFF0000), TVI_FIRST (hex FFFF0001), TVI_LAST (hex FFFF0002) or TVI_SORT (hex FFFF0003). (tvitemget TVI Aattrib) => Ovalue Yields attribute Aattrib from treeview item TVI. Aattrib should be one of mask, hItem, state, stateMask, pszText, cchTextMax, iImage, cChildren, lParam. TVI is received as the 4th argument to the action function for a listview window processing *beginlabeledit or *endlabeledit. (tvitemgetnew TVI2 Aattrib) => Ovalue Yields attribute Aattrib from the new treeview item in TVI2. Aattrib should be one of mask, hItem, state, stateMask, pszText, cchTextMax, iImage, cChildren, lParam. TVI2 is received as the 4th argument to the action function for a listview window processing *itemexpanding, *itemexpanded, *selchanging, *selchanged or *singleexpand. (tvitemgetold TVI2 Aattrib) => Ovalue Yields attribute Aattrib from the old treeview item in TVI2. Aattrib should be one of mask, hItem, state, stateMask, pszText, cchTextMax, iImage, cChildren, lParam. TVI2 is received as the 4th argument to the action function for a listview window processing *itemexpanding, *itemexpanded, *selchanging, *selchanged or *singleexpand. (tvselectitem Htreeview Iitem) => Bok Selects item Iitem in treeview Htreeview. (tvsetitemchildren Htreeview Iitem BhasChildren) => Bok Sets the hasChildren attribute of item Iitem in treeview Htreeview to BhasChildren. (tvsetitemdata Htreeview Iitem Idata) => Bok Sets the lParam attribute of item Iitem in treeview Htreeview to Idata. (tvsetitemtext Htreeview Iitem Stext) => Bok Sets the text attribute of item Iitem in treeview Htreeview to Stext. (tzget) => Ltimezone Yields a list (Ibias Sname) where Ibias is the offset from UTC time in seconds and Sname is the time zone name. UTC = local_time + bias. (udpbind Iport [Sshost]) => Hsocket Yields a new datagram socket associated with the local udp port Iport. Optional Sshost can be used to specify which local interface to use. This is normally used by servers for incoming connections. Yields nil on error, but does not signal an error. See udpconnect, udpclose. See tcpclose. (udpconnect Shost Iport) => Hsocket Yields a datagram socket with default destination address host Shost on udp port Iport. This is normally used by clients for outgoing connections. Yields nil on error, but does not signal an error. See udpbind, udpclose. See tcpread. (udpreadfrom Hsocket Inofbytes [Ntimeout]) => (Sdata ScliHost IcliPort) Reads one (1) datagram from udp socket Hsocket and yields the result as a string, together with the name (ip address and port) of the remote endpoint. Ntimeout specifies the number of seconds to wait for the incoming packet. The udpreadrfom function will read at most Inofbytes bytes; excess bytes are discarded. If no data is received before Ntimeout seconds, nil is returned. If the connection is reset or an error occurs nil is returned. In all other cases as much data as was read is returned. Ntimeout defaults to 5 seconds. Ntimeout can be nil which specifies infinite time-out. Ntimeout can be -1 which specifies that a thread-blocking kernel time-out should be used, with a time-out value as per default (infinite) or as specified by the socksetrxto function. Inofbytes can be nil which specifies all bytes in the datagram. See udpread, socksetrxto. (udpsendto Hsocket Sdata Shost Iport) => Hsocket Writes Sdata as a datagram to host Shost port Iport using socket Hsocket. Hsocket can be nil, in which case a new udp socket is created. If Hsocket is locally unbound, udpsendto binds a local endpoint to it. Use udpstatus to retrieve the local endpoint. The remote endpoint specified by Shost and Sport is used for the Sdata datagram regardless of whether Hsocket is remotely bound. Yields Hsocket on success. Use udpstatus to get the local port. Yields nil on error, but does not signal an error. See tcpshutdown. See tcpstatus. See tcpwrite. (uint2float I) => F Yields a float representation of I, when I is treated as an unsigned int. See int2float, round, trunc, float2uint, float2int. (unassigned) => Yields the special value . See set, setq, define, let, letrec, lambda, unset. (uni2ansi Suni) > Sansi Yields an ANSI version of the Unicode (UTF-16) string Suni. (union L1 L2) => L [StdLib] Yields a new list with every unique element from L1 and L2. See complement, intersection. (unique L) => Lunique Yields a new, sorted list consisting of the elements of L with duplicates (according to equal) removed. (uniqueIUA L) => Lunique [IUA] IUA version of unique. (uniquei L) => Lunique Yields a new, sorted list consisting of the elements of L with duplicates removed. Case insensitive. (uniqueu L) => Lunique Yields a new, sorted list consisting of the elements of L with duplicates removed. Case insensitive. Strings should be UTF-8 Unicode. (unix2time Nseconds) => Ldatetimeex [StdLib] Yields the local datetime corresponding to 1 January 1970 plus Nseconds as a datetimeex. See time2unix. (unixtime) => Fseconds Yields the number of seconds since 1 January 1970 as a float. See timestamp, clock, datetime. (unquote O) -> (unquote O) [Special form] Yields the the expression (unquote O), or ,O for short. O is evaluated if the form is in a quasiquote form. (unquote-splicing O) -> (unquote-splicing O) [Special form] Yields the the expression (unquote-splicing O), or ,@O for short. O is evaluated if the form is in a quasiquote form. (unset Ovar) => ok [Mutating] Rebinds the existing variable that Ovar evaluates to to the special value , which in effects unbinds the variable. If the name that Ovar evaluates to is unbound, an error is signaled. See set, setq, define, let, letrec, lambda, unassigned. (until Opredicate Obody*) => ok [Syntactic sugar] Evaluates Obody* at least once, until Opredicate yields non-nil. See while. (updatewindow Hwindow) => B Updates the client area of Hwindow if the update region is not empty. (urlenc S [Bextlogic) => Surl [MimeLib] Encodes S using only ASCII letters, digits and "-". Extended characters which were converted or skipped are appended to the resulting string, prepended with "_" and encoded using the mp2str function with base 62. (usleep Nusecs) => Bok Performs a busy-loop delay for approximately Nusecs microseconds. Blocks fiber switches while waiting. See sleep, threadsleep. (utc2time Sutc) => Ltime [StdLib] Yields a datetime Ltime from a rfc 822-conformant date-and-time string Sutc, or nil if Sutc is not valid. Sutc is converted to the local time zone. (utf162utf8 Sutf16) > Sutf8 Yields a UTF-8 version of the UTF-16 string Sutf16. (utf82ansi Sutf8) > Sansi Yields an ANSI version of the UTF-8 string Sutf8. (utf82ansiex Sutf8) > Sansi Yields an ANSI version of the UTF-8 string Sutf8. Only characters mapping to ASCII 128-255 are converted; all other UTF-8 characters are treated as (possibly multibyte) unencoded ASCII strings. See ansi2utf8ex. (utf82utf16 Sutf8) > Sutf16 Yields a UTF-16 version of the UTF-8 string Sutf8. (utf8strlen Sutf8) => I Yields the number of characters in Sutf8. Yields nil if Sutf8 is not a valid UTF-8 string. (utf8strpad Iwidth Sstr [Spadchar]) => S [StdLib] UTF-8 version of strpad. Yields nil if Sutf8 is not a valid UTF-8 string. (strpart Sutf8 Iright Ilen) => Ssubstr UTF-8 variant of strpart. Yields nil if Sutf8 is not a valid UTF-8 string. (ver) => S Yields a Lizp version information string. (version) => N [StdLib] Yields the version number of this Lizp executable as a decimal number. (vkcode Aname) => Icode [StdLib] Yields the virtual key code corresponding to the given name. If Aname is omitted, yields a list of all virtual key codes. (vmtest Imegs) => Bok Tries to allocate and free Imegs megabytes of virtual memory. (waitall Levents Imillisecs) => Bsignaled [StdLib] Waits for each event in Levents to reach a signaled state. Yields nil if the wait timed out. (waitforinputidle Ipid Itimeout) => Bok Waits until the given process is waiting for user input with no input pending, or until the timeout interval (milliseconds) has elapsed. Yields nil on timeout or error. (wavplay Ichannels Irate Ibits Iloops Swavedata [Hwavedev]) => Hwavedev Plays the wave defined by Swavedata (little-endian, one sample/channel round-robin) asynchronously. Swavedata should have Ichannels channels, Irate sample rate, Ibits bits per sample. Yields a handle to the opened wave-out device. See wavreset. (wavreset Hwavedev) => ok Resets (stops playback) the given wave-out device. (wellformed S) => B Yields true if S is a well-formed Lizp string. Yields nil otherwise. See strparse. (while Opredicate Obody*) => ok [Special form] Evaluates Obody* for side-effects as long as Opredicate evaluates to non-nil. If Opredicate evaluates to nil, Obody* is not evaluated. Always yields the atom ok (non-nil), also when the body never runs. See foreach. (whoami) => Susername Yields the current threads' user name. (whois S [Braw [Sdnssrv [Sshost [Isport [Bno-personal]]]]]) => Stext [TcpLib] Queries several RIPE and DNS databases in parallel for information on string S, which can be anything (ip address, host, name, handle, number, person etc). Yields the parsed information as a comma- and CR+LF-separated string, or as a raw, LF-separated RIPE db output string if Braw is non-nil. Yields nil if nothing was found or if an error occurred. Optional Sdnssrv can be used to specify which DNS server to use. Optional Sshost and Isport can be used to specify the local address and port to use. Optional Bno-personal can be non-nil to exclude Person and Role records. (windowcopy Hwindow) > Bok Sends WM_COPY to the specified window. (wmodadd Inr Imod Iweight Bunary) => Iwmodsum [StdLib] Yields the weighted modulo sum R of the digits in Inr. A check digit is normally computed as (mod (- Imod R) Imod) after checking for special cases such as (= R 0). If Bunary is non-nil, the partial sums are added as unary digits. Note that both Inr and Iweight can be strings (to allow for numbers starting with zeroes). (yellowbox Stext Howner [nil [Apos [IfontSize]]]) => Hwnd [StdLib] (yellowbox Stext Howner Nsecs [Apos [IfontSize]]) => ok [StdLib] (yellowbox Stext Howner true [Apos [IfontSize]]) => ok [StdLib] Displays an yellow, captionless box with one line of text. If the first form is used, returns immediately and yields a handle to the window. If the second form is used, blocks for Isecs seconds, then removes the window. If the third form is used, blocks with (threadsleep nil), then removes the window. Apos requires Howner, and can be one of the atoms (center top topleft bottom). (yield) => ok [Special form] Immediately yields execution to next runnable Lizp thread. (§allfrom Nfrom Nstep) => Lstream [StreamLib] Yields a stream list with elements Nfrom, Nfrom+Nstep, Nfrom+2*Nstep, ... indefinitely. (§car Pstream) => Ocar [StreamLib] Yields the car of stream pair Pstream. (§cdr Pstream) => Ocdr [StreamLib] Yields the cdr of stream pair Pstream. (§cons Ocar Ocdr) => Pstream [StreamLib] [Macro] [Special form] Yields a new stream pair. See §car, §cdr. (§filter Cpredicate Lstream) => LstreamRes [StreamLib] Yields a new stream list consisting of all elements from Lstream for which the 1-arg function Cpredicate yields non-nil. LstreamRes is ordered as Lstream. (§foreach Cclosure Lstream) => ok [StreamLib] Applies the 1-argument function Cclosure to each element in Lstrem. (§integral §dy Ny0 Ndx) => Ly [StreamLib] Yields the stream of values y1=Ny0, y2=y1+§dy*Ndx, ..., recursively for all elements in §dy. The §dy stream argument should be delayed using the delay function. Example: (§nth (round (* pi 1000)) (§integral (delay (§map sin (§allfrom 0 0.001))) 0 0.001)) See §solve. (§map Cclosure [Lstream ...]) => LstreamRes [StreamLib] Yields a new stream list with every element in Lstream transformed by applying Cclosure.\r\n Cclosure should take as many arguments as streams provided. (§nth I Lstream) => O [StreamLib] Yields element no I (0-based index) from stream Lstream. (§nthcar I Lstream) => Lhead [StreamLib] Yields a list consisting of the I first elements of Lstream. (§solve Cdy/dx Ny0 Ndx) => Ly [StreamLib] Yields a solution F to the differential equation dy/dx=F(x), F(0)=y0, where F is the unknown function and Cdy/dx is given as a closure of 1 arg, the unknown function value y=F(x). Yields the solution as stream list of y values, one for each Ndx interval. Example: (§nth 1000 (§solve (lambda (y) y) 1 0.001)) See §integral.