Inter-level support for the fundamentals of the Inform language. This is version 1.
diff --git a/docs/core-module/2-pwst.html b/docs/core-module/2-pwst.html
index 9221bbab7..193506aae 100644
--- a/docs/core-module/2-pwst.html
+++ b/docs/core-module/2-pwst.html
@@ -362,10 +362,7 @@ group.
Problems::quote_source(1, current_sentence);StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_BogusExtension));Problems::issue_problem_segment(
-"I can't find the extension requested by: %1. %P"
-"You can get hold of extensions which people have made public at "
-"the Inform website, www.inform7.com, or by using the Public "
-"Library in the Extensions panel.");
+"I can't find the extension requested by: %1.");Problems::issue_problem_end();break;caseExtVersionTooLow_SYNERROR:
@@ -375,10 +372,7 @@ group.
StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_ExtVersionTooLow));Problems::issue_problem_segment("I can't find the right version of the extension requested by %1 - "
-"I can only find %2. %P"
-"You can get hold of extensions which people have made public at "
-"the Inform website, www.inform7.com, or by using the Public "
-"Library in the Extensions panel.");
+"I can only find %2.");Problems::issue_problem_end();break;caseExtVersionMalformed_SYNERROR:
diff --git a/docs/inbuild/1-mn.html b/docs/inbuild/1-mn.html
index 15ad1d927..540bd6353 100644
--- a/docs/inbuild/1-mn.html
+++ b/docs/inbuild/1-mn.html
@@ -331,7 +331,7 @@ the order in which filenames are read from a directory listing.
}voidMain::add_directory_contents_targets(pathname *P) {
-linked_list *L = Directories::listing(P);
+linked_list *L = Directories::listing(P);text_stream *entry;LOOP_OVER_LINKED_LIST(entry, text_stream, L) {TEMPORARY_TEXT(FILENAME)
diff --git a/docs/inbuild/M-ui.html b/docs/inbuild/M-ui.html
index b29895c5f..5d26649a0 100644
--- a/docs/inbuild/M-ui.html
+++ b/docs/inbuild/M-ui.html
@@ -143,7 +143,7 @@ the software, but it's still helpful.
to other copies. It gives a systematic answer to the question "how do I
build or use this?". There are two kinds of arrows, use arrows and build
arrows. A use arrow from A to B means that you need to have B installed
-in order to be able to use A. The above example, then, tells us that we
+in order to be able to use A. The above example, then, tells us that we need
Menus in order to use Basic Help Menu, and we need Basic Screen Effects in
order to use Menus.
diff --git a/docs/inform7/1-mn.html b/docs/inform7/1-mn.html
index a5e5f0820..0457b8798 100644
--- a/docs/inform7/1-mn.html
+++ b/docs/inform7/1-mn.html
@@ -466,6 +466,9 @@ rather than corevoidMain::bareword(intid, text_stream *opt, void *state) {if (Str::is_whitespace(opt) == FALSE) {
+if (Str::get_last_char(opt) == FOLDER_SEPARATOR)
+Errors::fatal_with_text(
+"to compile a project in a directory, use '-project %S'", opt);filename *F = Filenames::from_text(opt);if (Supervisor::set_I7_source(F) == FALSE)Errors::fatal_with_text("unknown command line argument: %S (see -help)", opt);
diff --git a/docs/inform7/M-pm.html b/docs/inform7/M-pm.html
index 03aea1e21..704e52c6e 100644
--- a/docs/inform7/M-pm.html
+++ b/docs/inform7/M-pm.html
@@ -70,34 +70,35 @@ which take more than 1/1000th of the total running time.
-intKinds::eq(kind *K1, kind *K2) {
+intKinds::eq(kind *K1, kind *K2) {if (K1 == NULL) { if (K2 == NULL) returnTRUE; returnFALSE; }if (K2 == NULL) returnFALSE;if (K1->construct != K2->construct) returnFALSE;
@@ -747,7 +747,6 @@ to the kind "number" even if that's the current value of X.
if (Kinds::eq(from, to)) returnALWAYS_MATCH;LOGIF(KIND_CHECKING, "(Is the kind %u compatible with %u?", from, to);
-
switch(Latticework::order_relation(from, to, TRUE)) {caseNEVER_MATCH:LOGIF(KIND_CHECKING, " No)\n"); returnNEVER_MATCH;caseALWAYS_MATCH:LOGIF(KIND_CHECKING, " Yes)\n"); returnALWAYS_MATCH;
diff --git a/docs/kinds-module/2-tlok.html b/docs/kinds-module/2-tlok.html
index 0511a7a86..7e7346b38 100644
--- a/docs/kinds-module/2-tlok.html
+++ b/docs/kinds-module/2-tlok.html
@@ -204,7 +204,7 @@ function is what tells us that the superkind of
§13.6. Recall that kind variables are identified by a number in the range 1 ("A")
+
§13.7. Recall that kind variables are identified by a number in the range 1 ("A")
to 26 ("Z"), and that it is also possible to assign them a domain, or a
"declaration". This marks that they are free to take on a value, within
that domain. For example, in
@@ -573,7 +583,7 @@ become any kind matching valu
more restrictive declaration like arithmetic value.)
-
Deal separately with matches against kind variables13.6 =
+
Deal separately with matches against kind variables13.7 =
§13.7.2. Whereas this is what happens when matching just K. On the inference pass,
we always make a match, which is legitimate because we know we are going to
make a value-checking pass later.
-
Act on an ordinary usage, where inference is not allowed13.6.2 =
+
Act on an ordinary usage, where inference is not allowed13.7.2 =
@@ -662,7 +672,7 @@ make a value-checking pass later.
returnALWAYS_MATCH; }
-intKindConstructors::find_cast(kind_constructor *from, kind_constructor *to) {
+intKindConstructors::find_cast(kind_constructor *from, kind_constructor *to) {if (to) {kind_constructor_casting_rule *dtcr;for (dtcr = to->first_casting_rule; dtcr; dtcr = dtcr->next_casting_rule) {
diff --git a/docs/lexicon-module/P-wtmd.html b/docs/lexicon-module/P-wtmd.html
index 1a669b25c..e1db608cf 100644
--- a/docs/lexicon-module/P-wtmd.html
+++ b/docs/lexicon-module/P-wtmd.html
@@ -188,14 +188,14 @@ number of successes.
29 words have a middle list: longest belongs to to (with 4 meanings) 108 words have a subset list: longest belongs to street (with 4 meanings)
-Number of attempts to retrieve: 106491
+Number of attempts to retrieve: 106490 of which unsuccessful: 88837
- of which successful: 17654
+ of which successful: 17653
-Total attempts to match against excerpt meanings: 260962
- of which, total with incorrect hash codes: 238885
- of which, total with correct hash codes: 22077
- of which, total which matched: 19336
+Total attempts to match against excerpt meanings: 260959
+ of which, total with incorrect hash codes: 238883
+ of which, total with correct hash codes: 22076
+ of which, total which matched: 19335
diff --git a/docs/runtime-module/5-rlt.html b/docs/runtime-module/5-rlt.html
index c3521eb41..d8fcf5657 100644
--- a/docs/runtime-module/5-rlt.html
+++ b/docs/runtime-module/5-rlt.html
@@ -447,7 +447,7 @@ as their meanings. See the test case packaging_statesave = EmitArrays::begin_unchecked(RTRelations::iname(bp));if (ExplicitRelations::stored_dynamically(bp)) {
-EmitArrays::numeric_entry((inter_ti) 1); meaning one entry, which is 0; to be filled in later
+EmitArrays::numeric_entry((inter_ti) 1); } else {TheHeap::emit_block_value_header(BinaryPredicates::kind(bp), FALSE, 8);EmitArrays::null_entry();
@@ -625,7 +625,6 @@ as their meanings. See the test case LocalVariables::declare(Z4_lv);annotated_i6_schemaasch; i6_schema *i6s = NULL;
-
EmitCode::inv(SWITCH_BIP);EmitCode::down();EmitCode::val_symbol(K_value, task_s);
diff --git a/docs/secrets.html b/docs/secrets.html
index 2d3ea749b..8da05af8a 100644
--- a/docs/secrets.html
+++ b/docs/secrets.html
@@ -72,7 +72,7 @@ for maintainers of Inform and may change at any time without notice.
§2. In working out what the compiler is doing (or has just done), the debugging log
is always the first thing to investigate. This a text file like a running
journal of what the compiler is doing; if it halts partway, either with problem
-messages or an internal error, then the log is still written up that point, and
+messages or an internal error, then the log is still written up to that point, and
can be revealing. The log can be viewed in the Inform apps, but usually
only if an "advanced" preference setting has been ticked. Once that is done,
the log appears as one of the tabs in the Results pane after each compilation
diff --git a/docs/standard_rules/S-var.html b/docs/standard_rules/S-var.html
index 2bcad1bd3..f44ad529d 100644
--- a/docs/standard_rules/S-var.html
+++ b/docs/standard_rules/S-var.html
@@ -141,7 +141,7 @@ meanings from sentence to sentence.
Thenoun -- documentedatvar_noun -- isanobjectthatvaries.Thesecondnounisanobjectthatvaries.Thepersonasked -- documentedatvar_person_asked -- isanobjectthatvaries.
-Thereasontheactionfailed -- documentedatvar_reason -- isanactionname
+Thereasontheactionfailed -- documentedatvar_reason -- isanactionbasedruleproducingnothingthatvaries.Theitemdescribedisanobjectthatvaries.
diff --git a/docs/supervisor-module/4-em.html b/docs/supervisor-module/4-em.html
index 0c1987c4e..0e7db82a3 100644
--- a/docs/supervisor-module/4-em.html
+++ b/docs/supervisor-module/4-em.html
@@ -178,7 +178,8 @@ extension .i7x.
drafts of inblorb allowed it too, but this caused problems with emacs backup
files (with filenames ending ~) being picked up instead of the extension
files they were backing up. So inblorb now recognises only .i7x files as
-extensions.
+extensions. Similarly, another bad emacs habit is to write hidden symlinks,
+with leafnames beginning ., so we reject those too.
@@ -226,7 +227,8 @@ extensions.
inbuild_requirement *req, linked_list *search_results) {TEMPORARY_TEXT(fext)Filenames::write_extension(fext, F);
-if (Str::eq_insensitive(fext, I".i7x")) {
+if ((Str::eq_insensitive(fext, I".i7x")) &&
+ (Str::get_first_char(Filenames::get_leafname(F)) != '.')) {inbuild_copy *C = ExtensionManager::claim_file_as_copy(F);if ((C) && (Requirements::meets(C->edition, req))) {Nests::add_search_result(search_results, N, C, req);
diff --git a/inbuild/supervisor-module/Chapter 4/Extension Manager.w b/inbuild/supervisor-module/Chapter 4/Extension Manager.w
index 21eaaac45..290f0d1e3 100644
--- a/inbuild/supervisor-module/Chapter 4/Extension Manager.w
+++ b/inbuild/supervisor-module/Chapter 4/Extension Manager.w
@@ -113,7 +113,8 @@ extension |.i7x|. This was allowed in the early days of Inform 7, and early
drafts of inblorb allowed it too, but this caused problems with emacs backup
files (with filenames ending |~|) being picked up instead of the extension
files they were backing up. So inblorb now recognises only |.i7x| files as
-extensions.
+extensions. Similarly, another bad emacs habit is to write hidden symlinks,
+with leafnames beginning |.|, so we reject those too.
=
void ExtensionManager::search_nest_for(inbuild_genre *gen, inbuild_nest *N,
@@ -160,7 +161,8 @@ void ExtensionManager::search_nest_for_single_file(filename *F, inbuild_nest *N,
inbuild_requirement *req, linked_list *search_results) {
TEMPORARY_TEXT(fext)
Filenames::write_extension(fext, F);
- if (Str::eq_insensitive(fext, I".i7x")) {
+ if ((Str::eq_insensitive(fext, I".i7x")) &&
+ (Str::get_first_char(Filenames::get_leafname(F)) != '.')) {
inbuild_copy *C = ExtensionManager::claim_file_as_copy(F);
if ((C) && (Requirements::meets(C->edition, req))) {
Nests::add_search_result(search_results, N, C, req);
diff --git a/inform7/Downloads/preform-diagnostics.txt b/inform7/Downloads/preform-diagnostics.txt
index 527718ab7..5dbfa6089 100644
--- a/inform7/Downloads/preform-diagnostics.txt
+++ b/inform7/Downloads/preform-diagnostics.txt
@@ -4764,21 +4764,21 @@
{...}
constraint (none) extremes [1, infinity)
- hits 83030/166060 nti 15 constraint (none) extremes [1, infinity)
+ hits 83029/166058 nti 15 constraint (none) extremes [1, infinity)
English:
{...}
- (hits 16068/47449) (matched long text) constraint (none) extremes [2, infinity)
+ (hits 16068/47448) (matched long text) constraint (none) extremes [2, infinity)
{...}
- (hits 66962/66962) (matched long text) constraint (none) extremes [1, infinity)
+ (hits 66961/66961) (matched long text) constraint (none) extremes [1, infinity)
nti 16 constraint (none) extremes [2, infinity)
English:
{...}
constraint (none) extremes [2, infinity)
- internal hits 16522/98958 nti r2 constraint (none) extremes [1, 1]
+ internal hits 16522/98954 nti r2 constraint (none) extremes [1, 1]
- internal hits 20353/236436 nti r2 constraint (none) extremes [1, 1]
+ internal hits 20353/236434 nti r2 constraint (none) extremes [1, 1]
internal hits 2350/41386 nti r2 constraint (none) extremes [1, 1]
@@ -5055,7 +5055,7 @@
{...}
(hits 99/2082) (matched: '"(considering the first sixteen objects only)[command clarification break]" ( a )') constraint (none) extremes [1, infinity)
- (hits 322/1418) (matched long text) constraint (none) extremes [2, infinity)
+ (hits 322/1418) (matched: 'an action based rule producing nothing that varies') constraint (none) extremes [2, infinity)
(hits 661/1096) (matched long text) constraint (none) extremes [2, infinity)
@@ -5185,16 +5185,16 @@
(hits 431/431) (matched long text) constraint (none) extremes [1, infinity)
- hits 0/10194 nti 30 constraint DS = {30} extremes [2, infinity)
+ hits 0/10192 nti 30 constraint DS = {30} extremes [2, infinity)
English:
it with action {***}
- (hits 0/3875) constraint DS = {30} extremes [3, infinity)
+ (hits 0/3874) constraint DS = {30} extremes [3, infinity)
{with/having} (/) {***}
- (hits 0/4068) constraint DS = {30} extremes [2, infinity)
+ (hits 0/4067) constraint DS = {30} extremes [2, infinity)
{with/having} {...} ( )
- (hits 0/3483) constraint DS = {30} extremes [5, infinity)
+ (hits 0/3482) constraint DS = {30} extremes [5, infinity)
{with/having}
- (hits 0/4068) constraint DS = {30} extremes [2, infinity)
+ (hits 0/4067) constraint DS = {30} extremes [2, infinity)
nti 19 constraint (none) extremes [1, infinity)
English:
@@ -5217,12 +5217,12 @@
{...}
constraint (none) extremes [1, infinity)
- hits 174/3554 nti 6 constraint DS = {6} extremes [1, infinity)
+ hits 174/3552 nti 6 constraint DS = {6} extremes [1, infinity)
English:
, _{and}
- (hits 8/1080) (matched: ', and didn't understand addressee's last name error') constraint DS = {6} extremes [2, infinity)
+ (hits 8/1079) (matched: ', and didn't understand addressee's last name error') constraint DS = {6} extremes [2, infinity)
_{,/and}
- (hits 166/1278) (matched long text) constraint DS = {6} extremes [1, infinity)
+ (hits 166/1277) (matched long text) constraint DS = {6} extremes [1, infinity)
hits 30/516 nti 21 constraint DS = {7} extremes [1, infinity)
English:
@@ -5267,7 +5267,7 @@
{...} called {...}
constraint DS = {12} extremes [3, infinity)
- hits 196/9062 nti 13 constraint DS = {13} extremes [2, infinity)
+ hits 196/9056 nti 13 constraint DS = {13} extremes [2, infinity)
English:
of {...}
(hits 196/2552) (matched: 'of day -- documented at var_time --') constraint DS = {13} extremes [2, infinity)
@@ -5285,7 +5285,7 @@
grammatical case
(hits 1/1) (matched: 'grammatical case') constraint CS = {14} extremes [2, 2]
- internal hits 2478/41948 nti 27 constraint (none) extremes [0, 0]
+ internal hits 2478/41944 nti 27 constraint (none) extremes [0, 0]
internal hits 165/330 nti 28 constraint (none) extremes [1, infinity)
@@ -5311,16 +5311,16 @@
(hits 5/5) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
- hits 5803/103678 nti r5 constraint (none) extremes [1, infinity)
+ hits 5802/103676 nti r5 constraint (none) extremes [1, infinity)
English:
( )
(hits 0/2047) constraint DS = {r5} & CW = {r2, r5} extremes [3, infinity)
^
- (hits 1592/11283) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity)
+ (hits 1592/11282) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity)
- (hits 201/9691) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity)
+ (hits 201/9690) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity)
- (hits 3649/9490) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity)
+ (hits 3648/9489) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity)
(hits 2/16024) (matched: 'object-based rulebook') constraint DS = {r5} extremes [2, infinity)
@@ -5340,7 +5340,7 @@
of kind
(hits 81/315) (matched: 'sayable value of kind k') constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity)
- internal hits 3649/18980 nti r5 constraint CW = {r2, r5} extremes [1, infinity)
+ internal hits 3648/18978 nti r5 constraint CW = {r2, r5} extremes [1, infinity)
hits 2/32048 nti r5 constraint DS = {r5} extremes [2, infinity)
English:
@@ -5387,13 +5387,13 @@
( )
(hits 0/21) constraint DS = {r5} extremes [3, infinity)
- (hits 9/28) (matched: 'a value of kind k') constraint (none) extremes [2, infinity)
+ (hits 9/27) (matched: 'a value of kind k') constraint (none) extremes [2, infinity)
nothing
- (hits 14/34) (matched: 'nothing') constraint CS = {r5} extremes [1, 1]
+ (hits 14/35) (matched: 'nothing') constraint CS = {r5} extremes [1, 1]
action
- (hits 0/20) constraint CS = {r5} extremes [1, 1]
+ (hits 1/21) (matched: 'action') constraint CS = {r5} extremes [1, 1]
- (hits 39/39) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
+ (hits 38/38) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
hits 15/30 nti r5 constraint (none) extremes [1, infinity)
English:
@@ -5416,7 +5416,7 @@
(hits 100/224) (matched: 'sayable value') constraint (none) extremes [1, infinity)
- internal hits 1592/20088 nti r5 constraint CW = {r2, r5} extremes [1, 1]
+ internal hits 1592/20086 nti r5 constraint CW = {r2, r5} extremes [1, 1]
internal hits 220/1418 nti r5 constraint CW = {r2, r5} extremes [1, 1]
@@ -6677,7 +6677,7 @@
action of
(hits 0/65) constraint DS = {24} extremes [3, infinity)
- (hits 728/978) (matched: 'action name based rule producing nothing that varies') constraint (none) extremes [1, infinity)
+ (hits 728/978) (matched: 'action based rule producing nothing that varies') constraint (none) extremes [1, infinity)
(hits 6/250) (matched: 'language of play') constraint (none) extremes [1, infinity)
@@ -7969,7 +7969,7 @@
variable/variables
(hits 2/350) (matched: 'text variables') constraint DS = {11} extremes [2, infinity)
that/which vary/varies
- (hits 59/287) (matched: 'action name based rule producing nothing that varies') constraint DS = {11} extremes [3, infinity)
+ (hits 59/287) (matched: 'action based rule producing nothing that varies') constraint DS = {11} extremes [3, infinity)
(hits 2445/3832) (matched long text) constraint (none) extremes [1, infinity)
@@ -8009,12 +8009,12 @@
global
(hits 0/4) constraint DS = {10} extremes [2, infinity)
- (hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity)
+ (hits 61/62) (matched: 'action based rule producing nothing') constraint (none) extremes [1, infinity)
hits 61/124 nti 18 constraint (none) extremes [1, infinity)
English:
- (hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity)
+ (hits 61/62) (matched: 'action based rule producing nothing') constraint (none) extremes [1, infinity)
(hits 0/1) constraint (none) extremes [1, infinity)
@@ -9061,31 +9061,31 @@
waiting
(hits 1/20) (matched: 'waiting') constraint CS = {13} extremes [1, 1]
- hits 90/1036 nti 24 constraint DS = {14} extremes [1, infinity)
+ hits 91/1036 nti 24 constraint DS = {14} extremes [1, infinity)
English:
- (hits 90/334) (matched long text) constraint DS = {14} extremes [2, infinity)
+ (hits 91/334) (matched long text) constraint DS = {14} extremes [2, infinity)
- (hits 0/244) constraint DS = {14} extremes [1, infinity)
+ (hits 0/243) constraint DS = {14} extremes [1, infinity)
- hits 90/934 nti 14 constraint DS = {14} extremes [1, infinity)
+ hits 91/932 nti 14 constraint DS = {14} extremes [1, infinity)
English:
action based {...}
- (hits 0/338) constraint DS = {14} extremes [3, infinity)
+ (hits 1/337) (matched: 'action based rule producing nothing that varies') constraint DS = {14} extremes [3, infinity)
action
- (hits 90/388) (matched long text) constraint DS = {14} extremes [1, infinity)
+ (hits 90/386) (matched long text) constraint DS = {14} extremes [1, infinity)
action
constraint CS = {14} extremes [1, 1]
- hits 90/182 nti 25 constraint (none) extremes [0, infinity)
+ hits 90/180 nti 25 constraint (none) extremes [0, infinity)
English:
^
- (hits 90/91) (matched long text) constraint (none) extremes [0, infinity)
+ (hits 90/90) (matched long text) constraint (none) extremes [0, infinity)
- hits 1/182 nti 15 constraint DS = {15} extremes [1, infinity)
+ hits 0/180 nti 15 constraint DS = {15} extremes [1, infinity)
English:
{***} that/which vary/varies
- (hits 1/91) (matched: 'name based rule producing nothing that varies') constraint DS = {15} extremes [2, infinity)
+ (hits 0/90) constraint DS = {15} extremes [2, infinity)
{***} variable
(hits 0/90) constraint DS = {15} extremes [1, infinity)
diff --git a/inform7/Figures/timings-diagnostics.txt b/inform7/Figures/timings-diagnostics.txt
index 2222c69b5..6d1cbaf31 100644
--- a/inform7/Figures/timings-diagnostics.txt
+++ b/inform7/Figures/timings-diagnostics.txt
@@ -1,9 +1,9 @@
100.0% in inform7 run
71.1% in compilation to Inter
- 50.8% in //Sequence::undertake_queued_tasks//
- 4.8% in //MajorNodes::pre_pass//
- 3.2% in //MajorNodes::pass_1//
- 1.9% in //ImperativeDefinitions::assess_all//
+ 50.3% in //Sequence::undertake_queued_tasks//
+ 4.7% in //MajorNodes::pre_pass//
+ 3.5% in //MajorNodes::pass_1//
+ 1.8% in //ImperativeDefinitions::assess_all//
1.8% in //RTPhrasebook::compile_entries//
1.4% in //RTKindConstructors::compile//
1.0% in //Sequence::lint_inter//
@@ -13,25 +13,20 @@
0.4% in //Sequence::undertake_queued_tasks//
0.4% in //Sequence::undertake_queued_tasks//
0.2% in //CompletionModule::compile//
+ 0.2% in //InferenceSubjects::emit_all//
0.2% in //RTKindConstructors::compile_permissions//
- 0.1% in //InferenceSubjects::emit_all//
- 0.1% in //Task::make_built_in_kind_constructors//
- 0.1% in //Understand::traverse//
- 0.1% in //World::stages_II_and_III//
- 2.3% not specifically accounted for
+ 0.2% in //Task::make_built_in_kind_constructors//
+ 3.0% not specifically accounted for
26.1% in running Inter pipeline
- 10.0% in step 14/15: generate inform6 -> auto.inf
- 5.8% in step 5/15: load-binary-kits
- 5.8% in step 6/15: make-synoptic-module
- 1.5% in step 9/15: make-identifiers-unique
+ 9.9% in step 14/15: generate inform6 -> auto.inf
+ 6.0% in step 6/15: make-synoptic-module
+ 5.6% in step 5/15: load-binary-kits
+ 1.4% in step 9/15: make-identifiers-unique
0.4% in step 12/15: eliminate-redundant-operations
0.4% in step 4/15: compile-splats
- 0.3% in step 7/15: shorten-wiring
- 0.3% in step 8/15: detect-indirect-calls
+ 0.4% in step 7/15: shorten-wiring
0.2% in step 11/15: eliminate-redundant-labels
- 0.1% in step 10/15: reconcile-verbs
- 0.1% in step 2/15: parse-insertions
- 0.1% in step 3/15: resolve-conditional-compilation
- 0.6% not specifically accounted for
- 2.3% in supervisor
- 0.4% not specifically accounted for
+ 0.2% in step 8/15: detect-indirect-calls
+ 1.4% not specifically accounted for
+ 2.2% in supervisor
+ 0.5% not specifically accounted for
diff --git a/services/lexicon-module/Figures/excerpts-diagnostics.txt b/services/lexicon-module/Figures/excerpts-diagnostics.txt
index fb51f2947..aee44281e 100644
--- a/services/lexicon-module/Figures/excerpts-diagnostics.txt
+++ b/services/lexicon-module/Figures/excerpts-diagnostics.txt
@@ -5,11 +5,11 @@ Size of lexicon: 3101 excerpt meanings
29 words have a middle list: longest belongs to to (with 4 meanings)
108 words have a subset list: longest belongs to street (with 4 meanings)
-Number of attempts to retrieve: 106491
+Number of attempts to retrieve: 106490
of which unsuccessful: 88837
- of which successful: 17654
+ of which successful: 17653
-Total attempts to match against excerpt meanings: 260962
- of which, total with incorrect hash codes: 238885
- of which, total with correct hash codes: 22077
- of which, total which matched: 19336
+Total attempts to match against excerpt meanings: 260959
+ of which, total with incorrect hash codes: 238883
+ of which, total with correct hash codes: 22076
+ of which, total which matched: 19335