> From: Taylor R Campbell <campb...@mumble.net> > Date: Mon, 23 Feb 2015 23:13:58 +0000 > > [...] > > Correct. Same with, e.g., the WITHOUT-INTERRUPTS in hashtb.scm.
OK. The without-interrupts in hashtb.scm are actually spelled "with-table-locked". I replaced them with "without-interruption". The critical sections could probably be narrowed if aborts are now the sole concern. I had just previously re-implemented object-hash with a pair of weak tables and a mutex, so it seemed overkill for each table operator to also grab and release a mutex. I am assuming the user will serialize operations on hash tables, just like port or string operations. I also serialized access to the population of address hash tables. There was the tiniest room for a race. It took some cold load frobination, but I implemented a "serial population" in prop1d.scm to use in hashtb.scm, geneqht.scm and wherever. BTW, I successfully removed string-head! from the runtime system, but then stashed the patch. If user threads are using strings serially, string-head! is no worse than substring-move!(?). > It's not about threads per se, and it's not about the keyboard per se. > If you want a name other than WITHOUT-INTERRUPTS for greppability's > sake, how about WITHOUT-INTERRUPTION? OK. I think a clean break with an old and busted abstraction is worth it. Thanks for the suggestion. _______________________________________________ MIT-Scheme-devel mailing list MIT-Scheme-devel@gnu.org https://lists.gnu.org/mailman/listinfo/mit-scheme-devel