[M3commit] CVS Update: cm3

Rodney M. Bates rodney.bates at wichita.edu
Fri Feb 13 19:19:20 CET 2009


Well, I can work on compilers, debuggers, and functional text packages, but
I can never operate CVS correctly.

As far as I can tell, I think I got these checkins done in the trunk, rather
than the branch I created for them.  I created a tag on the trunk,
"devel_m3core_text_2009_02_13", then created a branch with tag
"devel_m3core_text_newtext_branch".  Apparently I got that much right.

But I am not sure whether the changed files went into the branch.  My
CVS book reads as if just a cvs tag -b ..., followed by a cvs commit
will do the commits in the branch, but the commit message doesn't look
like that happened.

Can anybody help me with:
1) What really happened?
2) How should I have done this?
3) How can I fix the damage?

PS: I believe that if you use the new files  with no additional action, that you
will get the same behavior as before, except that there will be considerable
constant-time slowdown due to lots of instrumentation and dynamic deciding to
use the original algorithms.  But I have not tested this.



Rodney M. Bates wrote:
> CVSROOT:	/usr/cvs
> Changes by:	rodney at birch.	09/02/13 18:50:57
> 
> Modified files:
> 	cm3/m3-libs/m3core/src/text/: String16.i3 String16.m3 String8.m3 
> 	                              Text.i3 Text.m3 Text16.i3 
> 	                              Text16.m3 Text16Short.i3 
> 	                              Text16Short.m3 Text8.i3 Text8.m3 
> 	                              Text8CString.m3 Text8Short.i3 
> 	                              Text8Short.m3 TextCat.m3 
> 	                              TextClass.i3 TextClass.m3 
> 	                              TextLiteral.i3 TextSub.m3 
> 	                              UnsafeHash.m3 
> 
> Log message:
> 	An experimental rework of the CM3 TEXT-processing code found in
> 	m3-libs/m3core/src/text, implementing the Modula-3 required interface
> 	Text.
> 	
> 	The types and invariants of the data structure are not changed, thus
> 	avoiding disruption of pickles.  or anything else that depends on the
> 	internal data structure of TEXT.
> 	
> 	Algorithms are changed to improve performance, especially when a value
> 	is constructed by a linear series of concatenations,(i.e.,
> 	left-to-right or right-to-left).  Generally, Concat is slower, but
> 	this is more than offset by gains in the accessing operations.  More
> 	storage is allocated, but most is garbage, and retained storage ranges
> 	from somewhat less to somewhat more.  Recursion depth is dramatically
> 	reduced.  See the README file for more details.
> 




More information about the M3commit mailing list