ChangeLog
上传用户:shenzhenrh
上传日期:2013-05-12
资源大小:2904k
文件大小:61k
源码类别:

信息检索与抽取

开发平台:

Unix_Linux

  1. 2004-07-16  Scott Christley <schristley@mac.com>
  2. * Makefile.am (INCLUDES): Use libobjc definition. Add GNUstep includes.
  3. * InputStream.m: Include internal.h for long double definition
  4. required for GNUstep.  No long double encoding support in the
  5. libobjc library.
  6. 2004-04-20  Marcus G. Daniels <mgd@santafe.edu>
  7. * List_HDF5out.m ([.. hdf5OutShallow:]): Call writeRowNames.
  8. 2003-06-11  Paul E. Johnson  <pauljohn@pjdell.pols.ukans.edu>
  9. * Permutation.m ([Permutation_c -setLastPermutation:]): Cast as
  10. (Permutation_c *) to stop compiler warning.
  11. * Collection.m ([PermutedIndex_c -remove]): cast collection as
  12. (Collection_any *) to stop compiler warning about wrong type
  13. pointer.
  14. 2003-05-05    <mgd@arrow.santafe.edu>
  15. * InputStream.m ([InputStream -getExpr]): Treat #() like #1().
  16. 2002-10-19    <pauljohn@dv253s74.lawrence.ks.us>
  17. * Makefile.am (install-data-local): $(DESTDIR) added
  18. 2002-09-13    <pjohnson@localhost.localdomain>
  19. * Array.m ([Array_c -_lispOut_:deep:]): i must be unsigned
  20. 2002-05-14  Marcus G. Daniels  <mgd@condor>
  21. * collections.h (Array, List, Map): Adopt Serialization.
  22. * List_GEN.m (TARGET), OrderedSet.m (OrderedSet_c), Stream.m
  23. (ArchiverList): Add Setting phase marker for above.
  24. 2002-04-23  Marcus G. Daniels  <mgd@condor>
  25. * Array.m ([Array_c -lispInCreate:,-lispIn:]): Implement.
  26. * List_HDF5out.m: Don't do anything with nil.
  27. * List.h, Array.h, Map.h, Collection.h: Explicit includes of
  28. defobj.h for Serialization protocol.
  29. 2002-04-14  Alex Lancaster  <alex@swarm.org>
  30. * Array.h, Array.m, Collection.h, Collection.m, InputStream.h,
  31. InputStream.m, List.h, List.m, List_GEN.h, List_GEN.m,
  32. List_linked.h, List_linked.m, List_mlinks.h, List_mlinks.m,
  33. Makefile.in, Map.h, Map.m, OrderedSet.h, OrderedSet.m,
  34. OutputStream.h, OutputStream.m, Permutation.h, Permutation.m,
  35. Set.h, Set.m, StringObject.h, StringObject.m, collections.h,
  36. collections.m, predicates.h, predicates.m: Change copyright
  37. statement to canonical version as suggested by GNU GPL.
  38. 2002-03-09  Marcus G. Daniels  <mgd@drone.swarm.org>
  39. * Map.m ([Map_c -lispIn:]): Fix integer key handling.  
  40. 2002-01-16    <mgd@marcus.santafe.edu>
  41. * collections.h (INDEX{STARTP,ENDP}, REMOVEDP, ARCHIVERDOTP): Cast
  42. to void * to avoid warning.
  43. (ARCHIVEREOLP): New macro.
  44. * InputStream.m, Stream.m: Use it.
  45. 2001-11-04    <mgd@HELEN>
  46. * Makefile.am: Don't use multi-line values in variable assignments.
  47. (CLEAN_FILES): Set, don't expect included value which
  48. confuses new automake.
  49. (INCLUDES):Add top_builddir.
  50. 2001-10-26  Marcus G. Daniels  <mgd@condor>
  51. * List_mlinks.[hm] (beginMlinksList, getFirstMlinksLink): Add.
  52. * List_HDF5out.m, Map.m, StringObject.m: Change getName to getHDF5Name 
  53. * OrderedSet.m: Change MLINK to MLIST.
  54. * macros.h: Add more mlinks List equivalents.  Cleanup.
  55. 2001-08-17  Marcus G. Daniels  <mgd@condor.santafe.edu>
  56. * macros.h (LIST_GETFIRST): New macro.
  57. 2001-07-29  Marcus G. Daniels  <mgd@dhcp70.santafe.edu>
  58. * macros.h (COLLECTION_{REMOVE,ATOFFSET,GETLAST,GETFIRST,COUNT},
  59. LIST_{{ADD,REMOVE}{LAST,FIRST}}): Add.
  60. 2001-07-28  Marcus G. Daniels  <mgd@maya.santafe.edu>
  61. * Makefile.am (EXTRA_DIST, collections_HEADERS): Install macros.h.
  62. * Map.m, List_linked.m (beginLinkedList): Moved from Map.m into
  63. List_linked.m.
  64. * List_linked.h (beginLinkedList): Declare.  (Made extern.)
  65. 2001-07-06  Marcus G. Daniels  <mgd@dhcp70.santafe.edu>
  66. * Makefile.am, macros.h: New file.
  67. * List_GEN.m: Add TINDEXCLASS* that uses "id_" to get class
  68. instead of self. 
  69. * List_GEN.m, Map.m, OrderedSet.m: Utilize macros.h and defobj
  70. macros.h. (Many changes.)
  71. * Map.m (beginLinkedList): New static function.
  72. 2001-04-12    <mgd@coyote.santafe.edu>
  73. * collections.h: Remove Index safety info from Index, Array, and List.
  74. Remove EndsOnly info from ListIndex.
  75. 2001-03-26  Marcus G. Daniels  <mgd@maya.santafe.edu>
  76. * Stream.m ([ArchiverValue_c -lispOutDeep:]): Handle nil.
  77. * predicates.[hm]: Add nil_value_p.
  78. * OutputStream.[hm], collections.h ([OutputStream_c -catNil]):
  79. New method.
  80. * InputStream.m ([InputStream_c -getExpr]): Add support for nil.
  81. 2001-01-24  Marcus G. Daniels  <mgd@forager.swarm.org>
  82. * collections.h (OutputStream): Use const void * for catPointer:
  83. argument.
  84. 2000-11-27  Marcus G. Daniels  <mgd@forager.swarm.org>
  85. * Map.[hm], collections.h ([MapIndex getKeyValue]): Add.
  86. 2000-09-18  Marcus G. Daniels  <mgd@forager.swarm.org>
  87. * Collection.[hm] ([Collection_any -{count,first,last}]): Remove.
  88. * Set.[hm] ([Set_c -count]): Remove. 
  89. ([Set_c -getCount]): Call List's getCount.
  90. 2000-07-26    <mgd@DRONE>
  91. * List_HDF5in.m: Change SD_JAVA_FINDJAVACLASS to
  92. SD_JAVA_FIND_CLASS_JAVA.
  93. 2000-07-26  Marcus G. Daniels  <mgd@forager.swarm.org>
  94. * Collection.m ([PermutedIndex_c -_getLoc_]): Return End when 
  95. collection is empty.
  96. ([PermutedIndex_c -next]): Make while loop condition
  97. on _getLoc_ not returning End.
  98. ([PermutedIndex_c -prev]): Likewise per Start.
  99. * Permutation.m ([PermutationItem_c -describe:]): Print out
  100. lastDirection and position.
  101. 2000-07-21  Marcus G. Daniels  <mgd@forager.swarm.org>
  102. * Collection.m ([PermutedIndex_c -_updatePermutation_]): 
  103. If there is a current member, search for it.  Otherwise
  104. use setLoc:.
  105. ([PermutedIndex_c -_getLoc_]): Add.
  106. ([PermutedIndex_c -getLoc]): Use it.
  107. * Collection.[hm] ([PermutedIndex_c -find{Next,Prev}:]): Remove.
  108. (Inherited versions are fine, now.)
  109. 2000-07-19  Marcus G. Daniels  <mgd@forager.swarm.org>
  110. * Permutation.[hm] ([Permutation_c -createTree]): New method.
  111. ([Permutation_c -getLastDirectionFor:]): Remove.
  112. * Permutation.m: Include misc/avl.h
  113. (comparePermutationItems): New function.
  114. ([Permutation_c -createEnd]): Create tree
  115. using directed lastPermutation items and use avl_find to find
  116. them quickly.  Destroy tree when done.
  117. 2000-07-16  Marcus G. Daniels  <mgd@nest.swarm.org>
  118. * List_HDF5out.m ([-..hdf5OutShallow]): Don't call writeRowNames.
  119. (Common-case of HDF5 usage is logging many points, and this
  120. will be a big blob of dumb sequential data.  R should create
  121. the row.names on-the-fly for the data frame.)
  122. 2000-06-30  Marcus G. Daniels  <mgd@nest.swarm.org>
  123. * InputStream.m ([InputStream_c -getExpr]): Handle DSSSL/Kawa
  124. style keywords.
  125. 2000-06-29  Marcus G. Daniels  <mgd@nest.swarm.org>
  126. * Makefile.am (EXTRA_DIST): Add List_HDF5{in,out}.m.
  127. * List.m, List_HDF5in.m, List_HDF5out.m: Split out hdf5 routines
  128. into separate files.
  129. * {List,Map,Stream,StringObject}.[hm], collections.h: Remove
  130. return type from {lisp,hdf5}Out{Shallow,Deep}:.
  131. 2000-06-26  Marcus G. Daniels  <mgd@nest.swarm.org>
  132. * List_GEN.m ([TARGET -addFirst:,-addLast:]): In the case
  133. of mlinks, check to see if link is new.  Only then adjust links.
  134. * Permutation.[hm] ([Permutation_c describe:]): Remove.
  135. 2000-06-25  Marcus G. Daniels  <mgd@nest.swarm.org>
  136. * Permutation.[hm] (Permutation): Add touchedFlag and untouchedFlag
  137. and getters.
  138. ([Permutation_c -getLastDirectionFor:]): New method.
  139. ([Permutation_c -createEnd]): Don't create
  140. PermutationItems if the collection is empty.
  141. * Collection.m ([PermutedIndex_c +createBegin:]): Clear nextFlag.
  142. ([PermutedIndex_c -_updatePermutation_]): Don't use count as 
  143. condition for regenerating permutation. 
  144. ([PermutedIndex_c -next]): Set nextFlag on a sucessful advance.
  145. ([PermutedIndex_c -getLoc]): Use Permutation's getTouchedFlag
  146. and getUntouchedFlag and nextFlag to determine status.
  147. * Collection.h (PermutedIndex_c): Add nextFlag.
  148. 2000-06-23  Marcus G. Daniels  <mgd@nest.swarm.org>
  149. * collections.h (Permutation): Declare setLastPermutation:.
  150. * Permutation.[hm] (Permutation_c): Qualify ivars with protocol
  151. info.  Likewise for associated methods.
  152. ([PermutationItem_c setLastDirection:]): New method.
  153. ([Permutation_c setLastPermutation:]): New method.
  154. ([Permutation_c -createEnd]): Handle the case of merging
  155. a collection with a previous permutation.
  156. * Collection.m ([PermutedIndex_c -_updatePermutation_]): New method.
  157. ([PermutedIndex_c
  158. -{next,prev,findNext:findPrev,getLoc,setLoc:,
  159. getOffset,setOffset:]): Call it first thing.
  160. ([PermutedIndex_c -next]): Skip over PermutationItem_c's that are
  161. tagged with lastDirection = 1.
  162. ([PermutedIndex_c -_clearDirection_]): New method.
  163. ([PermutedIndex_c
  164. -{findNext:,findPrev:,setLoc:,setOffset:]): Call it.
  165. * Collection.h (PermutedIndex_c): Add ivar rnd.
  166. 2000-05-18  Marcus G. Daniels  <mgd@nest.swarm.org>
  167. * collections.h ([Collection copy:]): Protect with #ifndef IDL.
  168. ([String compare:]): Remove (since there's no documentation, anyway).
  169. 2000-04-27    <mgd@nest.swarm.org>
  170. * collections.h ([Index -compare:]): Protect with #ifndef IDL.
  171. ([PermutedIndex +createBegin:, -createEnd, -next, -prev,
  172. -findNext, -findPrev, -get, -getLoc, -setLoc:, getOffset,
  173. -setOffset:]): Remove.
  174. ([ListShuffler -createEnd]): Remove.
  175. ([Permutation +createBegin:]): Remove.
  176. 2000-03-28    <mgd@nest.swarm.org>
  177. * Makefile.am (REVISION): Bump.  Swarm 2.1.1 frozen.
  178. 2000-03-25    <mgd@HELEN>
  179. * Array.m ([Array_c -describe:]): Use PTRHEXFMT instead of PTRFMT.
  180. 2000-02-18    <mgd@nest.swarm.org>
  181. * Makefile.am (CURRENT): Bump.  Version 2.1.
  182. * Stream.[hm], collections.h ([ArchiverValue_c -getChar, -setChar:]): 
  183. Use char, not unsigned char.
  184. 2000-02-15    <mgd@nest.swarm.org>
  185. * collections.h (_Set): Remove bogus documentation about return
  186. value of Set's add:.  Thanks to Michael Stillwell.
  187. 2000-02-10    <mgd@nest.swarm.org>
  188. * collections.h (Permutation): Remove -generatePermuation.
  189. 2000-01-23    <mgd@nest.swarm.org>
  190. * Makefile.am (INCLUDES): Add JAVAINCLUDES.
  191. 2000-01-22    <mgd@nest.swarm.org>
  192. * Stream.m ([ArchiverKeyword_c -setKeywordName:]): Copy argument.
  193. ([ArchiverKeyword_c -drop]): And drop it.
  194. * Stream.[hm], collections.h: Add getRank.
  195. 2000-01-16    <mgd@nest.swarm.org>
  196. * Map.m, List.m ([... hdf5OutShallow:]): Use setPrototType:
  197. instead of setClass: for making HDF5CompoundType.
  198. 2000-01-11    <mgd@nest.swarm.org>
  199. * StringObject.m: Inlcude defobj.h.
  200. ([String hdf5OutShallow:]): Use
  201. storeAsDataset:typeName:type:rank:dims:ptr: instead of
  202. storeAsDataset:type:ptr:.
  203. * Stream.m ([ArchiverArray_c -lispOutDeep:]): Update to use new
  204. fcall_type_t lisp_process_array interface.
  205. ([ArchiverValue_c -setDouble:],
  206. [ArchiverValue_c -setLongDouble:],
  207. [ArchiverValue_c -setBoolean:],
  208. [ArchiverValue_c -setFloat:],
  209. [ArchiverValue_c -setLongLong:],
  210. [ArchiverValue_c -setChar:],
  211. [ArchiverValue_c -setNil],
  212. [ArchiverValue_c -setClass:],
  213. [ArchiverValue_c -lispOutDeep:], [ArchiverValue_c -getValueType]):
  214. Likewise.
  215. * Stream.[hm], collections.h (ArchiverArray_c): Use fcall_type_t
  216. for type instead of string.  Update getArrayType and
  217. convertToType:dest: as well.
  218. (ArchiverValue_c): Likewise.
  219. * InputStream.m: Don't include internal.h.
  220. 2000-01-03  Marcus G. Daniels  <mgd@drone.swarm.org>
  221. * StringObject.m ([String_c -lispOutShallow:]): Use catString:
  222. and catStartMakeInstance:.
  223. ([String_c -setLiteralFlag:]): Put it in setting phase.
  224. * OutputStream.m: Don't include InputStream.h.  Include
  225. collections.h, defobj/defalloc.h, and StringObject.h.
  226. ([OutputStream_c -_addExpr_:]): New method.  Update all cat*
  227. routines to handle exprStack.
  228. ([OutputStream_c -catType:]): Use -catArrayType:.
  229. ([OutputStream_c -catLiteral:],
  230. [OutputStream_c -catSymbol:], [OutputStream_c -catString:]): Set
  231. literal flag.
  232. ([OutputStream_c -catUnsignedPair::]): Quote ArchiverPair.
  233. * OutputStream.[hm], collections.h ([OutputStream_c
  234. -setExprFlag:], [OutputStream_c -catLiteral:],
  235. ([OutputStream_c -catArrayType:], [OutputStream_c
  236. -catStartFunction:], [OutputStream_c -catEndFunction],
  237. [OutputStream_c -catEndList],
  238. [OutputStream_c -catEndQuotedList],
  239. [OutputStream_c -catEndParse],
  240. [OutputStream_c -catEndMakeInstance],
  241. [OutputStream_c -catEndMakeClass],
  242. [OutputStream_c -catEndArray]): New methods.
  243. ([OutputStream_c -catClass:]): Use Class as argument type.
  244. * OutputStream.h (OutputStream_c): Add expr and exprStack.
  245. * Map.m ([Map_c -_lispOut_:deep:]): Use catEndCons instead
  246. of catEndExpr.
  247. * Makefile.am (SRC): Add Stream.m.
  248. (collections_HEADERS): Add Stream.h.
  249. * InputStream.[hm] ([InputStream_c -setExpr:],
  250. ([InputStream_c +create:setExpr:]): New methods.  Split out
  251. Archiver_{Keyword,Array,Value,Pair,List,Quoted} into new files
  252. Stream.[hm].  Include Stream.h.
  253. ([InputStream_c -getExpr]): Handle preset expr / non-filestream
  254. case.
  255. 1999-12-31  Marcus G. Daniels  <mgd@drone.swarm.org>
  256. * OutputStream.m: Include defobj/internal.h for
  257. lisp_type_for_objc_type.
  258. * OutputStream.[hm], collections.h: New methods catBoolean:,
  259. catStartExpr, catEndExpr, catSymbol:, catString:, catSeparator,
  260. catArrayRank:, catType: catClass:, catStartCons, catStartList,
  261. catStartQuotedList, catStartParse, catStartMake{Instance,Class},
  262. and catUnsignedPair::.
  263. * List.m ([List_any -_lispOut_:deep:]): Use new OutputStream
  264. features instead of literal strings.
  265. * Map.m ([Map_c -_lispOut_:deep:]): Likewise.
  266. 1999-12-29    <mgd@drone.swarm.org>
  267. * List.m ([List_any -hdf5Out{Deep,Shallow}:]): Use HDF5
  268. setWriteFlag: instead of setCreateFlag:.
  269. * Map.m ([Map_c -hdf5In:]) Don't use setCreateFlag: NO.
  270. ([Map_c -hdf5Out{Deep,Shallow}:]): Use setWriteFlag: instead of
  271. setCreateFlag:.
  272. 1999-12-26    <mgd@DRONE>
  273. * collections.m (_collections_implement): Turn off _CLS_DEFINEDCLASS
  274. in List_linked, List_mlinks after calling setTypeImplemented.
  275. 1999-11-18  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  276. * Collection.m ([Collection_any -allSameClass]): Handle leading
  277. nil in the right way.
  278. 1999-11-16    <mgd@VAIO>
  279. * predicates.[hm]: Rename listp to archiver_list_p.
  280. * InputStream.[hm], collections.h ([ArchiverValue_c -setClass:],
  281. [ArchiverValue_c -getClass]): New methods.
  282. * InputStream.m: Change listp to archiver_list_p throughout.
  283. (readString): Second argument is now terminator
  284. character, not boolean. 
  285. ([InputStream_c -getExpr]): Handle <classname> syntax.
  286. 1999-10-17  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  287. * InputStream.m ([InputStream_c -getExpr]): Check length before
  288. checking for dotted pair.
  289. 1999-10-05  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  290. * collections.m (_collections_implement): Call setTypeImplemented
  291. for List_linked, List_mlinks, and MapIndex_c.
  292. 1999-09-18  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  293. * Swarm 2.0.1 released.
  294. 1999-09-12  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  295. * InputStream.m ([ArchiverPair_c -lispOutDeep:]): Don't quote
  296. (x . y) cons format here.
  297. * predicates.[hm] (quotedp): New predicate.
  298. * InputStream.m ([InputStream_c -getExpr]): Create ArchiverQuoted
  299. instance on 'x or (quote x).
  300. ([ArchiverList_c -lispOutDeep:]): Call lispOutDeep: on argument
  301. to make-{class,instance}. 
  302. ([ArchiverList_c -lispOutDeep:]): Handle all types with lispOutDeep:,
  303. adding quotedp check.
  304. * InputStream.[hm], collections.[hm] (ArchiverQuoted_c,
  305. ArchiverQuoted): Implement new protocol.
  306. * InputStream.m ([ArchiverList_c -lispOutDeep:]): Call lispOutDeep:
  307. in default case, don't raise error.
  308. 1999-09-11  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  309. * predicates.[hm] (quote_literal_p): New function.
  310. * InputStream.m ([InputStream_c -getExpr]): Handle (quote x) / 'x
  311. equivalence.
  312. 1999-09-09  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  313. * Set.m ([Set_c -at:], [Set_c -remove:]): Likewise.
  314. * OrderedSet.m ([OrderedSet_c -contains:]): Rewrite to avoid
  315. index leak.
  316. 1999-09-07  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  317. * Map.m ([Map_c -hdf5In:]): Use free: instead of XFREE on rowNames.
  318. 1999-09-07  Alex Lancaster  <alex@santafe.edu>
  319. * collections.h (Collection): Make -begin:, -beginPermuted:
  320. conform to Index and PermutedIndex protocol, respectively.
  321. (Index, PermutedIndex, MapIndex, ListIndex): Make RETURNABLE.
  322. Reformatting to avoid forward declarations, throughout.
  323. * List_GEN.[hm] ([TARGET -begin:]): Return type conforms to
  324. ListIndex.
  325. (TINDEX): Make TINDEX type conform to ListIndex, rather than
  326. Index.
  327. * collections.h, Map.[hm] ([Map_c -mapBegin:]): New method for
  328. generating a MapIndex.
  329. * collections.h, List_GEN.[hm] ([TARGET -listBegin:]): New method
  330. common to all objects conforming to the `List' protocol: generates
  331. a list index conforming to the ListIndex protocol.
  332. 1999-08-30  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  333. * Map.m ([Map_c -at:insert:]): Don't allocate newEntry unless
  334. key is new.  Thanks to Ken Cline.
  335. 1999-08-28  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  336. * Swarm 2.0 released.
  337. 1999-08-26  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  338. * Collection.m ([Collection_any -contains:], [Collection_any
  339. -remove:], [Collection_any -removeAll], [Collection_any
  340. -deleteAll], [Collection_any -forEach:{,arg1,arg2,arg3}],
  341. [Collection_any -allSameClass]): Rewrite to handle nil entries.
  342. * Set.m ([Set_c -at:], [Set_c -remove:]): Likewise.
  343. * List.m ([List_any -createEnd], [List_any -lispInCreate:],
  344. [List_any -lispIn:], [List_any -_lispOut_:deep:]): Likewise.
  345. * Map.m ([Map_c -at:insert:], [Map_c -at:replace:],
  346. [Map_c -at:memberSlot:],
  347. [Map_c -at:keySlot:memberSlot:],
  348. [Map_c -containsKey:],
  349. [Map_c -lispInCreate:],
  350. [Map_c -lispIn:],
  351. [Map_c -copy:],
  352. [Map_c -at:insert:],
  353. [Map_c -at:replace:],
  354. [Map_c -at:memberSlot:],
  355. [Map_c -at:keySlot:memberSlot:],
  356. [Map_c -at:keySlot:memberSlot:],
  357. [Map_c -containsKey:],
  358. [Map_c -removeKey:],
  359. [Map_c -removeKey:],
  360. [Map_c -forEachKey:{,arg1,arg2,arg3],
  361. [Map_c -createIndex:fromMember:],
  362. [Map_c -mapAllocations:],
  363. [Map_c -_lispOut_:deep:],
  364. [MapIndex_c -setKey:]): Likewise.
  365. * OrderedSet.m ([OrderedSet_c -contains:]): Likewise.
  366. * List_GEN.m ([TARGET -copy:]): Likewise.
  367. * InputStream.m ([ArchiverList_c -lispOutDeep:]): Likewise.
  368. 1999-08-25  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  369. * OutputStream.m ([OutputStream_c -catChar:]): Use isPrint instead
  370. of isprint.
  371. * InputStream.m (readString, [InputStream_c -getExpr]): Use isSpace
  372. instead of isspace.
  373. ([InputStream_c -getExpr]): Use isDigit instead of isdigit.
  374. 1999-08-22  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  375. * collections.h (ArchiverKeyword, ArchiverArray, ArchiverValue,
  376. ArchvierPair, ArchiverList, PermutationItem): Change from CREATABLE
  377. to RETURNABLE.
  378. * collections.h: Add objects-conforming-to-Zone argument types.
  379. 1999-08-13  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  380. * InputStream.m ([ArchiverArray_c -setArray:]): Use size_for_objc_type
  381. instead of switch.
  382. * InputStream.[hm], collections.h. ([ArchiverArray_c
  383. -convertToType:dest:]): New method.
  384. * InputStream.h (ArchiverArray_c): Switch type to const char *.
  385. 1999-08-12  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  386. * InputStream.[hm], collections.h ([ArchiverValue_c -setLong:],
  387. [ArchiverValue_c -setInteger:], [-getLong]): Remove.
  388. ([ArchiverValue_c -setLongDouble:], [ArchiverValue_c
  389. -getLongDouble],
  390. [ArchiverValue_c -setLongDouble:], [ArchiverValue_c -getLongLong],
  391. [ArchiverValue_c -getUnsigned]): Add.
  392. ([InputStream_c -getExpr], [ArchiverList_c -lispOutDeep:]): Use
  393. getZone macro.
  394. ([InputStream_c -getExpr]): Use long long as default numeric type
  395. (not long).  Recognize L0 as long double.  Use strtoll instead of
  396. strtol.
  397. ([ArchiverArray_c -setArray:], [ArchiverValue_c -lispOutDeep:]):
  398. ([ArchiverArray_c -setArray:], [ArchiverValue_c -lispOutDeep:]):
  399. Handle long long and long double.
  400. ([ArchiverArray_c -setArray:]): Use alloc: instead of xcalloc.
  401. Use scratchZone for index and drop it.
  402. ([ArchiverArray_c -drop]): Drop using free: instead of XFREE.
  403. Call superclass drop.
  404. * InputStream.h (ArchiverValue_c): Add long double and long long.
  405. Remove long and int.
  406. 1999-08-08  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  407. * OutputStream.[hm], collections.h ([OutputStream_c
  408. -catLongDouble:]): New method.
  409. 1999-08-07  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  410. * OutputStream.m ([OutputStream_c -catLongLong:]): 
  411. Raise an error if no long long specifier is available (e.g. HPUX9).
  412. 1999-08-06  Marcus G. Daniels  <mgd@helen.santafe.edu>
  413. * OutputStream.[hm], collections.h ([OutputStream_c
  414. -catPointer:]): New method.
  415. 1999-08-05  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  416. * InputStream.m ([InputStream_c -getExpr]): Change strtol failure
  417. from error to warning.
  418. * Map.m ([Map_c -{hdf5,lisp}In:]): Use STRDUP instead of strdup.
  419. 1999-08-01  Alex Lancaster  <alex@santafe.edu>
  420. * collections.h (ForEachKey): New protocol.
  421. (KeyedCollection):  Adopt it.
  422. * Map.[hm] ([Map_c -{forEachKey:, forEachKey::, forEachKey:::,
  423. forEachKey::::}]): New methods to implement the `ForEachKey'
  424. protocol for Map.  Thanks to Alan Liu <alanl@santafe.edu> for the
  425. implementation.
  426. * Set.[hm]: Identical method functionality implemented for `Set'.
  427. 1999-07-26  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  428. * OutputStream.m ([OutputStream_c -catLongLong:],
  429. [OutputStream_c -catUnsignedLongLong:]): Compose fmt from LLFMT
  430. for long long output.  When sizeof long and long long are the
  431. same, do a cast and use %l[ud].
  432. 1999-07-24  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  433. * collections.h (_Set): Split out common Set features into
  434. subprotocol. (Set, OrderedSet): Adopt it. 
  435. 1999-07-03  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  436. * collections.h (InputStream): Declare -setLong: and -getLong.
  437. 1999-07-02  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  438. * InputStream.m ([InputStream_c -getExpr]): Default to _C_LNG 
  439. for numbers.
  440. ([ArchiverArray_c -setArray:]): Check for _C_LNG instead of _C_INT.
  441. ([ArchiverValue_c -lispOutDeep:]): Handle _C_LNG.
  442. * InputStream.[hm] ([ArchiverValue_c -setLong:], [ArchiverValue_c
  443. -getLong]): New methods.
  444. * InputStream.h (ArchiverValue_c): Add long type to value union.
  445. * InputStream.m ([InputStream_c -getExpr]): Remove disabled `nil'
  446. parsing code.
  447. 1999-07-01  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  448. * List_GEN.m ([TARGET -describe:]): Cast getField return to int.
  449. * InputStream.m ([ArchiverArray_c -lispOutDeep:]): Don't use
  450. sprintf just to make string from char.
  451. 1999-06-30  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  452. * collections.h (OutputStream), OutputStream.[hm]: Add long long
  453. output methods.
  454. * collections.h, Map.[hm]: Add -setCompareCStrings,
  455. -setCompareIntegers, -setCompareUnsignedIntegers, -setCompareIDs.
  456. * Map.m (COMPAREFUNCEQ): New macro.  Use it throughout
  457. for any instance of compareFunc == X.
  458. 1999-06-29  Alex Lancaster  <alex@santafe.edu>
  459. * ListShuffler.m ([ListShuffler_c +create:setUniformRandom:]):
  460. Call createBegin on `self' rather than `ListShuffler_c', since
  461. this does not exist for a phase-split class.
  462. 1999-06-25  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  463. * Set.[hm] ([Set_c -getCount]): New method.
  464. 1999-06-22  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  465. * Collection.m (indexAtOffset): Adjust loop logic to avoid
  466. negative numbers.
  467. * List_GEN.m ([TINDEX -setOffset:]): Likewise.
  468. * Permutation.[hm] ([PermutationItem_c -setPosition:],
  469. [PermutationItem_c -getPosition]): Make position unsigned.
  470. * Collection.m (indexAtOffset): Make offset unsigned.
  471. * Array.[hm], Collection.[hm] ([Array_c -atOffset:], [Array_c
  472. -atOffset:put:]): Make offset unsigned.
  473. ([ArrayIndex_c -setOffset:]): Likewise.
  474. * List_GEN.m ([TINDEX -setOffset:]): Likewise.
  475. * Set.m ([SetIndex_c -setOffset:]): Likewise.
  476. * collections.h: Reflect these changes.
  477. 1999-06-20  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  478. * List.m (setListClass): Don't use string manipulation to
  479. get next phase; use nextPhase.
  480. * Map.m ([Map_c -createIndex:fromMember:]): Use a componentZone for
  481. listIndex.
  482. 1999-06-17  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  483. * List.m (setListClass): Fix off by one error in computing name
  484. for using-phase-lookup-by-string.  Use buffer on stack instead of heap.
  485. 1999-06-10  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  486. * Makefile.am (BUILT_SOURCES): Use TYPEINFO.
  487. (module_headers): Remove.
  488. 1999-06-08  Alex Lancaster  <alex@santafe.edu>
  489. * collections.h (ArchiverPair): Add -{set,get}ConsFormatFlag
  490. method to protocol.
  491. * InputStream.m ([ArchiverList_c -lispOutDeep:]): Handle
  492. cons_literal_p, list_literal_p cases.  Also handle the custom
  493. PARSE_FUNCTION_NAME case in place of the usual
  494. MAKE_{INSTANCE,CLASS}_FUNCTION_NAME.
  495. (lisp_output_one_of_pair): Remove function, no longer required.
  496. ([ArchiverPair_c -lispOutDeep:]): Reorganize to use lispOutDeep
  497. directly on {car,cdr} elements, use consFormatFlag to choose
  498. between output formats.
  499. ([InputStream_c -getExpr]): When creating ArchiverPair instance,
  500. set consFormatFlag based on the original text file format.
  501. * InputStream.[hm] ([ArchiverPair_c
  502. -{set,get}ConsFormatFlag:]): New methods and instance variable for
  503. saving the kind of output format for a pair: "'(car . cdr)" or
  504. "(cons car cdr)" when file is parsed.
  505. * collections.m (_collections_implement): Add setTypeImplemented
  506. for ArchiverList_c to ArchiverList.
  507. * collections.h (ArchiverList): Add protocol, conform to List,
  508. CREATABLE.
  509. (OutputStream): Remove -catExpr: method. Add
  510. -cat{Short,UnsignedShort,Long,UnsignedLong}: methods.
  511. * OutputStream.[hm] ([OutputStream_c -catExpr:]): Remove,
  512. functionality now in ArchiverList_c.
  513. ([OutputStream_c -cat{Short,UnsignedShort,Long,UnsignedLong}:]):
  514. New methods.
  515. * InputStream.[hm]: ([ArchiverList_c -lispOut{Shallow,Deep}:]):
  516. New class, subclasses from List_linked and allows serialization of
  517. itself.
  518. ([ArchiverList_c -lispOutDeep:]): Moved functionality previously
  519. in ([OutputStream_c catExpr:]) into method.
  520. * predicates.m (stringp): Change predicate to use `conformsTo:
  521. @protocol(String)'.
  522. (symbolp): Likewise for Symbol.
  523. (keywordp): Likwise for ArchiverKeyword.
  524. (valuep): Likewise for ArchiverKeyword.
  525. (arrayp): Likewise for ArchiverArray.
  526. (pairp): Likewise for ArchiverPair.
  527. (listp): Set to conform to @protocol(ArchiverList).
  528. * List.m (setListClass): New function to wrap `setClass'
  529. functionality for Lists.  If not one of the standard List
  530. implementation (List_any, List_linked, List_mlinks), set the final
  531. class name using setClass() to that of the current CREATING phase
  532. class name without the `.Creating' suffix, otherwise default to
  533. the previous behavior.
  534. ([List_any -createEnd]): Use new setListClass() function in place
  535. of setClass.
  536. 1999-06-06  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  537. * Makefile.am (module_headers): Use $(TYPEINFO).
  538. (noinst_LTLIBRARIES, lib_LTLIBRARIES): Substitute {inst,noinst}LIBS.
  539. (EXTRA_LTLIBRARIES): New variable.
  540. (libcollections_la_LDFLAGS): Substitute @inst_LDFLAGS@.
  541. * Collection.m, List.m: Include misc.h.
  542. 1999-06-05  Alex Lancaster  <alex@santafe.edu>
  543. * InputStream.h: Declare all missing methods.
  544. * collections.h (OutputStream): [OutputStream_c -cat{Expr, Double,
  545. Float, Int, Unsigned}:] Add and document new methods.
  546. (Archiver{Keyword,Value,Array,Pair): Add new methods to protocol.
  547. * StringObject.m ([String_c -lispOutShallow:]): When literalFlag
  548. set, don't generate the MAKE_INSTANCE_FUNCTION_NAME.
  549. * InputStream.[hm] ([InputStream_c -getExpr]): Make uncondtional
  550. while loops use Boolean (YES), rather than (1).
  551. ([ArchiverKeyword_c -lispOut{Shallow,Deep}:]): Implement
  552. serialization.
  553. ([ArchiverArray_c -setArray:]): Save the type information in new
  554. `type' slot.
  555. ([ArchiverArray_c -getArrayType]): New method.
  556. ([ArchiverArray_c -lispOut{Shallow,Deep}:]): Implement
  557. serialization, use saved `type' information to regenerate the
  558. array using lisp_process_array function call.
  559. ([ArchiverValue_c -lispOut{Shallow,Deep}:]): Serialization for the
  560. atomic types, using [OutputStream_c -cat{Double, Float, Int,
  561. Unsigned}:] functions.
  562. (lisp_output_one_of_pair): New function.
  563. ([ArchiverPair_c -lispOut{Shallow,Deep}:]): Use
  564. lisp_output_one_of_pair.  Serialization for pairs.  
  565. Import <defobj/internal.h>.
  566. * OutputStream.[hm] ([OutputStream_c -catChar:]): New method to
  567. accept a character and write to a string in the format expected by
  568. the Lisp archiver.
  569. ([OutputStream_c -cat{Double, Float, Int, Unsigned}:]): Likewise
  570. for all respective types.
  571. ([OutputStream_c -catExpr:]): New method to write an expression
  572. parsed by an InputStream instance back to a stream.
  573. 1999-06-04  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  574. * collections.h ([Set add:]): Remove remark about DupOption (moved to
  575. design document).
  576. ([Map at:replace:]): Remove remark about potential multiple duplicate
  577. keys.
  578. 1999-05-29  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  579. * Makefile.am (INCLUDES): Add -I$(top_builddir)/libobjc (for
  580. objc/externvar.h).
  581. * collections.h: Include externvar.h.
  582. 1999-05-28  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  583. * collections.h: Use `externvar' for external variable declarations.
  584. 1999-05-24  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  585. * Makefile.am (noinst_LTLIBRARIES): Switch from lib_LTLIBRARIES.
  586. 1999-05-24  Alex Lancaster  <alex@santafe.edu>
  587. * collections.h (Index): -getLoc, -setLoc: Make these methods
  588. accept and return (id <Symbol>).
  589. (PermutedIndex):  Likewise.
  590. * Collection.[hm] ([PermutedIndex_c -getLoc]): Likewise.
  591. * List_GEN.[hm] ([TINDEX -getLoc]): Likewise.
  592. * Set.[hm] ([SetIndex_c -getLoc]): Likewise.
  593. * Map.[hm] ([MapIndex_c -getLoc]): Likewise.
  594. * Array.[hm] ([ArrayIndex_c -getLoc]): Likewise.
  595. * Set.[hm] ([Set_c -containsKey:]): Implement.
  596. ([Set_c -removeKey:]): Implement.
  597. * collections.h, Map.[hm] ([Map_c -containsKey:]): Implement method.
  598.   Add -containsKey: compliance to KeyedCollection protocol.
  599. * collections.h (Map): Make protocol comply with CompareFunction.
  600. Remove redundant declaration of -removeKey: (already defined in
  601. KeyedCollection protocol).
  602. (KeyedCollection): Remove compliance with CompareFunction.
  603. (Set): Re-enable compliance with KeyedCollection.
  604. (InputStream):  Add docs on support for Lisp comments.
  605. 1999-05-19  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  606. * ListShuffler.m (uniformUnsRand): Externify.
  607. 1999-04-28  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  608. * Map.m: Replace pointer-conversion int and unsigned usages
  609. to PTRINT and PTRUINT as well as printf format %d and %u
  610. to PTRINTFMT and PTRUINTFMT.
  611. * List_GEN.m: Include misc.h instead of limits.h.
  612. 1999-04-26  Alex Lancaster  <alex@santafe.edu>
  613. * InputStream.m ([InputStream_c -getExpr]): Handle Lisp comments,
  614. ignore any remaining part of any line commencing with a semi-colon
  615. `;'.
  616. 1999-04-21  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  617. * List.m ([List_any -{hdf5,lispIn}:]): Move to setting phase.
  618. * Map.m ([Map_c -{lisp,hdf5}In:]): Likewise.
  619. 1999-03-14  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  620. * Makefile.am (INCLUDES): Add -I for libobjc.  Remove -I for
  621. objectbase.
  622. * ListShuffler.m: Don't include random.h.  Instead declare
  623. protocol with getUnsignedWithMin:withMax.
  624. 1999-03-09  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  625. * Set.[hm], collections.h ([Set_c -add:]): Return NO instead of
  626. nil.  Make return type boolean.
  627. * OrderedSet.[hm]: Likewise.
  628. 1999-03-04  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  629. * Permutation.m ([Permutation_c +createBegin:]): Revert last change.
  630. * Collection.m ([PermutedIndex_c +createBegin:]): Likewise.
  631. 1999-03-04  Vladimir Jojic  <vjojic@chama.santafe.edu>
  632. * Permutation.m ([Permutation_c +createBegin:]): Call allocIVars:
  633. with [self getClass] as an arguments instead of self and setClass
  634. to self.
  635. * Collection.m ([PermutedIndex_c +createBegin:]): Likewise.
  636. 1999-03-03  Vladimir Jojic  <vjojic@chama.santafe.edu>
  637. * Permutation.m ([Permutation_c -createEnd]): Use macro getCZone
  638. instead of getComponentZone: method.
  639. ([Permutation_c +createBegin:]): Likewise.
  640. * Collection.m ([PermutedIndex_c -createEnd]): Likewise.
  641. ([PermutedIndex_c -reshuffle]): Likewise.
  642. ([PermutedIndex_c -createEnd]): Likewise.
  643. 1999-03-02  Vladimir Jojic  <vjojic@chama.santafe.edu>
  644. * Permutation.m ([Permutation_c +createBegin:]): Use component zone
  645. for allocating shuffler.
  646. ([Permutation_c -mapAllocations:mapalloc]): Call 
  647. [super mapAllocations: mapalloc] to deallocate block of memory
  648. allocated by array.
  649. 1999-02-20  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  650. * InputStream.m ([InputStream_c -getExpr]): Disable "nil" handling.
  651. 1999-02-08  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  652. * Makefile.am (CURRENT, REVISION, AGE): No changes.  Version 1.4.1.
  653. 1999-02-07  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  654. * Map.m ([Map_c -lispIn:]): Support string keys (copying them from
  655. expression).
  656. * InputStream.m ([InputStream_c -getExpr]): Use readString
  657. instead of getExpr for keyword name.
  658. 1999-02-05  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  659. * List.m, Map.m ([... hdf5OutShallow:]): Call writeLevels
  660. in addition to writeRowNames.
  661. 1999-01-23  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>
  662. * InputStream.m ([InputStream_c -getExpr]): Raise an event
  663. instead of aborting.  Treat :keyword like #:keyword.
  664. * ListShuffler.m: Use raiseEvent() instead of raiseEvent:.
  665. 1999-01-21  Marcus G. Daniels  <mgd@chama.santafe.edu>
  666. * Map.m ([Map_c -_lispOut_:deep:]): Don't print #:compare-function
  667. when none set.
  668. 1999-01-20  Marcus G. Daniels  <mgd@chama.santafe.edu>
  669. * Makefile.am (CURRENT): Bump.
  670. * Map.m (GROUP_KEYS, GROUP_VALUES): New macros for string reuse.
  671. ([Map_c -allSameKeyClass]): New method.
  672. ([Map_c -allSameClass]): Use it.
  673. ([Map_c -allStringKeys]): New method.
  674. ([Map_c -hdf5OutDeep:]): Use it, handle String keys.
  675. ([Map_c -hdf5In:]): Handle String case.
  676. * StringObject.[hm]: Remove hdf5OutDeep:.
  677. 1999-01-19  Marcus G. Daniels  <mgd@chama.santafe.edu>
  678. * Map.m (hdf5_store_compare_function_attribute): New function.
  679. ([Map_c hdf5OutDeep:], [Map_c hdf5OutShallow:]): Use it.
  680. ([Map_c hdf5In:]): Implement shallow loading.
  681. * List.[hm]: Move HDF5 stuff from Collections.
  682. * List.[hm], Map.[hm], StringObject.[hm]: Switch from
  683. {lisp,hdf5}Out:deep: to
  684. {lisp,hdf5}OutShallow:.  (Deep is avoided in Archiver.)
  685. * Map.m ([Map_c hdf5Out:deep]): Don't compute anything for call
  686. to -setRowNameLength: and don't call it.
  687. ([Map_c -hdf5InCreate:]): New method.
  688. (setCompareFunctionByName): New function.
  689. ([Map_c -lispInCreate:], [Map_c -hdf5InCreate:]): Use it.
  690. ([Map_c -hdf5Out:deep:]): Check compareFunc before checking
  691. if key is a string (an object).
  692. ([Map_c -hdf5In:]): Implement deep loading and shallow/deep keys.
  693. * List.m ([List_any -hdf5In:]): New method.
  694. * Array.[hm], collections.h ([Array_c -setCount:]): Return self.
  695. * Collection.m, Map.m ([... hdf5Out:deep:]): For dataset,
  696. set compoundType and count separately.
  697. 1999-01-18  Marcus G. Daniels  <mgd@chama.santafe.edu>
  698. * Collection.m, Map.m ([... hdf5Out:deep:]): Set componentType
  699. from member prototype.
  700. 1999-01-17  Marcus G. Daniels  <mgd@chama.santafe.edu>
  701. * Collection.m, Map.m, String.m (hdf5Out:deep:): 
  702. Use setClass: instead of setSourceClass: and setCompoundType:count:
  703. instead of setRecordType:count: (renames).
  704. Call writeRowNames:.
  705. * Map.m ([... hdf5Out:deep:]): Set typeName to Map member
  706. type, not Map. 
  707. * Collection.m, Map.m, String.m ([... hdf5Out:deep:]): Use
  708. getTypeName instead of name.  
  709. * Map.m ([Map_c -lispOut:deep:]): Likewise.
  710. * List.m ([List_any -lispOut:deep:]): Likewise.
  711. * StringObject.m ([String_c -lispOut:deep:]): Use getTypeName
  712. instead of literal String.
  713. 1999-01-16  Marcus G. Daniels  <mgd@chama.santafe.edu>
  714. * Collection.m, Map.m ([... hdf5Out:deep:]): Set createFlag.
  715. 1999-01-15  Marcus G. Daniels  <mgd@chama.santafe.edu>
  716. * collections.h (String): Remove setLiteralFlag: and getLiteralFlag.
  717. * StringObject.[hm] ([String_c -getCount], [String_c -count], 
  718. [String_c -length]): Return unsigned.
  719. ([String_c -lispIn:], [String_c -lispOut:deep:],
  720. [String_c -hdfIn:], [String_c -hdfOutOut:deep:): New methods.
  721. * StringObject.m: ([String_c -out:]): Remove.
  722. * List.[hm]: Make getCountPerBlock return unsigned.
  723. * InputStream.m: Include StringObject.h.
  724. * Map.m ([Map_c -hdf5Out:deep:]): Use storeAttributes:value: to
  725. save a compare function attribute.  Add support for non-object
  726. keys.
  727. 1999-01-14  Marcus G. Daniels  <mgd@chama.santafe.edu>
  728. * Map.m, collection.h (compareCStrings): New function.
  729. ([Map_c -lispOut:deep:], [Map_c -lispInCreate:]): Add support
  730. for c-strings.
  731. (COMPARE_{FUNCTION,INT,UNSIGNED,CSTRING,ID}: New macros.
  732. ([Map_c -lispInCreate:], [Map_c -lispOut:deep:]): Use them.
  733. ([Map_c -lispOut:deep:]): Abort if unknown compareFunc.
  734. * Map.h (compareIDs, compareIntegers, compareUnsignedIntegers,
  735. compareCStrings): Declare.
  736. * Map.m ([Map_c -lispOut:deep:], [Map_c -hdf5Out:deep:]): Use DSIZE.
  737. ([Map_c -hdf5Out:deep:]): Handle compareFunc of integers differently
  738. from IDs.
  739. * Collections.m ([Collection_any -hdf5Out:deep:]): Use DSIZE.
  740. 1999-01-14  Alex Lancaster  <alex@santafe.edu>
  741. * Map.m ([Map_c -lispOut:deep:]): compareUnsigned ->
  742. compareUnsignedIntegers
  743. 1999-01-14  Marcus G. Daniels  <mgd@chama.santafe.edu>
  744. * Map.m, collections.h (compareUnsignedIntegers): New function.
  745. ([Map_c -lispOut:deep:], [Map_c -lispInCreate:]): Handle
  746. compareUnsignedIntegers case.
  747. * Collection.[hm], Map.[hm]: Always declare hdf5Out:deep:. Don't
  748. include swarmconfig.h.  Call hdf5_not_available when HAVE_HDF5 not
  749. defined.  
  750. * Collection.m, Map.m: Implement deep serialization for 
  751. hdf5Out:deep:.
  752. 1999-01-13  Marcus G. Daniels  <mgd@chama.santafe.edu>
  753. * Map.[hm]: Include swarmconfig.h.
  754. ([Map_c -allSameClass], [Map_c -hdf5Out:deep:]): New methods.
  755. * Collection.[hm]: Include swarmconfig.h.
  756. ([Collection_any hdf5Out:deep:]): New method.
  757. * Collection.m ([Colleciton_any hdf5Out:deep:]): Call
  758. numberRecord: on dataset.
  759. 1999-01-12  Marcus G. Daniels  <mgd@chama.santafe.edu>
  760. * Collection.[hm], collections.h ([Collection_any -allSameClass]):
  761. New method.
  762. 1999-01-12  Vladimir Jojic  <vjojic@wijiji.santafe.edu>
  763. * collections.h (PermutedIndex):  Declare -reshuffle.
  764. * Permutation.[hm] ([PermutationItem_c -describe:]): New method
  765. * Collection.[hm] ([PermutedIndex -reshuffle]): New method.
  766. 1999-01-10  Marcus G. Daniels  <mgd@chama.santafe.edu>
  767. * List.[hm] ([List_any -lispOut:deep:]): Renamed from lispOut:; added
  768. deep serialization boolean option.
  769. * Map.[hm]: Likewise.
  770. 1999-01-09  Marcus G. Daniels  <mgd@chama.santafe.edu>
  771. * InputStream.m ([InputStream_c -getExpr]): Handle nil and Nil
  772. as an ArchiverValue.
  773. ([ArchiverArray_c -setArray:]): Handle arrays of type id.
  774. * InputStream.[hm], collections.h ([ArchiverValue_c -setNil],
  775. ([ArchiverValue_c -getObject]): New methods.
  776. * InputStream.[hm] (ArchiverValue_c): Rename number to value.
  777. 1999-01-08  Marcus G. Daniels  <mgd@chama.santafe.edu>
  778. * List.m ([List_any -lispOut:]): Use MAKE_INSTANCE_FUNCTION_NAME
  779. instead of MAKE_OBJC_FUNCTION_NAME.
  780. * Map.m ([Map_c -lispOut:]): Likewise.
  781. 1999-01-06  Alex Lancaster  <alex@santafe.edu>
  782. * collections.h (PermutationItem): Add phase tags and
  783. documentation strings.
  784. 1999-01-06  Marcus G. Daniels  <mgd@chama.santafe.edu>
  785. * List_GEN.m ([TINDEX -setOffset:]): Cast count to int.
  786. * collections.h (PermutationItem): New protocol.
  787. (PermutedIndex): Remove no-update qualification.
  788. * collections.m (_collections_implement): Setup PermutationItem.
  789. * Collection.m: Include Permutation.h and collections.h.
  790. ([PermutedIndex_c -next], [PermutedIndex_c -prev]): Use
  791. PermutationItem to get item.  Skip over removed items.
  792. ([PermutedIndex_c -findNext:], [PermutedIndex_c -findPrev:],
  793. [PermutedIndex_c -get]): Get item via PermutedItem.
  794. ([PermutedIndex_c -put:]): Use atOffset:put: with
  795. PermutedItem's offset. 
  796. ([PermutedIndex_c -remove]): Use indexAtOffset with PermutedItem's
  797. offset to remove item.
  798. ([PermutedIndex_c -getLoc]): Use PermutedItem to get position and
  799. return Removed if position is < 0, otherwise use result of 
  800. getLoc on internal index.
  801. * Permutation.m: Include collections.h.
  802. ([Permutation_c -mapAllocations:mapalloc]): Map over internal
  803. PermuteItems.
  804. * Permutation.h ([Permutation_c -mapAllocations:mapalloc]): Declare.
  805. * Permutation.[hm] ([Permutation_c -getCollection]): Add.
  806. ([Permutation_c -generatePermutation]): Remove.
  807. * Permutation.[hm] (PermutationItem_c): New class.
  808. 1998-12-29  Marcus G. Daniels  <mgd@chama.santafe.edu>
  809. * Array.m (initArray): Make copyCount unsigned.
  810. ([Array_c -atOffset:]): Cast count to int for comparison with
  811. offset.
  812. ([Array_c -atOffset:put:]): Likewise.
  813. ([ArrayIndex_c -setOffset:]): Likewise.
  814. * Collection.m (indexAtOffset): Cast count to int for comparison with
  815. offset.
  816. 1998-12-28  Marcus G. Daniels  <mgd@chama.santafe.edu>
  817. * List_GEN.m ([TARGET -_createPermutedIndex_:forIndexSubclass:]): 
  818. Use -setCollection: instead of +createBegin:forCollection:.
  819. * collections.h: Change all count arguments to unsigned.
  820. (PermutedIndex): Remove generatePermutation.
  821. (ArchiverKeyword, ArchiverArray, ArchiverValue,
  822. ArchiverPair): Add protocol summary and description strings.
  823. * Permutation.m ([Permutation_c -createEnd]): Check for a 
  824. collection and generatePermutation when finished.
  825. * Permutation.[hm], collections.h: Remove
  826. +createBegin:forCollection:. Add setCollection:.
  827. * Collection.m ([Collection_any -beginPermuted:aZone]): Use 
  828. setCollection: instead of removed +createBegin:forCollection:.
  829. ([PermutedIndex_c +createBegin:]): Likewise.
  830. ([PermutedIndex_c generatePermutation]): Remove.
  831. * Collection.h: Change count arguments from int to unsigned.
  832. Declare setCollection: and setUniformRandom:.  Don't
  833. declare generatePermutation.
  834. * Array.[hm]: Change count arguments from int to unsigned.
  835. 1998-12-26  Marcus G. Daniels  <mgd@chama.santafe.edu>
  836. * collections.h (Collection): Declare -beginPermuted:.
  837. (PermutedIndex): Declare generatePermutation.
  838. * Collection.m ([Collection_any -beginPermuted:]): Eliminate
  839. temporary variable.
  840. 1998-12-22  Vladimir Jojic  <vjojic@wijiji.santafe.edu>
  841. * Collection.h (PermutedIndex_c): Remove +createBegin:.
  842. (PermutedIndex_c): Add +createBegin:forCollection:.
  843. * Collection.m ([Collection_any -beginPermuted:aZone]): 
  844. Modify to support new PermutedIndex class.
  845. ([PermutedIndex_c +createBegin:]): Remove.
  846. ([PermutedIndex_c +createBegin:forCollection:]): Add.
  847. ([PermutedIndex_c -createEnd]): Modify to support new Permutation 
  848. class.
  849. ([PermutedIndex_c -setUniformRandom:]): Allow setting of 
  850. distribution of the shuffler used to generate Permutation.
  851. ([PermutedIndex_c -generatePermutation]): Modify to support new 
  852. Permutation class.
  853. ([PermutedIndex_c -next]): Delegate the message to the index 
  854. operating on Permutation.
  855. ([PermutedIndex_c -prev]): Likewise.
  856. ([PermutedIndex_c -findNext:]): Likewise.
  857. ([PermutedIndex_c -findPrev:]): Likewise.
  858. ([PermutedIndex_c -get]): Likewise.
  859. ([PermutedIndex_c -getLoc]): Likewise.
  860. ([PermutedIndex_c -setLoc:]): Likewise.
  861. ([PermutedIndex_c -getOffset]): Likewise.
  862. ([PermutedIndex_c -setOffset:]): Likewise.
  863. ([PermutedIndex_c -put:]): Disable. Raise an SourceMessage error.
  864. ([PermutedIndex_c -remove]): Likewise.
  865. ([PermutedIndex_c -mapAllocations:mapalloc]): Drop permutation along
  866. with the PermutedIndex.
  867. * Permutation.m ([Permutation_c +createBegin:forCollection:]):
  868. Rename +createBegin: to +createBegin: forCollection:. 
  869. ([Permutation_c -createEnd:]): Initialize Permutation with the
  870. ids instead of integers.
  871. ([Permutation_c -setMaxElement:): Remove.
  872. ([Permutation_c -setMinElement:): Remove.
  873. * Permutation.h (Permutation_c): Change Permutation_c to hold
  874. ids of the objects instead of the integers representing offsets.
  875. (Permutation_c): Remove methods setMaxElement: and setMinElement: 
  876. and instance variables maxElement and minElement. 
  877. (Permutation_c): Remove +createBegin:. 
  878. (Permutation_c): Add +createBegin: forCollection:.
  879. * collections.h: Update descriptions of Permutation and 
  880. PermutedIndex.
  881. * List_GEN.m ([TARGET -_createPermutedIndex_:forIndexSubclass:]): 
  882. Modify to support new PermutedIndex_c class.
  883. 1998-12-21  Marcus G. Daniels  <mgd@chama.santafe.edu>
  884. * StringObject.m: Don't include assert.h.
  885. ([String_c +create:setC:]): Don't use assert on argument.
  886. * Array.m, OutputStream.m: Include misc.h instead of memory.h.
  887. 1998-12-18  Marcus G. Daniels  <mgd@chama.santafe.edu>
  888. * collections.h, Map.[hm] ([Map -setCompareFunction:]): Return self.
  889. (OrderedSet, Set): Don't adopt KeyedCollection.
  890. 1998-12-17  Marcus G. Daniels  <mgd@chama.santafe.edu>
  891. * collections.h (Index): Don't adopt Copy protocol.
  892. (KeyedCollection): Remove -createIndex:setMember: and
  893. -createIndex:at:.
  894. (ListShuffler): Remove +create:withUniformRandom:.
  895. Don't adopt CREATABLE or Create.
  896. * StringObject.h (String_c): Implement String protocol.
  897. * Set.h (Set_c): Implement Set protocol.
  898. (SetIndex_c): Implement KeyedCollectionIndex.
  899. * OutputStream.h (OutputStream_c): Implement OutputStream protocol.
  900. * OrderedSet.m (OrderedSetIndex_c): Add Creating and Using
  901. tags.
  902. * OrderedSet.h (OrderedSet_c): Implement OrderedSet protocol.
  903. (OrderedSetIndex_c): Implement KeyedCollectionIndex protocol.
  904. * Map.[hm] ([Map_c -createIndex:fromKey:]): Remove.
  905. ([Map_c -getCompareFunction]): Add.
  906. (MapIndex): Add Using tag.
  907. * Map.h (Map_c): Implement Map protocol.
  908. (MapIndex_c): Implement MapIndex protocol.
  909. * List_GEN.m (TARGET, TINDEX): Add Creating and Using tags.
  910. * List_GEN.h (TARGET): Implement List protocol.
  911. (TINDEX): Implement Index protocol.
  912. * ListShuffler.h: Include collections.h.
  913. (ListShuffler_c): Implement ListShuffler protocol.
  914. * InputStream.h (InputStream_c): Implement InputStream protocol.
  915. * Array.m (ArrayIndex): Add Creating and Using phase tags.
  916. * Collection.h (Collection_any): Implement Collection protocol.
  917. (Index_any): Implement Index protocol. 
  918. (PermutedIndex_c): Implement PermutedIndex protocol and inherit
  919. from Index_any. Remove collection ivar.
  920. * Collection.[hm] (Collection_any): Remove getReadOnly. 
  921. Add copy: and begin: stubs.
  922. (Index_any): Add Creating tag.
  923. Add setOffset:, getOffset, setLoc:, put:, remove, prev, and next
  924. stubs.
  925. (PermutedIndex_c): Add Creating and Using tags.
  926. * Array.h (Array_c): Implement Array protocol.
  927. (ArrayIndex_c): Implement Index protocol.
  928. 1998-12-15  Vladimir Jojic  <vjojic@wijiji.santafe.edu>
  929. * Permutation.m ([Permutation_c +createBegin:]): Use component zone 
  930. for internal objects of Permutation.
  931. * Collection.m ([PermutedIndex_c -mapAllocations:mapalloc]): 
  932. Remove return self.
  933. ([PermutedIndex_c -createEnd]): Use component zone for internal
  934. objects of PermutedIndex.
  935. * Permutation.m ([Permutation_c -mapAllocations:mapalloc]): 
  936. Likewise
  937. * Collection.m ([PermutedIndex_c -mapAllocations:mapalloc]): 
  938. Cast mapAllocations: as void.
  939. * Permutation.m ([Permutation_c -mapAllocations:mapalloc]): 
  940. Likewise.
  941. 1998-12-14  Vladimir Jojic  <vjojic@wijiji.santafe.edu>
  942. * Collection.m ([PermutedIndex_c -mapAllocations:mapalloc]): 
  943. mapAllocations: implemented.
  944. ([PermutedIndex_c -createEnd]): Add setMappedAlloc.
  945. * Collection.h: Add mapAllocations: method to PermutedIndex_c.
  946. * ListShuffler.m: Declare uniformUnsRandom to avoid linking problems.
  947. ([ListShuffler_c -createEnd]): Add setNextPhase.
  948. * Permutation.m ([Permutation_c -mapAllocations:mapalloc]): 
  949. mapAllocations: implemented.
  950. * Permutation.h: Add mapAllocations method.
  951. 1998-12-14  Marcus G. Daniels  <mgd@chama.santafe.edu>
  952. * ListShuffler.[hm], collections.h ([ListShuffler_c
  953. -setUniformRandom:]): Return self instead of nothing.
  954. * ListShuffler.[hm], collections.h ([ListShuffler_c
  955. -shufflePartialList:Num:]): Make num argument unsigned. 
  956. * Permutation.[hm], collections.h ([Permutation_c
  957. -setMinElement:]): ([Permutation_c -setMaxElement:]): Take
  958. unsigned as argument instead of int and return self instead of
  959. nothing.
  960. * ListShuffler.m ([ListShuffler_c -shufflePartialList:Num:]): Make
  961. j, k and m unsigned.
  962. ([ListShuffler_c -shuffleWholeList:]): Make j and k unsigned.
  963. * Permutation.m [Permutation_c -createEnd]): Use unsigned instead
  964. of int for i.  Send setCount: and atOffset: to self instead of super.
  965. ([Permutation_c -describe:]): Make elem unsigned and sprintf
  966. format %u instead of %d.
  967. * collections.m (_collections_implement): Associate ListShuffler_c
  968. and ListShuffler.
  969. * collections.h (ListShuffler): Adopt Create, Drop, and CREATABLE.
  970. * Makefile.am (INCLUDES): Add random.
  971. * ListShuffler.m: Include random.h, not random/random.h.  Don't
  972. include simtools.h. 
  973. ([ListShuffler_c +createBegin:]): Remove. 
  974. 1998-12-12  Marcus G. Daniels  <mgd@chama.santafe.edu>
  975. * Makefile.am (module_headers): Add collections.xm.
  976. 1998-12-11  Marcus G. Daniels  <mgd@chama.santafe.edu>
  977. * Permutation.[hm]: New files.
  978. 1998-12-11  Vladimir Jojic  <vjojic@wijiji.santafe.edu>
  979. * Array.h (ArrayIndex_c): setOffset returns id. 
  980. * Array.m ([ArrayIndex_c -setOffset:]): setOffset modified to
  981. return object at offset.
  982. * Collection.h (Collection_any): Add method beginPermuted: 
  983. (PermutedIndex): New class for randomized traversal of a collection.
  984. * Collection.m ([Collection_any -beginPermuted:aZone]): New method
  985. used for creation of a PermutedIndex over any collection.
  986. (PermutedIndex_c): New class that allows randomized traversal of any
  987. collection.
  988. * List_GEN.h:Add method _createPermutedIndex_:forIndexSubclass: 
  989. * List_GEN.m ([TARGET -_createPermutedIndex_:forIndexSubclass:]): 
  990. New method that supports creation of PermutedIndex that operates
  991. on top of an arbitrary ListIndex subclass.
  992. * Map.h (Map_c): Add method _createPermutedIndex_:forIndexSubclass:
  993. * Map.m ([Map_c -_createPermutedIndex_:forIndexSubclass:]): 
  994. New method that suports creation of PermutedIndex that  
  995. operates on top of an arbitrary MapIndex subclass.
  996. * collections.m (_collections_implement): Permutation and 
  997. PermutationIndex class objects added.
  998. * collections.h (ListShuffler): ListShuffler protocol moved from 
  999. simtools to collections
  1000. 1998-12-01  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1001. * collections.h (Index): Change example to avoid processing the
  1002. End location.
  1003. 1998-11-19  Vladimir Jojic  <vjojic@wijiji.santafe.edu>
  1004. * Map.m ([Map_c -createIndex:fromMember:]): implemented as
  1005. linear search
  1006. 1998-11-19  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1007. * Map.m ([Map_c -lispIn:]): Remove ARCHIVERLITERAL handling; all
  1008. pairs are the same.
  1009. ([Map_c -lispOut:]): Output (cons key value) instead of '(key . value).
  1010. * InputStream.m ([InputStream_c -getExpr]): Convert (key . value)
  1011. to ArchiverPair.  Skip "'"; don't make a (quote x) type datastructure.
  1012. Treat (cons x y) the same as '(x . y).
  1013. * InputStream.[hm] (ArchiverPair_c), collections.h,
  1014. collections.m (_collections_implement): New type.
  1015. * predicates.[hm] (cons_literal_p, list_literal_p, symbolp, pairp):
  1016. New predicates.
  1017. 1998-11-18  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1018. * List.m ([List_any -getCountPerBlock]): abort instead of exit.
  1019. * collections.h (List): The methods here aren't create-time; mark
  1020. as USING phase.
  1021. 1998-11-17  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1022. * InputStream.[hm] (InputStream): New method setBoolean:
  1023. and getBoolean.  Handle #f and #t from input.
  1024. * Collection.m ([Collection_any -_lispInAttr_:]): New method for
  1025. shared create-time expression option parsing. 
  1026. [Collection_any -_lispOutAttr_:]): New using-time expression option
  1027. output method.  Both are for subclass use.
  1028. * List_GEN.m: Reformatting throughout.  New macros COUNT,
  1029. FIRST, and FIRSTPREV to simplify code.
  1030. * List.m ([List_any -lispIn:], [List_any -lispInCreate:], 
  1031. [List_any -lispOut:]): New methods.  InitialValueSet not yet
  1032. handled because a copy of that list is not saved from create-time.
  1033. * Map.m ([Map_c -lispIn:], [Map_c -lispOut:], [Map_c
  1034. -lispInCreate): New methods.  Support compareIntegers
  1035. and compareIDs.  lispIn: pending for InputStream support of
  1036. pair syntax (and conversion to expr Map).
  1037. * List.h (List_any): Conform to Serialization protocol.
  1038. Declare -lispIn: and -lispOut:.
  1039. * Map.h (Map_c): Likewise.
  1040. * collections.h (List, Map): Adopt Serialization protocol.
  1041. (ArchiverValue): Add setBoolean: and getBoolean.
  1042. * Collection.[hm], Map.[hm]: Reformatting throughout.
  1043. 1998-11-16  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1044. * predicates.[hm] (keywordp, valuep, arrayp): New predicates.
  1045. * InputStream.m: Include misc.h instead of stdio.h and ctype.h
  1046. Include predicates.h.
  1047. ([InputStream_c -getExpr]): Don't require leading 0 on octal
  1048. numbers.  Handle negative values.  
  1049. * InputStream.[hm] (ArchiverKeyword_c,
  1050. ArchiverArray_c, ArchiverValue_c): New classes.
  1051. * collections.h: Add corresponding protocols.
  1052. * collections.m (_collections_implement): Associate them.
  1053. 1998-11-15  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1054. * InputStream.m ([InputStream_c -_unexpectedEOF_], 
  1055. [InputStream_c -_badType_:]): Raise an event instead of aborting.
  1056. Change return type to void.
  1057. ([InputStream_c -getExpr]): Add support for keyword and array
  1058. loading.
  1059. 1998-11-12  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1060. * OutputStream.[hm]: Remove -appendC:.
  1061. 1998-11-11  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1062. * Array.[hm] ([Array_c +create:setMemberAlloc:setCount:],
  1063. [Array_c -getMemberAlloc]
  1064. [Array_c -setMemberAlloc:setCount:]): Remove.
  1065. * collections.h: Remove creating -setDefaultMember:; there is
  1066. already a setting method.
  1067. 1998-11-02  Marcus G. Daniels  <mgd@chama.santafe.edu>
  1068. * collections.h (Collection): Note that copies are shallow.
  1069. 1998-10-10  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1070. * Makefile.am (REVISION): Increment.  Swarm 1.3.1 released.
  1071. * OrderedSet.m: Reformatting throughout.
  1072. ([OrderedSet_c -contains:]): Return YES and NO instead of 1 and 0.  
  1073. * collections.h (Sorted): Moved to design document.
  1074. * StringObject.m ([String_c +create:setC:]): Use getZone instead
  1075. of argument aZone for allocating string space.
  1076. 1998-09-08  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1077. * Map.[hm]: ([MapIndex_c -setLoc:]): 
  1078. Make argument to setLoc: of type id <Symbol>.
  1079. * Set.[hm] ([SetIndex_c -setLoc:]): Likewise.
  1080. * List_GEN.[hm] ([TINDEX -setLoc:]): Likewise.
  1081. * Array.[hm] ([ArrayIndex_c -setLoc:]): Likewise.
  1082. * Map.h, List_GEN.h, Set.h: Reformatting throughout.
  1083. * collections.h (INDEXSTARTP, INDEXENDP, REMOVEDP,
  1084. ARCHIVERLITERALP): New macros.
  1085. * Collection.m: Reformatting throughout.
  1086. ([Index_any -findNext:]): Use INDEXENDP.
  1087. ([Index_any -findPrev:]): Use INDEXSTARTP.
  1088. * Array.m: Reformatting throughout.
  1089. Include collections.h.
  1090. ([ArrayIndex_c -next], [ArrayIndex_c -prev], [ArrayIndex_c -get], 
  1091. [ArrayIndex_c -put:], [ArrayIndex_c -getLoc], [ArrayIndex_c -setLoc:],
  1092. [ArrayIndex_c -getOffset]):  Use INDEX{START,END}P.
  1093. 1998-08-24  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1094. * Makefile.am (CURRENT): Increment.  Swarm 1.3 released.
  1095. (install-data-local): Do two installs, for install-sh case.
  1096. 1998-07-30  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1097. * Array.m (initArray): Avoid allocating a block of size zero.
  1098. 1998-07-22  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1099. * collections.h: Replace @deftype with @protocol throughout.
  1100. 1998-07-20  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1101. * Makefile.am: Replace String with StringObject.
  1102. * StringObject.m, predicates.m: Include StringObject.h instead of
  1103. String.h.
  1104. 1998-07-16  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1105. * collections.h: Remove Stack and Queue (now in design document).
  1106. 1998-07-09  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1107. * Map.m ([Map_c -at:insert:]): Actually reject an insert for
  1108. a pre-existing key.
  1109. * collections.h (Map): Remove mention of DupOption.
  1110. * Makefile.am (INCLUDES): Add misc.
  1111. 1998-07-08  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1112. * String.m: Don't include string.h.  Include misc.h.
  1113. * InputStream.m, OutputStream.m: Don't include string.h or assert.h.
  1114. 1998-07-08  Alex Lancaster  <alex@santafe.edu>
  1115. * collections.h (KeyedCollection): Removed to design document
  1116. -getCountAtKey:, -containsKey: methods, all are unimplemented.
  1117. Removed comments for -{get,set}IndexFromMember:
  1118. (KeyCollectionsIndex): Removed to design document commented-out
  1119. -setMember method.
  1120. (Map): Removed to design document -setKeyType:, setKeySize:
  1121. methods, unimplemented.
  1122. 1998-06-30  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1123. * List_GEN.m ([... -next]): Return NULL if there is a wrap.
  1124. 1998-06-25  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1125. * String.m, collections.[hm]: Remove LiteralString.
  1126. 1998-06-24  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1127. * Makefile.am (lib_LIBRARIES, libcollections_a_SOURCES): Remove.
  1128. (collections_HEADERS): Remove $(module_headers).
  1129. (EXTRA_DIST): Add List_GEN.m.
  1130. (install-data-local): New target.
  1131. 1998-06-23  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1132. * Makefile.am (lib_LTLIBRARIES, libcollections_la_SOURCES,
  1133. libcollections_la_LDFLAGS, SRC, CURRENT, REVISION, AGE): New
  1134. variables.  Set *_SOURCES from SRC.
  1135. 1998-06-22  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1136. * Makefile: Remove.
  1137. 1998-06-21  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1138. * Makefile.am: New file.
  1139. 1998-06-17  Alex Lancaster  <alex@santafe.edu>
  1140. * collections.m: Removed extern from LiteralString declaration.
  1141. 1998-06-15  Alex Lancaster  <alex@santafe.edu>
  1142. * Array.m ([Array_c -describe:]): Removed cast of pointer to
  1143. unsigned long.
  1144. 1998-06-14  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1145. * collections.h: Remove MemberType; don't adopt it in Collection.
  1146. Remove IndexSafety.  Remove mention of MemberType in Drop.  Remove
  1147. EndsOnly; don't adopt it in List.  Remove DupOption,
  1148. BucketFunction, PartiallyOrdered, PartialOrderContext, and
  1149. PartialOrderRelations; don't adopt in KeyedCollection.  Remove
  1150. mention of duplicate key, partial ordering, and index safety from
  1151. KeyedCollection.  Remove disabled -setIndexFromKey:,
  1152. -getIndexFromKey, -getKeyAllocSize, -at:insert:setIndex:,
  1153. -insertGroup, -removeKey:getKey:, -replaceKey:,
  1154. -createIndex:setKey:, -createIndex:setMember:.
  1155. 1998-06-05  Alex Lancaster  <alex@santafe.edu>
  1156. * collections.h (LiteralString): Made an extern id <String>,
  1157. rather than @class variable.  Added doc tag.
  1158. (DupOption): Put space between global variable tag and @end
  1159. directive - causing problems for make-h2x script.
  1160. * collections.m: (LiteralString): Likewise, removed dummy
  1161. #defines.
  1162. 1998-06-03  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1163. * collections.h: Updated documentation tags.
  1164. (BucketFunction): -getBucketFunction now returns bucket_t.
  1165. (CompareFunction): -getCompareFunction now returns compare_t.
  1166. 1998-06-01  Alex Lancaster  <alex@santafe.edu>
  1167. * collections.h (Collection): Added method -setIndexFromMemberLoc:
  1168. to protocol.
  1169. (Index): Added doc string (//G) to Symbol and Error global
  1170. variables - made these inside the @end protocol declaration for
  1171. Index.
  1172. (KeyedCollection): Added method -createIndex:fromMember: to
  1173. protocol.
  1174. * collections.m (LiteralString): Redefine LiteralString as
  1175. LiteralString_ between the imports of collections.xm and
  1176. Collection.h to avoid redeclaration error.
  1177. 1998-06-01  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1178. * collections.m: Put LiteralString global here.
  1179. * collections.h: Make LiteralString a @class.
  1180. 1998-05-06  Marcus G. Daniels  <mgd@ute.santafe.edu>
  1181. * collections.h (IndexSafety, Offsets, ForEach, DefaultMember,
  1182. MemberBlock, Array, EndsOnly, DupOption, Sorted, CompareFunction,
  1183. BucketFunction, PartiallyOrdered, PartialOrderContext, MapIndex,
  1184. InputStream): Add //S.
  1185. * Set.m ([Set_c -at:memberSlot:]): Return NO, not nil.
  1186. * collections.h (Index, ListIndex, Stack, Queue, PartialOrderRelations,
  1187. Set, MapIndex): Add phase tags.
  1188. 1998-05-04  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1189. * collections.h: Remove NextPrev from Index protocol.  Tweak
  1190. comments for the sake of documentation processing.
  1191. 1998-04-30  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1192. * Set.[hm] ([Set_c -createIndex:fromMember:]): Rename from
  1193. createIndexIn:fromMember:.  Raise a NotImplemented event.
  1194. * ListGen.m: Adjust error message to be createIndex:fromMember
  1195. not createIndexIn:fromMember.
  1196. * collections.h: Augment the Index documentation.  Move the
  1197. existing Index info to the Collections protocol, as it is
  1198. a bit more general.
  1199. 1998-04-28  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1200. * collections.h: Add documentation tags.
  1201. * collections.h: New protocols: MemberType, IndexSafety, Offsets, 
  1202. ForEach.  (Collection): Include them.
  1203. New protocols: DefaultMember, MemberBlock.
  1204. (Array): Include them.
  1205. New protocol: EndsOnly.
  1206. (List): Include it.
  1207. New protocols: DupOption, Sorted, CompareFunction, BucketFunction,
  1208. PartiallyOrdered, PartialOrderContext, PartialOrderRelations.
  1209. (KeyedCollection): Include them.
  1210. * String.m: Reformatting throughout.
  1211. * String.[hm]: ([String_c -appendC:]): Remove.
  1212. * InputStream.m (readString): Use catC: instead of appendC:.
  1213. 1998-04-27  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1214. * Makefile: Remove duplicate SWARMHOME assignment.
  1215. 1998-04-11  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1216. * collections.h: Make archiver symbols extern, not common.
  1217. 1997-12-04  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1218. * collections.h (OutputStream, String):  Constify string arguments.
  1219. * OutputStream.[hm]: Constify string arguments.
  1220. * String.[hm]: Constify string arguments.
  1221. 1997-11-29  Marcus G. Daniels  <mgd@wijiji.santafe.edu>
  1222. * Makefile (OBJECTS): Add InputStream.o and predicates.o.
  1223. (install-headers): Add InputStream.h and predicates.o.
  1224. ($(INCLIB)/InputStream.h): Add.
  1225. ($(INCLIB)/predicates.h): Add.
  1226. * collections.m (_collections_implement): Add InputStream.
  1227. (_collections_initialize): Make customized LiteralString type.
  1228. Define Lispish symbols generated by getExpr.
  1229. * collections.h: Add @deftype for InputStream, and declare symbols
  1230. that getExpr can return.
  1231. * predicates.[hm]: New files.  Provide some convenience predicate
  1232. functions for identifying strings and lists.
  1233. * InputStream.[hm]: New files.  This class is introduced to read
  1234. Lisp-like expressions into lists using the `getExpr' method.
  1235. * collections.h: Declare [gs]etLiteralFlag methods.
  1236. * String.m ([String_c +createBegin:]): Initialize literalFlag to zero.
  1237. ([String_c -setLiteralFlag:]): Add.
  1238. ([String_c -getLiteralFlag]): Add.
  1239. ([String_c -out:]): Add.  This routine that writes string to
  1240. an archive stream, and quotes its value when literalFlag is set.
  1241. * String.h (String_s): Add literalFlag instance variable, and
  1242. declare accompanying getter/setter methods.
  1243. * collections.h: Append <Collection> to KeyedCollection deftype.