Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/NOTES/HISTORY
ViewVC logotype

Diff of /sml/trunk/NOTES/HISTORY

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1613, Wed Aug 11 03:35:58 2004 UTC revision 1717, Thu Nov 25 04:11:57 2004 UTC
# Line 13  Line 13 
13  Description:  Description:
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16    Name: Matthias Blume (blume (at) tti - c (dot) org)
17    Date: 2004/11/24 22:15:00 CST
18    Tag: blume-20041124-cml
19    Description:
20    
21    Made sure CML compiles when Position = Int64.
22    
23    ----------------------------------------------------------------------
24    Name: Matthias Blume (blume (at) tti - c (dot) org)
25    Date: 2004/11/24 14:30:00 CST
26    Tag: blume-20041124-position
27    Description:
28    
29    The compiler can now be compiled in a mode that makes structure Position
30    equal to Int64.  The default, however, is unchanged (Position = Int31)
31    for the time being.
32    
33    To enable 64-bit positions, use the following procedure:
34    
35    1. Start sml
36    2. Autoload $smlnj/cmb.cm (if not already autoloaded)
37    3. Type
38          #set (CMB.symval "USE_64_BIT_POSITIONS") (SOME 1);
39    4. Run CMB.make() as usual.
40    
41    This is barely tested.  The only test so far was a little SML program
42    counting the number of characters in an 8-gigabyte file by
43    reading it character-by-character.  That test was successful.
44    
45    In support of 64-bit positions, a number of new functions have been
46    added to the runtime system.
47    
48    ----------------------------------------------------------------------
49    Name: Matthias Blume (blume (at) tti - c (dot) org)
50    Date: 2004/11/23 14:45:00 CST
51    Tag: blume-20041123-useFile
52    Description:
53    
54    Fixed a problem with unhelpful error messages related to problems with
55    .cm- or .sml files that appear as part of the sml command line.
56    
57    ----------------------------------------------------------------------
58    Name: Matthias Blume (blume (at) tti - c (dot) org)
59    Date: 2004/11/18 15:40:00 CST
60    Tag: Release_110_51
61    Description:
62    
63    New working version (110.51).  NEW BOOTFILES!
64    
65    ----------------------------------------------------------------------
66    Name: Matthias Blume (blume (at) tti - c (dot) org)
67    Date: 2004/11/18 15:35:00 CST
68    Tag: <none>
69    Description:
70    
71    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
72    Joemann).
73    
74    ----------------------------------------------------------------------
75    Name: Allen Leung (leunga (at) reservoir (dot) com)
76    Date: 2004/11/17 16:05:21 EST 2004
77    Tag: leunga-20041117-mlrisc-live-kill
78    Description:
79    
80       Added support for MLTree constructs LIVE and KILL
81    to all the architectures.
82    
83    ----------------------------------------------------------------------
84    Name: Matthias Blume (blume (at) tti - c (dot) org)
85    Date: 2004/11/13 00:20:00 CST
86    Tag: blume-20041113-versiontool
87    Description:
88    
89    - Stripped down the versiontool: It now only handles the version number.
90      The date string is generated at bootstrap time (during makeml).
91    
92    - In a previous commit, fixed a minor issue with how polyequal is being
93      translated.  In particular, the code now "looks through" abstractions.
94      This results in slightly fewer polyEqual warnings and hopefully slightly
95      more efficient code.  Important examples for where this matters are
96      the new int64 and word64 types.
97    
98    ----------------------------------------------------------------------
99    Name: Matthias Blume (blume (at) tti - c (dot) org)
100    Date: 2004/11/12 00:30:00 CST
101    Tag: blume-20041112-int64
102    Description:
103    
104    Structure Int64 fully hooked in.  (The implementation is not very
105    efficient, though.)
106    
107    ----------------------------------------------------------------------
108    Name: Matthias Blume (blume (at) tti - c (dot) org)
109    Date: 2004/11/11 17:30:00 CST
110    Tag: blume-20041111-more64
111    Description:
112    
113    All the pieces of Word64 are now there, with the exception of the
114    conversions from and to LargeWord. (Eventually these need to be identities,
115    but for the time being they don't even make sense because LargeWord is
116    32-bit wide.)
117    
118    Also started to add similar support for Int64, but major pieces of that
119    are still missing.
120    
121    ----------------------------------------------------------------------
122    Name: Matthias Blume (blume (at) tti - c (dot) org)
123    Date: 2004/11/11 00:15:00 CST
124    Tag: blume-20041111-word64
125    Description:
126    
127    Structure Word64 is now (almost) complete, word literals and patterns
128    seem to work.  There are a few odd pieces missing.  In particular,
129    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
130    at the moment.
131    
132    Making Word64 official would mean that LargeWord becomes Word64.  But
133    this requires extreme care because most word-word conversions have to
134    go through LargeWord, so making a mistake means loss of efficiency or
135    worse.  Eventually there will be a solution similar to (but actually
136    simpler than) what I did with IntInf.
137    
138    ----------------------------------------------------------------------
139    Name: Matthias Blume (blume (at) tti - c (dot) org)
140    Date: 2004/11/10 18:12:00 CST
141    Tag: blume-20041110-64bit
142    Description:
143    
144    More 64-bit hacking (but still not even half-way there yet).
145    Also, some assorted improvements to the handling of 8-bit words.
146    
147    ----------------------------------------------------------------------
148    Name: Matthias Blume (blume (at) tti - c (dot) org)
149    Date: 2004/11/09 17:50:00 CST
150    Tag: <none>
151    Description:
152    
153    Started adding some infrastructure for supporting 64-bit int- and
154    word-types.  (Still in its very early stages.)
155    
156    ----------------------------------------------------------------------
157    Name: Matthias Blume (blume (at) tti - c (dot) org)
158    Date: 2004/10/28 10:45:00 CDT
159    Tag: Release_110_50
160    Description:
161    
162    New working version (110.50).  NEW BOOTFILES!
163    
164                 =====================
165    
166    Also:
167    
168      - Changend config/srcarchiveurl from a file just
169        containing the URL string into a file containing
170        shell script code.  The code has access to the $VERSION variable.
171      - Made corresponding changes to config/install.sh and config/unpack.
172      - Default contents of config/srcarchiveurl uses $VERSION and
173        normally does not have to be edited to reflect a version change.
174    
175      (As a result, a version change can be done by just editing
176       config/version, the rest is now automatic.)
177    
178    ----------------------------------------------------------------------
179    Name: Matthias Blume (blume (at) tti - c (dot) org)
180    Date: 2004/10/27 17:50:00 CDT
181    Tag: blume-20041027-btrace-msg
182    Description:
183    
184    BackTrace.monitor now also reports the source of the exception that
185    triggered the trace.
186    
187    ----------------------------------------------------------------------
188    Name: Matthias Blume (blume (at) tti - c (dot) org)
189    Date: 2004/10/27 17:20:00 CDT
190    Tag: blume-20041027-x86-c-calls
191    Description:
192    
193    This is the HISTORY entry for two earlier commits, both concerning
194    the x86 c-calls code in MLRISC:
195    
196      - added a missing LOAD in the code that deals with struct arguments
197      - made sure the caller does not add the wrong number of bytes to the
198        stack pointer after a call of a function returning a struct
199        (the callee already pops the implicit argument which points to
200         the space reserved for the result)
201    
202    ----------------------------------------------------------------------
203    Name: Allen Leung (leunga (at) reservoir (dot) com)
204    Date: 2004/10/24 14:00:00 EST
205    Tag: leunga-20041024-x86-gas-fucomip
206    Description:
207    
208       John discovered a bug in the syntax of fucomip.
209       The opcodes FU?COMIP? have been changed to
210    
211           fu?comip? %st(i), %st
212    
213    ----------------------------------------------------------------------
214    Name: Matthias Blume (blume (at) tti - c (dot) org)
215    Date: 2004/10/20 15:06:00 CDT
216    Tag: blume-20041020-standalone-backtrace
217    Description:
218    
219    Added a mechanism for getting back-trace information from standalone
220    programs.  Here is how it works:
221    
222       1. The part of the program from which you want to get backtrace
223          information (usually the whole program) should be wrapped with
224          BackTrace.monitor.  This is a (unit->'a)->'a function, and your
225          main program could be modified from something like
226    
227             fun main (pgm, args) = ...
228    
229         to
230    
231            fun main (pgm, args) = BackTrace.monitor (fn () => ...)
232    
233       2. To be able to access BackTrace.monitor, you have to add
234          library $smlnj-tdp/plugins.cm to the .cm file that contains your
235          main function.
236    
237       3. Remove all compiled code (i.e., all the .cm/ subdirectories that
238          CM might have created in the past for your project).
239    
240       4. Build the system using this command line:
241    
242             ml-build -Ctdp.instrument=true \$smlnj-tdp/back-trace.cm \
243                      myprog.cm MyProg.main myprog
244    
245          instead of the usual
246    
247             ml-build myprog.cm MyProg.main myprog
248    
249    I changed a library name:
250    
251       $/trace-debug-profile.cm --> $smlnj-tdp/plugins.cm
252    
253    New libraries:
254    
255       $smlnj-tdp/back-trace.cm
256          -- when loaded causes the back-trace plugin to be installed
257       $smlnj-tdp/coverage.cm
258          -- when loaded causes the coverage plugin to be installed
259    
260    ----------------------------------------------------------------------
261    Name: Matthias Blume (blume (at) tti - c (dot) org)
262    Date: 2004/10/18 16:45:00 CDT
263    Tag: blume-20041018-groupowner
264    Description:
265    
266    Added an "obsolete" warning for the "group owner" syntax to CM's parser.
267    
268    Eliminated group owner specs from .cm files throughout the source tree.
269    
270    ----------------------------------------------------------------------
271    Name: Matthias Blume (blume (at) tti - c (dot) org)
272    Date: 2004/10/15 15:45:00 CDT
273    Tag: blume-20041015-coverage
274    Description:
275    
276    * Test coverage tool added!
277    * Further reorganization of tracing-, debugging-, and profiling support:
278    
279        - moved original BTImp -- now called BackTrace -- into a separate
280          library called $/trace-debug-profile.cm
281        - eliminated all mentions of BTrace from SMLofNJ.Internals
282        - only the instrumentation mechanism is now left in the compiler proper
283        - BackTrace module is a plugin which is NOT plugged in by default
284        - Coverage module is another such plugin
285    
286    To get the benefits of any of these plugin modules, the code in
287    question must be compiled with tdp instrumentation turned on.  This
288    can be done by setting SMLofNJ.Internals.TDP.mode to true.
289    (The ref cell is also controlled via the -Ctdp.instrument=... switch.)
290    
291    Plugins are selected at link time.  (Pre-compiled instrumented code
292    can be re-loaded with different plugins in effect.)  When an
293    instrumented module is linked, whatever plugins are at that time
294    enabled will come into effect for that module.
295    
296    To enable the back-trace plugin, load library $/trace-debug-profile.cm
297    and invoke BackTrace.install() (e.g., from the interactive prompt).
298    To enable the coverage plugin, load the same library and invoke
299    Coverage.install().
300    
301    Back-traces are generated automatically on uncaught exceptions and
302    when the code in question explicitly invokes BackTrace.trigger().
303    
304    Coverage (and execution frequency-) information must be queried
305    explicitly by calling Coverage.not_covered and Coverage.hot_spots.
306    
307    ----------------------------------------------------------------------
308    Name: Matthias Blume (blume (at) tti - c (dot) org)
309    Date: 2004/10/14 17:40:00 CDT
310    Tag: blume-20041014-tdp-core
311    Description:
312    
313    Snapshot of a significant overhaul of how the trace/debug/profile support
314    is hooked into the system (specifically: Core and SMLofNJ.Internals).
315    
316    ----------------------------------------------------------------------
317    Name: Matthias Blume (blume (at) tti - c (dot) org)
318    Date: 2004/10/13 16:34:00 CDT
319    Tag: blume-20041013-tdp
320    Description:
321    
322    Some rationalization of names:
323    
324       structure BTrace -> structure TDPInstrument
325       etc.
326    
327    This is is preparation of using the original back-trace
328    instrumentation for other purposes.  "TDP" stands for
329    Trace/Debug/Profile.
330    
331    The control flag controlling whether instrumentation is on or off is now
332    registered under a different name, so instead of running sml as
333    
334     sml -Cinstrument.btrace-mode=true
335    
336    one has to say
337    
338     sml -Ctdp.instrument=true
339    
340    ----------------------------------------------------------------------
341    Name: Matthias Blume (blume (at) tti - c (dot) org)
342    Date: 2004/10/11 16:37:00 CDT
343    Tag: blume-20041011-regions
344    Description:
345    
346    Made some minor modifications to elabcore.sml to have source regions
347    be propagated more tightly -- resulting in better (i.e., smaller)
348    regions being reported in error- and debug messages.
349    
350    ----------------------------------------------------------------------
351    Name: Matthias Blume (blume (at) tti - c (dot) org)
352    Date: 2004/10/08 22:50:00 CDT
353    Tag: blume-20041008-cmkw
354    Description:
355    
356    Fixed handling of keywords in .cm files: After seeing "is" the lexer
357    treats subsequent occurrences of "group", "library", "source", "is",
358    "*", and "-" as ordinary identifiers rather than keywords.
359    
360    Most seriously, this fixes a problem with CM's "shell" tool.  The tool
361    is supposed to accept a tool argument called "source", but this did
362    not work because of the clash with the keyword.
363    
364    ----------------------------------------------------------------------
365    Name: Matthias Blume (blume (at) tti - c (dot) org)
366    Date: 2004/10/07 16:00:00 CDT
367    Tag: blume-20041007-cleanup
368    Description:
369    
370    Assorted cleanup work:
371    
372      - got rid of intstrmap in favor of using the library's
373        hash table implementation
374      - threw out most of the pathnames stuff, as it was not used anyway
375      - simplified tokentable implementation
376      - fixed some minor spelling errors
377    
378    ----------------------------------------------------------------------
379    Name: Matthias Blume (blume (at) tti - c (dot) org)
380    Date: 2004/10/06 15:15:15 CDT
381    Tag: blume-20041006-handler
382    Description:
383    
384    Cleaned up the absyn to reflect the invariant that HANDLE always
385    carries a FNexp as part of the type definition.  This eliminates some
386    superfluous sanity checks at runtime down the road.
387    
388    Some minor cleanup of the btrace code.
389    
390    ----------------------------------------------------------------------
391    Name: Matthias Blume (blume (at) tti - c (dot) org)
392    Date: 2004/10/01 10:20:30 CDT
393    Tag: blume-20041001-slave
394    Description:
395    
396    Added hack to make slave mode work in the presence of the version
397    tool.  (Still, since the master does two passes over the code for
398    CMB.make, the release number gets bumped twice when slaves are
399    attached.  I don't know if this is worth fixing...)
400    
401    ----------------------------------------------------------------------
402    Name: Matthias Blume (blume (at) tti - c (dot) org)
403    Date: 2004/09/30 10:55:00 CDT
404    Tag: blume-20040930-version
405    Description:
406    
407    * Moved the "version" magic into its own little library under
408      src/system/smlnj/internal.  This avoids expensive reconstruction of
409      a stable src/compiler/core.cm.
410    
411    * At the same time, structure CompilerVersion is now known as
412      structure SMLNJVersion.
413    
414    * Arranged for the version tool to NOT kick in when rebuilding the system
415      (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.
416      Also, loading the versiontool does not work when rebuilding the system
417      because CM is not properly initialized at that time.
418    
419    ----------------------------------------------------------------------
420    Name: Matthias Blume (blume (at) tti - c (dot) org)
421    Date: 2004/09/29 14:00:00 CDT
422    Tag: blume-20040929-autoversion
423    Description:
424    
425    Implemented some CM magic to have
426        file src/compiler/TopLevel/main/version.sml
427    generated automagically.
428    The version is taken from two files: config/version and config/release.
429    The first is expected to contain a two-part version number such as 110.49.
430    The second should contain a single number, but it may be missing.
431    
432    If the environment variable VERSIONTOOL_BUMP_RELEASE is defined at the
433    time the version tool is loaded (which is the first time you say CMB.make),
434    then the tool will increment the value stored in config/release every
435    time CMB.make is invoked.
436    
437    The binfile format is now insensitive to anything beyond the first
438    two components of a version number, so bumping the release does not render
439    binfiles incompatible.  Auto-bumping can be used to keep track of versions
440    during development without invalidating existing binfiles.
441    
442    In any case, every CMB.make updates the date information in version.sml.
443    (This is the date that is printed in the banner.)
444    
445    ----------------------------------------------------------------------
446    Name: Matthias Blume (blume (at) tti - c (dot) org)
447    Date: 2004/09/28 10:53:00 CDT
448    Tag: blume-20040928-controls
449    Description:
450    
451    Some cleanup of the controls code.
452    
453    ----------------------------------------------------------------------
454    Name: Matthias Blume (blume (at) tti - c (dot) org)
455    Date: 2004/09/27 22:08:00 CDT
456    Tag: blume-20040927-controls
457    Description:
458    
459    Added two pieces of functionality to the Controls interface:
460    
461    1.   val save'restore: 'a control -> unit -> unit
462    
463       grabs the current value of the control in stage 1 and restores it
464       in stage 2.
465    
466    2.   val set' : 'a control * 'a -> unit -> unit
467    
468       stores the given value into the control in stage 2 (i.e., delayed)
469       but does all error checking in stage 1.
470       (This is for string controls that need to do parse their argument --
471        something that might fail.  In some cases, notably in CM, one
472        already knows the intended argument but wants to delay the actual
473        assignment until a time when error recovery would be more difficult.)
474    
475    Changed the handling of controls in tool arguments to classes "sml" and
476    "lazysml":
477       - use Controls.save'restore as a more robust way of restoring the
478         old value (in particular: without having to re-parse the string)
479       - use controls to handle the "overload" keyword in the init group
480         (I believe this change actually fixes a long-standing obscure bug.)
481    
482    ----------------------------------------------------------------------
483    Name: Matthias Blume (blume (at) tti - c (dot) org)
484    Date: 2004/09/27 17:00:00 CDT
485    Tag: blume-20040927-lazysml
486    Description:
487    
488    Added a new tool class called "lazysml" to CM's tool chest.  The only
489    difference to "sml" is that compilation is done with Control.lazysml
490    set to true.  A source of class "lazysml" is automatically recognized
491    by a file name suffix of ".lml".
492    
493    In addition to the above feature, the original class "sml" now also
494    supports a tool argument "lazy" which has the same effect.  As a
495    result, the following three lines are equivalent:
496    
497        foo.sml : lazysml
498        foo.sml : sml (lazy)
499        foo.sml (lazy)
500    
501    The setting goes into effect both during parsing and during
502    compilation.  The original setting is restored right after parsing and
503    after compilation, respectively.
504    
505    In addition to all the above, there is also a general mechanism to set
506    ANY of the "controls" that are available at the command line via
507    "-C..." on a per-sml-file basis.  The same rules that apply for "lazy"
508    apply as well. (In fact, "lazy" is implemented as a special case of
509    the general mechanism.)
510    
511    The .cm file syntax uses a new keyword tool argument called "with".
512    There are several ways of indicating the desired settings:
513    
514        foo.sml (with:parser.quotations=true)
515        foo.sml (with:(name:parser.quotations value:true))
516        foo.sml (with:(name:name1 value:value1 name:name2 value:value2 ...))
517        foo.sml (with:(name1=value1 name2=value2 ...))
518        foo.sml (with:(name1=value1 name:name2 value:value2 name3=value3 ...))
519    
520        etc.
521    
522    Another possible abbreviation is to leave out the =v or value:v part
523    if the name refers to a boolean control (in which case the value is
524    taken to be true).  Thus, one could get lazy sml also by saying:
525    
526        foo.sml (with:parser.lazy-keyword=true)
527        foo.sml (with:parser.lazy-keyword)
528        foo.sml (with:(name:parser.lazy-keyword value:true))
529        foo.sml (with:(name:parser.lazy-keyword))
530    
531    ----------------------------------------------------------------------
532    Name: Matthias Blume (blume (at) tti - c (dot) org)
533    Date: 2004/09/24 16:22:00 CDT
534    Tag: blume-20040924-ppc-long-branch
535    Description:
536    
537    Turned message about "emiting long form of branch" off by default.
538    Added a control flag to turn it back on when desired.
539    
540    ----------------------------------------------------------------------
541    Name: Matthias Blume (blume (at) tti - c (dot) org)
542    Date: 2004/09/24 16:05:00 CDT
543    Tag: blume-20040924-rounding
544    Description:
545    
546    Applied patch for setting rounding modes under Mac OS X.  Thanks to
547    Melissa O'Neill for providing the code!
548    
549    ----------------------------------------------------------------------
550    Name: Matthias Blume (blume (at) tti - c (dot) org)
551    Date: 2004/09/23 17:30:00 CDT
552    Tag: blume-20040923-envvars
553    Description:
554    
555    1. Changed definition of type ControlRegistry.registry_tree to
556       include control_info (i.e., the name of the controlling environment
557       variable).
558    
559    2. Added command-line flags -e and -E to print the names of environment
560       variables that can be used to control internal settings.
561       (This uses the new API mentioned in 1.)
562    
563    ----------------------------------------------------------------------
564    Name: Matthias Blume (blume (at) tti - c (dot) org)
565    Date: 2004/09/13 16:50:00 CDT
566    Tag: Release_110_49
567    Description:
568    
569    New working version (110.49).  NEW BOOTFILES!
570    
571    ----------------------------------------------------------------------
572    Name: Matthias Blume
573    Date: 2004/09/13 16:20:00 CDT
574    Tag: blume-20040913-config-mlrisc
575    Description:
576    
577    Put target "mlrisc" back into the default list.
578    (There is no harm in having it, and some users have expressed their
579    wish to have "mlrisc" included by default.)
580    
581    ----------------------------------------------------------------------
582    Name: John Reppy
583    Date: 2004/09/13
584    Tag: jhr-20040913-signals
585    Description:
586    
587    Fixed the signal masking code to properly nest mask/unmask operations
588    on a per-signal basis.
589    
590    ----------------------------------------------------------------------
591    Name: Matthias Blume (blume (at) tti - c (dot) org)
592    Date: 2004/09/08 13:20:00 CDT
593    Tag: blume-20040908-heap-magic
594    Description:
595    
596    Bumped the heap macig number to 0x09082004 to account for the changed
597    layout of the ML frame under MacOS X.
598    
599    ----------------------------------------------------------------------
600    Name: Allen Leung (leunga (at) reservoir (dot) com)
601    Date: 2004/09/03 11:26:00 EST
602    Tag: leunga-20040903-cygwin-install
603    Description:
604    
605       Added a patch to _arch-n-opsys to enable the Cygwin runtime.
606    The Cygwin runtime is turned on by setting the environment
607    variable SMLNJ_CYGWIN_RUNTIME to 1.
608    
609    ----------------------------------------------------------------------
610    Name: Matthias Blume (blume (at) tti - c (dot) org)
611    Date: 2004/08/31 17:15:00 CDT
612    Tag: blume-20040831-core
613    Description:
614    
615    Added some exports to src/compiler/core.cm upon request by J. Joemann.
616    
617    ----------------------------------------------------------------------
618    Name: Matthias Blume (blume (at) tti - c (dot) org)
619    Date: 2004/08/30 17:55:00 CDT
620    Tag: blume-20040830-installer
621    Description:
622    
623    Upon request by Johannes Joemann:
624    
625    - improved ML code of installer to fall back to coping when renaming
626      fails (i.e., when source and target are on different file systems);
627      the code compiles but has yet to be tested in anger
628    - removed mlrisc from list of default targets (config/targets)
629    
630    ----------------------------------------------------------------------
631    Name: Matthias Blume (blume (at) tti - c (dot) org)
632    Date: 2004/08/27 17:20:00 CDT
633    Tag: blume-20040827-ptreql
634    Description:
635    
636    Added ptreql primop to structure InlineT (upon request from Larry
637    Paulson).
638    
639    ----------------------------------------------------------------------
640    Name: Allen Leung (leunga (at) reservoir (dot) com)
641    Date: 2004/08/15 21:21:00 EST
642    Tag: leunga-110_48-udgraph
643    Description:
644    
645    Another bug fix from Carl Hauser:
646    
647    diff /net/niflab/smlnj48/src/MLRISC/graphs/udgraph.sml udgraph.sml
648    > 48c48
649    > <              | rmv((e as (k,_))::es,L) = rmv(es,if k = i then es else
650    > e::L)
651    > ---
652    > >              | rmv((e as (k,_))::es,L) = rmv(es,if k = i then L else e::L)
653    > Without this, any deletion of an edge in an undirected graph does severe
654    > violence to the graph.
655    
656    ----------------------------------------------------------------------
657  Name: Allen Leung (leunga (at) reservoir (dot) com)  Name: Allen Leung (leunga (at) reservoir (dot) com)
658  Date: 2004/08/10 23:35:00 EST  Date: 2004/08/10 23:35:00 EST
659  Tag: leunga-110_48-ppc  Tag: leunga-110_48-ppc
# Line 22  Line 663 
663    
664  ----------------------------------------------------------------------  ----------------------------------------------------------------------
665  Name: Matthias Blume (blume (at) tti - c (dot) org)  Name: Matthias Blume (blume (at) tti - c (dot) org)
666  Date: 2004/10/04 12:00:00 CDT  Date: 2004/08/10 12:00:00 CDT
667  Tag: Release_110_48  Tag: Release_110_48
668  Description:  Description:
669    

Legend:
Removed from v.1613  
changed lines
  Added in v.1717

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0