In order of importance:
BUG: bugfix
FEAT: added or changed feature, such as arguments, feature, return values
DOC: changed docs
SIDE: added or changed sideeffect
IMPL: improved implementation without changing one of the above
This chapter is for now only for my fellows out there who already test the pre-release versions. From ver 1.0 on it will be replaced by fixes >1.0
Release note: This file provides a summary of significant changes between versions and sub-versions of the STDLIB, not necessarily a complete list of each modification. If you'd like more detailed information, please consult the sources or have a look at the mail archive.
Version numbering below 1.0 is relevant for the docs only, the signatures below 0.5 and the sources below 0.4 are considered experimental.
It covers only the functions described in STDLIB.HLP and not those helpers which are only in the LSP files. Those will change freqently until 1.0, esp the IMPL and DOCLSP.
Changes in internal functions (STD-%) are generally not documented.
FEAT:
added NTH-COMBINATIONS
added STD-ZOOM-IF-APPLY
BUG:
fixed NTH-PERMUTATIONS
fixed STD-SSVAL
by David Kozina:
fixed STD-LAYER-PUT-COLOR: 256 (bylayer) disallowed
FEAT:
improved STD-GET-DRIVE-LIST without loaded ARX,
STD-FILE-COPY tries doslib dynamically, but doesn't check for successful copying anymore.
added STD-ENTMAKE-XRECORD
added DICT-GET, DICT-PUT, DICT-LIST->XDATA, DICT->XDATA->LIST
added STD-STRING-WC-REPLACE
added NTH-PERMUTATION, NTH-PERMUTATIONS
added STDLIB-BETA-P, STDLIB-RELEASE-P
BUG:
fixed STD-LAYER-PUT-COLOR for <=R14
fixed STD-SSVAL, thanks to David Kozina.
by David Kozina:
fixed STD-ENTMAKE-MLINESTYLE
IMPL:
improved FACTORIAL: lookup table version (big, but fast)
improved STD-RANDOMIZE
FEAT:
changed STD-LAYER-MAKE: keep old properties.
only assure that it exists, is current and on.
added STD-%TIMER-MS-STR to STDTIME
added layer arg as list to layer functions in STDTBL, (thanks David)
improved STD-%LOAD-EXTERNAL-ACAD
STD-ZOOM-IF: added DCLACTIVE error.
STD-ZOOM-EXTENTS: DCLACTIVE support with VLA methods
added STD-%ZOOM-IF-APPLY helper
fixed STD-%VLAX-GET-ACAD-OBJECT to support multiple copies of ACAD
BUG:
fixed STD-ENTMAKE-PFACE for explicit layer
fixed STD-FUNCTIONP for non-vl systems (again).
this time less stricter. respect symbols evaluating to function lists. This bug affected mainly error handling (STD-VAR-PUSH ...)
fixed %e and %E in *TIMER-FORMAT-STRING* for STD-TIME
fixed STD-FILE-COPY, STD-FILE-BACKUP (as dependant) for VLISP
IMPL:
UTIL:
added DICT.LSP to STDALL.LSP
FEAT:
renamed STD-%ADD-MESSAGES to STD-MSG-ADD
added STD-CANONIZE-DATLST (still not fully okay), STD-CANONIZE-CDATE is bad by design.
added layer arg to STD-ENTMAKE-SEQEND
all modules are STDINIT-IDE independent,
added std-%(un)protect-assign wrappers
BUG:
fixed STDERROR for alisp: (std-functionp '*std-error*) problem, sym or list check.
fixed STD-TIME and its format strings specifiers %E,%e:
STD-%FORMAT-DATE-STRING with relative cdates
fixed STD-GETPTS for LWPOLYLINE, z != 0
fixed ENTMAKE VERTEX attributes (layer, color, ...) and SEQEND
fixed last segment for STD-ENTMAKE-POLYLINE,
STD-ENTMAKE-LWPOLYLINE. it broke June 21, 2000
IMPL:
added a space to (STD-ERROR) output before the quit/exit message.
STD-%GROUP-ONLY accepts lists of dxf groups also.
UTIL:
fixed test/RUNTEST.LSP for R15
FEAT:
renamed STD-FIXANG360 to STD-FIXANG
STD-ARC->BUL: added 4th argument to fix and clarify it.
The error was in asuming that the negative range of tan is symetric, but a negative angle was flipped (=> cot).
Copied STD-DTR,STD-RTD, *PI/2*,*PI/4*,*PI2* from STDMATH, to STDPOINT as well.
STD-ARCLEN is now absolute
renamed *STDLIB-DATE* to *STDLIB-CDATE*
changed *STDLIB-DATE* format from CDATE to DATLST
The old cdate format has some weird precision loss in VLISP 5, so we change to DATLST format. This might require some changes on the user side. The < comparable number is now *STDLIB-CDATE*, but this might be unreliable, until the cause of the problem is found.
moved STD-GETPTS, STD-GET-GETPTS-VERTEXMASK, STD-SET-GETPTS-VERTEXMASK
from STDPOINT to STDENT
BUG:
fixed STD-ARC->ANG, STD-ARC->SEG for UCS (the v0.5 fix was bad)
fixed STD-ENTMAKE-ENDBLK, STD-ENTMAKE-SEQEND
fixed STD-GETPTS for PFACE (no facerecords anymore)
IMPL:
changed STD-ARC->ANG (but still wrong),
STD-ARC->SEG, STD-ARC->BUL
added STD-%ARC->BUL-CCW
improved STD-ASIN
UTIL:
better make-stdall.pl: STDALL.LSP includes now the filenames.
fixed stdinit-upd.pl for new *STDLIB-CDATE*, *STDLIB-DATE*
FEAT:
STD-RESTORE-UCS allow arbitrary strings for "World", "Prev" args
(more flexibility, less stability)
BUG:
fixed STD-RESTORE-UCS transparent bug (command "'_UCS")
fixed STD-MSG in non-A2000 special versions with STDLOCAL, mainly VLISP.
fixed std-%force-3dpoint, used in various ENTMAKE calls.
DOC:
clarified STD-ARC->BUL, new example.
Lucida Console font for Code.
msg.pl 0.5 - message string maintenance
FEAT:
added STD-SETNTH, STD-RPLACE is deprecated and will be removed later
added stdlib loader message on *LOAD-VERBOSE*
STD-CDATE->TIME-STRING (resp. std-%format-date-string) uses the current locale comma delimiter
added run-time fileobj<->filename associations:
STD-FILE->FILENAME, STD-OPEN-FILENAME->FILE, STD-OPEN-FILENAME-P
added STD-STRLIST-IMATCH
renamed STD-ENTMAKE-PFACE to STD-ENTMAKE-PFACE0,
the face indices in STD-ENTMAKE-PFACE are now one-based
STD-ENTMAKE-PFACE0 is depricated, prints warning on *VERBOSE*
added std-%all-significant-chars
BUG:
fixed std-%format-date-string for "sss", "m", "n", "d", "s"
STDINIT2, fixed init: std-%top-level-init called only once
fixed std-%open-warn-close
fixed STD-FILE-BACKUP: close open files
fixed STD-FILENAME-UPCASE: upcase short extensions
fixed STD-%ARC->BUL, STD-ARC->BUL
clarified (wrong) definition for STD-BUL->ANG, wrong sign
this returns the same value as in the FAQ and in all versions up to 0.4007. 0.4008-0.4009 were wrong
fixed STD-ARC->SEG: WCS values, not UCS dependent anymore
finally all segment functions are UCS independent.
fixed STD-TAN accuracy: correct return of 0.0 and *INFINITY*
fixed (STD-ENTMAKE-PLINE nil segs) for closed segs
fixed STD-MSG for non-a2000 (this came 0.4007)
IMPL:
replaced old STD-STRPOS by Serge's BM-SEARCH (Boyer-Moore)
sorted STD-MSG strings, added ;|MSGxx;| message markers for external preprocessing,
global *VERBOSE*, *LOAD-VERBOSE* are restored correctly after loading.
renamed *STD:LOCALIZED-COLOR-TABLE* to *STD:LOCALIZED-COLOR-NAMES*
added *STD:USER-COLOR-NAMES* and five european translations
STDINIT2.LSP exports its modulename to avoid double initializations when loading all project sources.
stdlib-pp.pl writes the version into the first src line
BUG:
fixed STD-ZOOM-IF, STD-INSIDE-POLY-P for different UCS
several fixes for A2000 without ActiveX RTS (no safearrays):
STD-LOGCOUNT, STDLOCAL startup, STD-VLA-P
IMPL:
removed some minor dependencies, namely STD-PRINC, STD-ENTMAKE-LAYER,
STD-ASSERT to shrink packaged version sizes:
STD-ERROR and STD-BREAK (std-princ), STD-VAR-INIT (std-assert),
STD-LAYER-ADD and STD-RESTORE-LAYER (entmake)
FEAT:
Y2K Problem: should we change *DATE-FORMAT-STRING* to 4 letter years?
:ENGLISH "m/d/yyyy", other: "dd.mm.yyyy"
currently STD-TODAY-LONG uses "yyyy", STD-TODAY "yy"
STD-BUL->ANG: fixed sign
improved STD-INSIDE-POLY-P
adsrx 0.4.023
ENTMAKE: fixed '(10 . (...)) for FelixCad to '(10 ...)
STDTBL: some minor FCAD fixes
STDFILE, STDINIT2, std-%require-external-ads:
fixed a major r15 problem: endless load loop
FILEEXT loading after fix-module-path (this might help also)
STD-FILENAME-MKTEMP: fixed std-make-pathname call
stdinit-upd.pl: y2k bugfix
ENTMAKE: STD-ENTMAKE-LWPOLYLINE fixes
STD-TBL-LAYER: fixed for 1st arg="*"
STD-VLA-P: changed to dynamic version, not cached, and check for
the actual "AutoCAD.Application" object (wrong RTS, ...)
STD-VAR-PUSH, STD-VAR-INIT: fixed error handling when a sysvar need
not to be changed at the start but was changed during the call!
fixed annoying bug in STD-RESTORE-UCS: broke on (STD-VAR-INIT '((:UCS)))
fixed STD-LOGCOUNT for A2000
reported by Raymond Barlow:
fixed STD-ACOMP-CTRL-INTERCEPTOR in STD-BLOCK-UPDATE, STDMISC
added STD-ENTMAKE-STYLE, STD-ENTMAKE-SEQEND,
new STD-DCLSTRING->STRLIST, STD-STRLIST->DCLSTRING,
STD-%ADD-MESSAGES, STD-SET-USER-LANGUAGE
new STDLIB-VERSION, STD-FINDFILE-EXTS, STD-FORCE3D,
STD-INSIDE-POLY-P, STD-POLY-INNER-PT
STD-ZOOM-PTS needs UCS points (not WCS anymore)
improved STD-ENTMAKE-LAYER error handling
added more text insertion points to entmake and fixed some:
std-entmake-block, std-entmake-attdef
changed STD-SUBENTS (now in STDENT, not in STDPOINT)
changed verbosity rationale:
The two verbose levels (*VERBOSE* *LOAD-VERBOSE*)
are now off for the released versions, and only on for the latest version.
reverse tables (now in normal DB order) returned by STD-TBL-LAYER,
STD-TBL, STD-TBL-PROPS
STDLOCAL: better and faster message handling (STD-MSG)
A2000 binary search in safearray; better structured message tables
A2000 optimized STDLIB15.FAS provided: no ARX needed at startup
changed STD-%STRING-8BIT->OCTAL to put the double-quote around it.
so it's a fully portable string-unexpand now, reverse to princ
needed for the STDLOCAL message tables. not destructive anymore.
renamed STD-%LOCAL-LANGUAGE to STD-USER-LANGUAGE
temp. added STD-SAFEARRAY-BSEARCH to STDLOCAL
by David Kozina:
added STD-ENTMAKE-ARC, STD-ENTMAKE-ELLIPSE, STD-ENTMAKE-ENDBLK,
STD-ENTMAKE-GROUP, STD-ENTMAKE-HATCH (non-associative only),
STD-ENTMAKE-SOLID, STD-ENTMAKE-SPLINE, STD-ENTMAKE-MLINE,
added Emacs AutoLISP mode line and RCS ID's
provided Emacs TAGS file
added parameter to std-%entmake-template and std-%entmake-call
Makefile, automatic ftp upload (ftp-up.btm)
STDLOCAL: complete rehash of message tables,
put dynamic constants into STD-%LOCALE-DEFINE-CONSTANTS
A2000 specific STD-%TRANSLATE-STRING-INTO
never packaged, only partially in latest/
adsrx 0.405_022 (0.4.022)
added STD-LAYER-* methods
added ADSrx STD-FILE-DELETE for quiet std-%delete-mktemp on plain alisp
adsrx 0.400_021
*REGISTRY-VERSION* 0.4
BUG:
std-%require-external-ads (needed by REGISTRY.LSP)
registry-descendents in adsrx version
by Masami Chikahiro:
fixed STD-TOUPPER, STD-TOLOWER for eastern codepages
by Raymond Barlow:
added STD-DOSLIB-P to STDINIT-IDE.LSP
BUG:
added STD-DIMSTR to STDINIT-IDE.LSP
BUG:
fixed STD-TIME with %E, %e
detected bug in std-%format-date-string for seconds: "s" "ss" "sss"
and %e,%E in *TIMER-FORMAT-STRING* (not fixed!)
improved std-%break-print-var, not to shadow local vars examined
fixed STD-LAYER-ON-P with not existing layers
fixed STD-RESTORE-LAYER with not existing layers on std-var-push ':LAYER
added COMBINATIONS module with PERMUTATE, PERMUTATIONS,
PERMUTATIONS-COUNT, COMBINATIONS, COMBINATIONS-COUNT,
MAKE-ITERATOR, NEXT-ITERATION (which go possibly into a seperate module)
renamed STD-FACULTY to FACTORIAL
moved FACTORIAL from STDMATH to external module COMBINATIONS
added STD-LOGCOUNT
changed STD-BREAK to print vars with *DEBUG* as well,
if not *BREAK* no user-input is required, but vars are printed.
(as handy debug print)
added std-%find-error-key to STDERROR to find original error stack frame keys
added STD-EVENP to STDMATH
linked STD-SOME and STD-EVERY directly instead of run-time version
dispatching.
improved STD-BREAK for R2000
fixed CMDECHO non-verbosity in STD-VAR-RESTORE
by Michael Puckett:
improved COMBINATIONS
by Serge Pashkov:
improved COMBINATIONS, COMBINATIONS-COUNT (v1.5)
ADS extension v0.400.019 (fixed STD-%DIRECTORY-FILES, see adsrx.txt)
*FILEEXT-VERSION* 0.62007
created contrib subdirectory
BUG:
fixed delayed loading in STDLIB-PROJECT-INIT, delay on *DEBUG* also
STD-REQUIRE: use STD-LOAD instead of STD-LOAD-EXTERNAL
STDTBL: added require STDMISC
fixed error handler for empty (:GRVECS) and UCS in perspective
viewports, still known problems with nested :TRANSPARENT usage
silent undo handling now.
fixed STD-%DIRECTORY-FILES in external adsrx modules
by David Kozina:
STD-ENTMAKE-LEADER
by Ralph Gimenez:
std-%top-level-1 when redefining std-randomize
FEAT:
added STDINIT-IDE.LSP, *STDLIB-SYMS*,
std-%unprotect-allsyms, std-%protect-allsyms
STD-VAR-(PUSH|POP) + error handler:
added (:REDRAW): do a complete redraw at init and restore
added (:LAYER) without arg: save/restore CLAYER (current layer)
changed (:GRVECS [vecs-sym | clear-func]):
provide either a symbol evaluating to a list of temp. vecs for GRVECS to
be called, or a user-defined clear function to be evaluated on restore.
STD-VAR-INIT:
added (command "_.UNDO" "_Begin"),
added (setq *ENTGET-CACHE* nil), thanks to Ralph Gimenez!
this was the cause of some subtle errors.
STD-STRING-(LEFT|RIGHT)-PAD-CHAR don't cut, STD-L|RPAD do cut strings
added STD-SEG-P
new module STDPOINT: moved point and geometry code (segments, bulges,
circles, points) from STDLIST and STDENT to STDPOINT
added STD-PT+, STD-PT-
added functionality of STD-RESTORE-LAYER
added STD-EVERY, STD-EVERY-N, STD-SOME, STD-SOME-N
changed STD-ASSERT to take a second argument: msg
by David Kozina:
STDDICT and STDCOMB modules contributed, these will change.
IMPL:
STD-STRLIST->STRING is different from std-strjoin, so that the former requires
the first arg to be of type std-string-list-p, std-strjoin not.
STD-STRLIST->CSSTRING requires std-string-list-p as well now.
STD-CSSTRING->STRLIST splits the string at a comma, a space and tab, not at
commas only as before
All three functions were documented as such but not implemented.
STD-VAR-(PUSH|POP): sysvars are only changed on different values. This might
lead to less system changes and forced regenerations.
removed STDSTR dependency for STD-%PROTECT-ASSIGN, STD-%UNPROTECT-ASSIGN,
improved performance of those
removed STDINIT top-level dependency for STDLIST
renamed GEOM-AREA2 to STD-%AREAx2
GEOM-CENTROID2Dx3 to STD-%CENTROID2Dx3
GEOM-CENTROID2D to STD-CENTROID-2D
GEOM-VECTOR-MEAN to STD-VECTOR-MEAN
GEOM-VECTOR-MEAN3D to STD-VECTOR-MEAN-3D
ADS extensions v0.400-0016 for R2000, R14arx, R13arx, R12dos, R12win,
ICAD (unfixed problems in registry-write)
BUG:
stdlib-pp.pl #+ VL for VLISP fixed (6.6.99)
RUNTEST.LSP fixed
STD-FORCE-EXTENSION
STD-FUNCTIONP for EXRXSUBR
STD-DIRECTORY-FILES for paths only ("C:/ACAD/")
STD-VER-NUM, STD-ACADVER, STD-VER-ACADSUBVERSION fixed for FCAD
STD-FILENAME-UPCASE
various top-level FCAD fixes (STDINIT2, ...)
unfixed bug in STD-MERGE, replaced by the old std-%merge-random
by Serge Pashkov:
*STDLIB-PATH* initialisation
FEAT:
added *STDLIB-ADS-VERSION*
added STDLIB-PROJECT-INIT
better STD-DCL-YESNO
better delayed modules printing with (std-modules), but still not fixed
changed STD-%ORDERED-UNION to STD-ORDERED-UNION (fully supported and documented)
changed STD-GLOB-FILES to return the given path prefix as well
removed STD-VALID-CHAR,STD-VALID-NAME,*LOAD-EXTENSIONS*
better *MAX-ARGS-LIMIT*
added STD-MSG: support for translated messages in STDINPUT
added STD-FILE-ATTRIB (r14arx, doslib only)
added STD-GET-LOCALE-INFO with 118 options (r14arx only)
added STD-VER-NAME to support clones
added STD-MODULE-PATHNAME and fixed some loading funcs
hardwired STD-MODULES to return only uppercase strings (ADS limitation)
added FCAD 4 support
IMPL:
renamed *STD-MKTEMP* to *STD:MKTEMP*
moved STD-SYMBOL-NAME, removed STDLIST dependency from STDINIT
simplified STDLOCAL handling in projects
store/get *MODULE-PATH*, *STDLIB-PATH* in CFG file via setcfg
implemented *MAX-ARGS-LIMITS* checking for all apply calls, => error
started with STD-SELECT-FOLDER
fixed caching for STD-ACADPLATFORM, STD-ACADVER, STD-VER-LANGUAGE
changed treatment of error strings: no seperate language specific error
functions anymore.
REGISTRY-ACAD-PRODUCT-KEY for not VL systems
FILEEXT.FAS v0.56,v0.57,v0.58,v0.59,v0.60,v0.61
BINIO.FAS v2.25
INIFILE.FAS v0.13
BUG:
STD-STRING-REMOVE-COMMENTS, STD-STRCASE,
:TRANSPARENT processing in std-var-init et al
STD-FILE-SYSTIME for VLISP and in FILEEXT.FAS
PROVIDE in external FAS module fixed
STD-FORCE-PATH,
STD-FILENAME-SPLIT: "/path/" returned the wrong ("/" "path" "")
STD-FILENAME-SPLIT: "./path/" returned the wrong ("" "" "./path/")
STD-GLOB-FILES, STD-GLOB-DIRS
STD-FILE-NEWER-P
std-%write-list with dotted lists
STD-SLEEP, std-file-systime, std-file-modtime
by Serge Pashkov:
STD-STRING->WSTRING, STD-ENTAB, STD-DETAB,
std-%filename-fix-path, STD-FILENAME-UPCASE, STD-RESTORE-UNDO,
STD-TBL-PROPS, std-%color-num->string, *ENTITY-TYPE-BREAKABLE*
STD-ENTCHG, STD-INP-EDIT-STRING, STD-SSMAP, STD-SSLIST
std-symbol-value
FEAT:
STD-FILENAME-UPCASE for all path parts
STD-TODAY, STD-TODAY-LONG standalone, std-%standalone-actual-datlst added
removed STD-GLOB
renamed STD-STRLST-MATCH to STD-STRLIST-MATCH
added STD-SAME-FILES-P, STD-TRUENAME, STD-CURRENT-DRIVE
renamed STD-FCPATH to STD-CURRENT-PATH
renamed STD-%FILE-MODTIME to STD-FILE-MODTIME
changed STD-PRINC-TO to print full trees to files
changed STD-TIMER-FINISH to STD-TIMER-STOP and added one argument
accept pathnames for STD-REQUIRE
added STD-FINDFILE, STD-FT-LINES, STD-FT-NTH-LINE
provided std-%showfile-dialog with size optimization and action hook
provided std-%directory-files for plain alisp
added doslib support
added STD-LIST-LENGTH, STD-ENTMAKE-LEADER
removed *ENTITY-TYPE-LINEAR*
changed STD-READ-FILE-STRINGS: return empty lines!
changed STD-REQUIRE: delayed modules on *STD:%PROJECT*
added STD-ISCONTROL for DCL
added STD-VER-R2000-P, STD-DCL-YESNO
added *STD:SLASH-CHARS*
by David Kozina:
added STD-ENTMAKE-LINE
by Serge Pashkov:
STD-BUL->ANG change not yet checked (negative return value and
better implementation)
IMPL:
std-%filename-mktemp: upcase and longer names
added STD-CURRENT-PATH
changed STD-GLOB-FILES, STD-GLOB-DIRS
removed standalone dependent defun's to external module STANDALONE
to improve VL linking (=> STD-ISUPPER,... problem only)
removed std-%write-to
changed std-%showfile-dialog (3 args)
fixed two unspecified module dependencies for std-getval
std-filename-split and std-current-drive cached
added term_dialog to *STD-ERROR*
better *MODULE-PATH* heuristics when compiled as project:
delayed module loading on magic *STD:%PROJECT*
fixed std-%print-time-result to print result strings as strings
cache STD-ACAD-LIBRARY-PATHS and STD-FINDFILE
GETFILEM double-click support
BINIO.FAS v2.24
FILEEXT.FAS v0.55
INIFILE.FAS v0.12
got rid of "obsolete BM instruction" warnings
BUG:
STDLIST loading error by STDLIB.LSP
wrong REGISTRY loading warning message
STDMATH loading with VILL standalone
STD-FINDFILE-PATHS for standalone
FEAT:
added STD-COLOR-STRING, *STD:LOCALIZED-COLOR-TABLE*, std-%local-language
different locale strings for the system and the user.
STD-STRPOS for empty match => nil
STD-CENTROID moved to STDENT and renamed to GEOM-CENTROID2D
Don't know yet if to keep it there or move it to the seperate
GEOM module.
IMPL:
STD-ACAD-LOCALE for R13, R14 w/o VLA
added STD-SYS-LOCALE
STD-DEBUG-PRINT looks better
by Serge Pashkov:
STD-ARC->SEG, STD-%ARC->BUL, STD-ENTDEL, STD-ENTMOD
BUG:
various R12/DOS fixes:
std-%load-fileext-fas, std-probe-file, std-%load-external-acad,
STD-%SIMPLE-LOAD-EXTERNAL
STD-ENTMOD for entmod=>nil
by Serge Pashkov:
STD-%CPLX-LIST
FEAT:
STD-ENTCHG with multiple changes
IMPL:
added std-%translate-string
STD-BYLAYER, STD-BYBLOCK honor *STD:LOCALIZED-MESSAGES*
by Serge Pashkov:
STD-DATE->DATLST accuracy improved
BUG:
STD-ARC->SEG (forgot it at 0.3015), STD-STRING-MISMATCH, STD-STRCOUNT,
STD-STRING-CAPITALIZE, STD-STRCHG, STD-RTOS, std-%format-date-string
by Serge Pashkov:
STD-ENTMAKE-POLYLINE, STD-ENTMAKE-LWPOLYLINE, STD-ENTNEXT-MAIN
FEAT:
*MODULE-PATH* must be present before loading STDINIT
renamed STD-%STABLE-UNION to STD-%ORDERED-UNION
added STD-SAVE-LAYER, STD-RESTORE-LAYER, :LAYER to STD-VAR-PUSH
added STD-ACAD-LOCALE, changed STD-SYS-LOCALE
moved STD-ENTMAKE-xxx from STDENT.LSP to seperate ENTMAKE.LSP
by Serge Pashkov:
changed STD-GETPTS for ARCs (2 endpoints instead of 1 center),
added STD-GET-GETPTS-VERTEXMASK, STD-SET-GETPTS-VERTEXMASK,
changed STD-GETPTS, std-%cplx-list to honor this mask
IMPL:
added STDINPUT functions, STD-TBL-GETNAME
renamed *STD:PICKED* to *STD:SS-PICKED*
STD-TODAY for #+ SMALL workaround
STD-STRJOIN, STD-%RTOS-N
STDSTR: removed all adhoc dependencies
added STD-%VLAX-GET-ACAD-OBJECT, STD-%LANGIDFROMLCID, STD-%SORTIDFROMLCID,
STD-%PRIMARYLANGID, STD-%SUBLANGID
Memoized versions are not used anymore, the expanded versions instead.
immediate bugfix
deleted wrong STDINIT.lsp from stdlib.zip
BUG:
by Serge Pashkov:
STD-DATE->CDATE
IMPL:
by Serge Pashkov:
STD-DATELST->CDATE
Provide seperate special versions by postprocessing the sources via
stdlib-pp.pl. => VLISP, VILL, ACOMP, ALISP, STANDALONE, VLA, SMALL
We keep maintaining only the sources and generate optimized versions
automatically.
First ADSrx framework
BUG:
STDMISC: 2x std-verbose-princ => std-verbose-print
some other minor misprints. (too much to remember)
most-positive-double-float is in VL different to AL
(1.797693134862316e+308 vs. 1.797693134862315e+308), same with negative
STD-SORT for VILL
STD-STRING-NOT-EMPTY => STD-STRING-NOT-EMPTY-P
STD-NUMBER-LIST-P, STD-STRING-LIST-P for dotted pairs
by Serge Pashkov:
STD-ARC->SEG
FEAT:
correct charset remappings on codepage changes (LC_CTYPE alike)
STD-ISUPPER, STD-ISLOWER, STD-TOUPPER, STD-TOLOWER are redefined
with std-%redefine-codepage-functions, yet supporting ascii, iso8895-1,
iso8895-2, iso8895-3, iso8895-4, dos850, koi8-r, ANSI_1251, dos866
added STD-CODEPAGE-AVAILABLE-P to avoid invalid codepage errors
STD-STRING-SUBST changed to match VL-STRING-SUBST, replace only the
first found instance.
added russian strings provided by Serge Pashkov
removed STD-INP-EDIT-STRING, STD-APPEND-JOIN
BINIO-FSEEK may not accept symbols, [start-from] changed to integer.
renamed STD-READASC to STD-READ-FILE-STRINGS and
STD-READLST to STD-STD-READ-FILE-LIST
added STD-SEG-PTS-DIST
IMPL:
All sources are now marked up with postprocessing inline comments.
Prefixed numerous local vars to "_"
VL linking is near to optimal now. Well, this is relative. Unportable
direct linkage may be faster of course.
Consistently prefixed all internal functions with STD-% such as
std-simple-xxx, std-defmemoize-xxx, std-cond-defun, some internal
date functions.
added STD-READ-FILE-STRINGS, STD-READ-FILE-LIST
STD-BLOCK-UPDATE, STD-BLOCK-REQUIRE return values as described
STD-RTOS: dependencies removed
by Serge Pashkov:
better DBTRANS.CPM with all missing cp's (big5 doesn't look okay
though). In detail: ANSI_1251, big5, dos866, dos932, KSC5601
Collected some missing codepage definitions, not in DBTRANS.CPM,
esp. for Russia and Asia.
BUG:
STD-MODULE-DEFINED-P, STD-STRING-CAPITALIZE,
STD-ARC->BUL, STD-ATTCHG, STD-PUTTEXTVAL, STD-FIX-LWPOLY,
STD-GETEXTTYPE, STD-PRINC-TO
by Serge Pashkov:
STD-SEG-LENGTH, std-%load-external-acad
RANDOM.LSP module dependencies,
FEAT:
added STD-TOLOWER, STD-TOUPPER for easier globalization
renamed STD-GRAVITY-CENTER to STD-CENTROID
added STD-RANDOM-PT, STD-DIMSTR
changed STD-GENSYM behaviour: always increments *GENSYM-COUNTER*!
by Devin Currie:
renamed FORTH to FOURTH
added NINTH, TENTH
limited :RUSSIAN language support
IMPL:
improved STD-STRING-DOWNCASE, STD-STRCASE,
STD-VAR-RESTORE when STDFILE is not loaded,
compiler optimizations in STD-STANDARD-DEVIATION
detected another vl safe-mode compiler limitation.
std-%load-fileext-fas
added "_" prefix to local lambda vars to improve
compiler mode: safe, make-internal
BUG:
STD-PAUSE-COMMAND with TEXTEVAL 0 and text commands
changed arguments order in STD-LASTCHARS, STD-STR-N
STD-FILENAME-EXTENSION-OR-NIL, STD-FILENAME-BASE with FILEEXT.FAS
by Serge Pashkov:
STD-POLYEDGE, STD-SEGS->PTS, STD-ENTMAKE-LWPOLYLINE, STD-BYLAYER,
STD-ACADSUBVERSION, STD-VER-LANGUAGE
STD-ENTMAKE-POLYLINE
FEAT:
renamed STD-VIEW-PERS-P to STD-VIEW-PERSP-P
by Serge Pashkov:
STD-SEGS->PTS precised on closing segment.
STD-CERROR honors but doesn't require STDDEBUG.
changed segment structures from the worse-is-better "New Jersey"
approach to "the right thing" MIT approach, the "big complex system"
scenario:
changed STD-PTS->SEGS, STD-SEGS->PTS, STD-POLYEDGE, STD-PLINE-SEGS
added STD-SEG-P1, STD-SEG-P2, STD-SEG-BULGE, STD-MAKE-SEG,
STD-SEG-BULGE-NUM, STD-SEG-ANGLE, STD-SEG-LENGTH, STD-SEG-STRAIGHT-P,
STD-SEG-P1-UC, STD-SEG-P2-UC, STD-SEG-ANGLE-UC, STD-SEG-PTS-DIST
STD-ENTMAKE-POLYLINE and STD-ENTMAKE-LWPOLYLINE accept now pointlists too
provided std-%accept-fas2-extensions-p to disallow loading FILEEXT.FAS to
avoid the stupid warnings printed.
added ATOMS-FAMILY for <R12
DOC:
added STD-ZOOM-EXTENTS
IMPL:
STD-ENTMAKE-LWPOLYLINE, STD-ENTMAKE-POLYLINE, STD-ENTMAKE-PLINE
renamed STD-PIX->UNIT to STD-PIXEL->UNITS
renamed STD-UNIT->PIX to STD-UNITS->PIXEL
by Serge Pashkov:
STD-DOS-FILENAME
RUNTEST.LSP 0.51: some fixes
added test/PRIMETST.LSP, RANDOM.LSP, PRIMES.LSP
BUG:
*PRIMES*: small bug but didn't affect code, only performance.
STD-SYMBOL-VALUE in VL
fixed date output with day-of-week and ampm
fixed tricky bug in STD-RANDOM with linked compilation.
fixed VL optimization compiler bug with not initializing local
variables in mode LSA in STDLIST (STD-RANDOMIZE,
STD-REMOVE-DUPLICATES, STD-FIRSTN, ...)
fixed *MAX-RECURSION-STACK* (Thanks to Serge)
by Serge Pashkov:
std-%var-handler :entdel
FEAT:
added *VERBOSE*
added std-%load-verbose-print to print on *LOAD-VERBOSE*
changed STD-VERBOSE-PRINT to print on *VERBOSE* instead of *LOAD-VERBOSE*
added STD-ENTMAKE-MTEXT
added *STDLIB-PATH* (STDINIT2)
removed STD-FLATTEN1
added codepage support: STD-CPTRANS, STD-SYS-CODEPAGE, STD-LIST->WSTRING
std-cdate->date-string on "ddd" returns 3-character weekday not 2-char
added :PROTECTED-FUNCTION error handler keyword
DOC:
updated HTML and provided automatic HTML generation from Winhelp
IMPL:
STD-RTOS works now with large and overlarge nums and no acad connection.
fixed std-%entmake-template and added 100 markers for >=r14 groups.
by Serge Pashkov:
fixed STD-FLATTEN, improved STD-MAPATOM, pointed me to STD-DAY-OF-WEEK,
improved STD-%MERGE-SORT
by Daniele Piazza:
improved STD-%SETNTH
improved function overloading: std-%var-handler :function, :protected-function
new std-%ori-protected-function, std-%ori-function as accessors for the
original functions, better testcases, improved :error
new std-%search-stack, std-%search-list
fixed rounding errors in std-%format-date-string
simplified RANDOM in STDMATH and moved the better stuff to module RANDOM.
removed module dependencies from STDMATH.
FILEEXT.FAS 0.54: std-%protectedp, but more missing bytecode errors
BUG:
STD-EQUALP for real numbers and sets
STDMATH didn't fully load
FEAT:
changed *DATETIME-FORMAT-STRING* to *TIME-FORMAT-STRING*
renamed STD-ROTL to STD-ROTATE-LEFT
renamed STD-ROTATE-RIGHT to STD-ROTATE-RIGHT
added *MAX-RECURSION-STACK*
removed STD-CONSTANTP
added std-%string-8bit->octal
DOC:
renamed STD-PSPACE-P to STD-PAPERSPACE-P
added hyphenation rules explanation
fixed STD-INT-LIST
provided stack overflow warnings on affected functions
fixed a disclaimer notice about required notes, sorry.
IMPL:
internal std-%protect-assigned-p predicate
special AutoLISP STD-SLEEP with one function call less
renamed std-%dosify-filename to std-%stringquote-filename
added STD-PUSHNEW, STD-STRING-UPPER, STD-STRING-LOWER,
STD-STRING-CAPITALIZE
by Serge Pashkov:
improved iterative versions of STD-MEMBER-IF, STD-MEMBER-IF-NOT
STD-UNION, STD-INTERSECTION, STD-SUBSETP
improved STD-FACULTY, STD-MERGE
so there are almost no pending stack intensive list functions
anymore besides std-maptom (which we don't care) and std-flatten
whole lotta changes:
changed RUNTEST format: => expressions embedded in a list
and re-changed RUNTEST format back to old, to keep it simplier
FILEEXT.FAS 0.53: std-%open-file-p, new provide
INIFILE.FAS 0.11: new provide
BINIO.FAS 2.22: new provide
BUG:
FEAT:
changed argument order of STD-STRPOS, STD-STRIPOS, STD-LASTCHARS,
STD-STR-N, STD-STRCOUNT, STD-STRCMP, STD-STRICMP
added STD-STRING-ELT, STD-STRING-MISMATCH, STD-STRING-POSITION,
STD-STRING-TRANSLATE
renamed STD-STRLSTD to STD-STRLIST->STRING
renamed STD-STRDLST to STD-STRING->STRLIST
renamed STD-STRLSTC to STD-STRLIST->CSSTRING
renamed STD-STRCLST to STD-CSSTRING->STRLIST
renamed STD-STREAMP to STD-FILEP
added STD-OPEN-FILE-P (may fail with plain AutoLISP open calls)
fixed STD-FCLOSE and STD-FCLOSEALL to accept already closed files
fixed STD-NOT-PROPER-LIST-P to take a list of unlimited length
*TIMER-FORMAT-STRING* supports %@ - list of new globals
DOC:
improved winhelp keyword index
IMPL:
changed internal storage of modules: *MODULE-IN-OBARRAY* decides if
stored in the atoms-family or if in the global list *MODULES*
fixed RUNTEST.LSP inline comments and error handling
BUG:
fixed error handler restauration
STD-STRING-REMOVE-COMMENTS
FEAT:
STD-STRING->LIST and STD-LIST->STRING use list of int's instead list
of single char strings.
STD-STRLTRIM-BAG renamed to STD-STRING-LEFT-TRIM
STD-STRRTRIM-BAG renamed to STD-STRING-RIGHT-TRIM
STD-STRTRIM renamed to STD-TRIM
new STD-STRING-TRIM
renamed STD-STRRJUSTCH to STD-STRING-RIGHT-PAD-CHAR
renamed STD-STRLJUSTCH to STD-STRING-LEFT-PAD-CHAR
all those don't accept symbols (destructive) anymore
IMPL:
fixed calls to std-%unprotect-assign in STDLIST and STDLOCAL
fixed all warnings on assigment to protected symbols on re-load.
immediate bugfix for 0.3007
BUG:
(std-functionp nil) returned T on plain AutoLISP, fixed.
FEAT:
STD-VER-ACADSUBVERSION: icad 14i => 13.9
STD-RPAD and STD-LPAD: string right and left padding
STD-SYMBOL-NAME
IMPL:
fool-proof STD-SYMBOL-NAME
layout change: moved parts from STDINIT2 to STDFILE
added STDLOCAL.LSP: Localization module
FEAT:
added STD-PRIMEP, changed STD-PRIME-FACTORIZATION to return
multiplicants not binary exponents.
STD-TIME supports *TIMER-FORMAT-STRING*: more resources besides time
changed STD-FUNCTIONP back as in <= 0.3005
IMPL:
improved STD-PRIME-FACTORIZATION, STD-PRIMES
BUG:
(std-%format-date-string .. "..AMPM")
fixed error handling with user-defined :error (STD-VAR-INIT, STD-VAR-RESTORE)
by Serge Pashkov:
STD-FACULTY
FEAT:
added STD-SAVE-UNDO,STD-RESTORE-UNDO,STD-DISABLE-UNDO,STD-ENABLE-UNDO
changed STD-FUNCTIONP
IMPL:
combined std-%portable-rand with std-%mod-rand, only the latter is
defined.
(std-make-random-state-p T) now selects a random method
more test/RANDTST.LSP
(std-time) now calls (gc) before.
all unprefixed functions are protected (and blue) in VL.
removed std-%bit-rand, added int overflow fix in std-%random-new-seed
renamed REST local vars
updated test/RANDTST.LSP, generated randtst.html
BUG:
(STD-MAKE-RANDOM-STATE nil), std-%random-new-seed,
std-%create-portable-rand, std-%mod-rand
I put those fixes in the 0.3004 zip also
by Serge Pashkov:
STD-FLATTEN
STD-VAR-RESTORE
IMPL:
Solved ACOMP's FUNCTION problem:
ACOMP has a different syntax for FUNCTION,
it accepts (function) only with system functions.
Fixed this, STDLIB.BI4 compiles now.
Changed all (apply '..) to (apply (function ..))
RANDOM Generators
updated test/SORTTST.LSP, test/RANDTST.LSP
updated FILEEXT v0.5
BUG:
typo in std-%insertion-sort and STD-MERGE,
STD-VAR-INIT
FEAT:
STD-SUBSEQ throws errors on wrong indices! (according ANSI CL
issue-284 writeup)
STD-PRINC and STD-PRINC-TO honor global printing variables
*PRINT-LENGTH* and *PRINT-LEVEL*
added STD-NUM-SCALE,*MAX-INT*
DOC:
fixed STD-SUBSEQ, reformatted Winhelp and HTML,
IMPL:
by Serge Pashkov:
STD-FIRSTN O(n+i), iterative faster merge-sort instead of recursive.
added unsafe fast STD-%FIRSTN O(i)
added faster std-%randomize to FILEEXT 0.5
*std:mktemp-treshold* holds the number of max. temp. files
supplied some extendable random number generators.
BUG:
typo in std-%insertion-sort (stable now)
FEAT:
STD-RPLACE doesn't add elements anymore!
(std-rplace '(0 1 2) 3 'new) => (0 1 2), before it was defined as
=>(0 1 2 NEW) but this needed the recursive firstn
implementation, which is slow and dangerous on large lists.
DOC:
fixed STD-RPLACE (wrong argument ordering and behaviour on index out
of range)
IMPL:
by Serge Pashkov:
improvements for STD-SORT, STD-STABLE-SORT, STD-MERGE
(also see test/SORTTST.LSP and the mail archive)
moved stuff from STDINIT2 to STDFILE,
fixed some project behaviour -avoiding STDERROR search- with some
dynamic calls. (std-%set-error-handler)
removed extension mapping for [vlx-]file-directory-p (never existed)
Changed all (function name) to 'name quotes. Keeping (function (lambda ..))
because it is faster than '(lambda ..)
Note + yet unresolved problem:
ACOMP has a different syntax for FUNCTION.
It is only happy with FUNCTION instead of lambda not instead of quote.
STDLIB.BI4 will have to wait until a fast automatic fix is developed.
BUG:
fixed STD-FUNCTIONP in VL for (function name) and (function (lambda ())
fixed stack overflows in STD-FIRSTN and STD-RANDOMIZE
wrong loading order: std-%set-language-error moved to STDINIT2
FEAT:
added STD-GENSYM and *GENSYM-COUNTER*
IMPL:
non-recursive version of STD-REMOVE-IF, STD-FIRSTN
BUG:
STD-FIX-LWPOLY
IMPL:
OS specific file funcs (no VL) for DOS,Win,OS/2,unix and some for macs
redefined.
Improved (std-%delete-mktemp), added (std-%file-bulk-delete).
Fixed std-princ-to-string for plain AutoLISP (no conversion on strings)
License restriction for publishing modifications.
Improved project loading (FAS or BI4):
new STDINIT2 (seperated from STDFILE), STDMODUL (seperated from
STDINIT), STD%PRJ.LSP (defines a magic *STD:%PROJECT*)
Reformatted sources to max 73 chars for usenet.
STDLIB.BI4 provided (acomp for r12. This compilation helped to find a lot
of bugs and undeclared parameters. Highly recommended!)
STD-FILE-DELETE for plain AutoLISP is still awful! I will use DOSLIB
soon!
BUG:
STD-MAPTRANS01, STD-MAPTRANS10, STD-ENTCHG, std-%date->milliseconds
by Serge Pashkov:
STD-EXPT
FEAT:
Czech language detection (thanks to Vladimir Michl)
Japanese *error* handler (thanks to Nobuhiro Haketa)
Sets language specific error handler
Changed (STD-MAKE-PATHNAME path name ext) to
(STD-MAKE-PATHNAME <list-of-pathname-parts>)
Renamed STD-START and STD-FINISH to STD-TIMER-START and
STD-TIMER-FINISH and provided implementations.
DOC:
added frames to HTML Help
new STDINIT2 (excerpted from STDFILE)
BUG:
STDMISC wrong loading order fixed, STD-LOG10, FIFTH, SIXTH, STD-FLATTEN1
by Serge Pashkov
STD-GETPTS
FEAT:
Date/Time format strings supported
added SEVENTH, EIGHTH, STD-CEILING, STD-FLOOR, STD-SLEEP
DOC:
added HTML-Help and complete html docs
IMPL:
added STD-TODAY, STD-CDATE->DATE-STRING, STD-CDATE->TIME-STRING, STD-BLOCK-UPDATE
STD-STRxTRIM-BAG accepts strings as bag too
improved performance for std-file-mktemp (not vl) and other std-file-* (<r14)
improved error handling with temp. files
STD-ASSERT breaks or exits
improved STD-EXPT
FILEEXT.FAS v0.4
BUG:
by Serge Pashkov
fixed STD-SORT, STD-STABLE-SORT, STD-MEDIAN, STD-GETPTS
fixed STD-HATCH-P
FEAT:
added STD-TIME, STD-FAST-SORT, STD-FRACTION,
STD-COUNT, STD-COUNT-IF, STD-COUNT-IF-NOT,
STD-ENTDEL, STD-ENTMOD,
renamed some STDENT functions and predicates
(removed "IS" prefix)
added some STDENT predicates
fixed std-%insertion-sort
IMPL:
removed dynamic VL-RTS loading from the libary. This should be done
by the developer, no by the library itself.
More localization support for STD-OSMSTR
added *R14-LWPOLY-BUG* and STD-FIX-LWPOLY
changed STD-ENTCHG
added SORTTST.LSP
BUG:
STD-RSEQ
FEAT:
renamed STD-[UN]MARK-ENT to STD-[UN]MARK-ENTITY,
added STD-REQUIRE-PATH, STD-DEFKEYWORD, STD-KEYWORDP, STD-MEDIAN
new seperate STDERROR file and module,
STD-MODULES returns strings instead of symbols,
added STD-STABLE-SORT,
renamed a lot of STDTBL functions
IMPL:
STD-MEAN (force float),
added STDERROR, STDMISC and STDTBL module code
RUNTEST.LSP v0.40-al improved: dynamic precision, 1 failure only
BUG:
by Serge Pashkov:
registry-%key-split, std-%safe-nth (renamed),
std-defmemoize-noarg-val, std-defmemoize-noarg-bool
FEAT:
STD-VL-P is now dynamic,
STD-VLRTS-P only set by the RTS loader
added STD-VL-AVAILABLE-P for previous STD-VL-P instead
STD-VER-ACADSUBVERSION for r13c4a
renamed STD-FLATTEN with STD-FLATTEN1 and added STD-FLATTEN as documented
added STD-SET-EXCLUSIVE-OR
IMPL:
random generator test moved to RNDTEST.LSP
STD-LOAD returns T on success or NIL
DOCLSP:
renamed LSPDOC.HLP to STDLIBSRC.HLP
RUNTEST.FAS v0.31-lpp
RUNTEST.LSP v0.32-al supporting #+
BUG:
by Serge Pashkov:
STD-EXPT, STD-FT-INSERT, STD-FILE-WRITABLE-P
STD-MODULE-DEFINED-P, STD-SIMPLE-LOAD-EXTERNAL,
STD-REQUIRE-VERSION
REGISTRY v0.2:
fixed REGISTRY-ACAD-PRODUCT-KEY, REGISTRY-READ,
REGISTRY-WRITE, REGISTRY-DESCENDENTS
FILEEXT: STD-FILENAME-DIRECTORY
FEAT:
added STD-SQRT (type preserving), STD-SHOWFILE, STD-MAKE-STRING
FILEEXT v0.3: added std-%random funcs, STD-FPSLASH
REGISTRY v0.2:
renamed and changed arguments for REGISTRY-READ, REGISTRY-WRITE
added STD-VLRTS-P, REGISTRY-VALUES, REGISTRY-%FIX-KEY, REGISTRY-%KEY-SPLIT
IMPL:
STD-BREAK
Trying to load STDLIB in a VL Runtime System with std-%load-vl-rts.
With RTS-support vl-load instead of load in std-load.
We now have the problem to have two different versions of STDLIB loaded with
one version of cached predicates! Wrong vl methods are called.
STD-DATLST->INTERNAL-TIME renamed to STD-%DATLST->INTERNAL-TIME
known bug with (runtest) under plain AutoLISP
BUG:
STD-ACAD-CONNECTION-P, STD-NOT-PROPER-LIST-P
std-%load-fileext-fas fixed (printed wrong warning)
STD-SIMPLE-LOAD (didn't find LSP)
std-%save-nth with 0
FEAT:
STD-DEFCONSTANT,
STD-STRING-REMOVE-CMT renamed to STD-STRING-REMOVE-COMMENTS
STD-TOSTR extended for not-proper lists,
(STD-FCLOSE nil) no error anymore,
by Serge Pashkov:
STD-EXPT improved
IMPL:
STDACI.LSP, STDLIB.LSP
known bug in STD-EXPT with large integers
BUG:
STD-ACAD-CONNECTION-P
FEAT:
STD-SELECT, STD-MEAN, STD-ISEQ, STD-RSEQ, STD-STANDARD-DEVIATION added
STD-EQUALP changed and implemented (STDLISP)
STD-STREAMP, STD-PRINC-TO added
FEAT+DOC:
STD-BAD-LIST-P renamed to STD-NOT-PROPER-LIST-P
STD-PRIME-FACTORS renamed to STD-PRIME-FACTORIZATION
DOC:
STD-EQUALP (removing any gl-equalp occurance)
IMPL:
STD-STRING->LIST, STD-LIST->STRING error checking
STD-EXPT type preserving
STD-FUNCTIONP fixed for lambda lists
Bugfix: v0.2009 didn't load under plain AutoLISP!
Re-ordered module dependency checking code
BUG:
STD-SIMPLE-LOAD-EXTERNAL, STD-DATE->CDATE
FEAT:
STD-MODULE-UNBIND now checks for ending "*" on with "*<module-name>" prefixed symbols.
DOC:
STD-FILE-SYSTIME returns the date as CDATE, not as datlst!
IMPL:
STD-ACAD-CONNECTION-P, STD-SIMPLE-REQUIRE,
STD-PROVIDE, STD-WARN
DOCLSP:
added FILEEXT.TXT, Modules.TXT
Various fixes for (std-acad-connection-p) == NIL
RUNTEST.LSP fixed, only one test fails (floating point error: 1e-3 accuracy)
BUG:
STD-VLIDE-P not cached
by Serge Pashkov:
STD-FT-APPEND, STD-FT-EQUAL
STD-LOAD
DOC:
added initialization predicates,
STD-FT-APPEND and STD-FILE-APPEND: changed argument order
FEAT:
added AutoLISP workarounds for STD-FILENAME-MKTEMP, STD-FILE-DIRECTORY-P,
STD-DOS-FILENAME, STD-FILE-xxx, STD-xxDIR
STD-MAKE-PATHNAME, STD-FILENAME-MKTEMP, STD-REMOVE-CMT, STD-VER-LANGUAGE improved
STD-ACAD-CONNECTION-P works now
new BINIO.FAS module, Version 2.1
new FILEEXT.FAS module, Version 0.1
STDBINIO.LSP removed,
RUNTEST.LSP fixed for inline comments and internal symbols. Only
errors with equal and floats for now.
BUG:
BINIO-FTELL with output streams
by Serge Pashkov:
wrong STD-SYMBOL-VALUE deleted from STDSTR.LSP. It's defined in STDLISP
STD-FT-APPEND, STD-FT-INSERT
STD-VER-ACADSUBVERSION for "14.0"
FEAT+DOC:
added STD-RANDOM-STATE-P, STD-STRING-SUBST, STD-STRCMP, STD-STRICMP, STD-STRCOUNT, STD-REQUIRE-VERSION, STD-LOAD-EXTERNAL, STD-FILEBASE
STD-FILE-NEWER-P, STD-FINDFILE-EXTS redefined
FEAT:
binio-fopen: mode "rw"
binio-fseek: optional <start-from> argument
BINIO.FAS provides the module name now by itself, STDBINIO.LSP is not needed anymore and the module is loaded just with (std-require 'BINIO) instead of
(std-require 'STDBINIO)
STD-MODULE-UNBIND deletes all symbols prefixed with the module-name and the hyphen and all symbols prefixed with * and the module name.
by Serge Pashkov:
STD-SUBSEQ, STD-STR-N, STD-LASTCHARS, STD-DELPOS fixed for abnormal arguments.
STD-COPY-TREE, STD-MIDPT, STD-MAKE-LIST, STD-FT-EQUAL
DOC:
added BINIO-FSEEK, BINIO-FTELL, BINIO-FREWIND,
BINIO-FXXXREAL reads/writes double numbers of size 8 bytes, not 4 bytes!
IMPL:
honor predefined *MODULE-PATH* in STDLIB.FAS (see INIT.LSP)
STDLIB.FAS doesn't try to set *MODULE-PATH* with my paths anymore.
Most of the date conversions were wrong!
BUG:
by Serge Pashkov:
STD-CDATE->DATLST, STD-SYS-LONGFNAME-P
STD-CDATE-DATLST, STD-DATLST->DATE, STD-DATE->CDATE,
STD-LOAD with given extension,
IMPL:
Introduced a sample INIT.LSP
STDLIB: *MODULE-PATH* now only as default.
BUG:
by Serge Pashkov:
STD-PROBE-FILE, STD-PLINE-SEGS
STD-LOAD, STD-SIMPLE-LOAD
IMPL:
STD-GETPTS
BUG,FEAT,DOC:
STDSTRING renamed to STDSTR (module and file):
<=R13 (load) has problems with long module names
(STD-PRIMEFACTORS) renamed to (STD-PRIME-FACTORS)
FEAT:
by Serge Pashkov:
STD-POWER: renamed to (STD-EXPT n x), supporting negative integer n, but no complex numbers
STD-NTHCDR: what about 0 and negative indices? error, nil or whole list?
wrong docs or impl and test
DOC:
STD-EXPT returns integer or real but is not truly type preserving.
STD-LCM: wrong results in docs!
BUG:
STD-STRSPLIT,
by Serge Pashkov:
STD-SORT
BUG:
by Ralph Gimenez:
(STD-POWER): fixed for negative n
by Serge Pashkov:
(STD-BYBLOCK), (STD-BYLAYER): fixed for domestic release,
(STD-MAIN-ENTITY), (STD-ENTNEXT-MAIN),
(STD-ENTMAKE-LWPOLYLINE)
DOCLSP:
polished STDENT
BUG:
(STD-ENTMAKE-PLINE)
added STDACI (acad independent) module.
DOC:
fixed the Disclaimer
FEAT:
added (std-ver-language) to STDINIT
(std-lcm)
BUG:
(std-make-pathname), INIFILE.LSP, STDBINIO.LSP
added Changes, INSTALL, MANIFEST
introduced STD-% prefix for internal implementation specific functions.
FEAT:
added (std-filename-extension-or-nil fname) and
changed (std-filename-extension fname) not to return NIL!
std-require, std-provide return the stringified names if already loaded.
DOC:
fixed some code in STDLIB.HLP but these are examples only so far.
IMPL:
STDFILE, STDINIT
FEAT:
(std-replace i lst new) => (std-replace lst i new),
added more module functions
DOC:
(std-strlst-match str match) => (std-strlst-match strlst match)
BUG:
by Serge Pashkov:
(std-subsetp lst1 lst2)
IMPL:
by Serge Pashkov:
std-fcloseall, std-fclose,
added globals to STDMATH (*PI2*, ...)
changed all module functions