Mis-reported priority upon extract

From SuperMemopedia
Revision as of 21:43, 20 November 2008 by SuperMemoHelp (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Question

Note: I'm using SM2006 Build 13.15 (May 3, 2008), but I've noticed this issue for a looong time.

Make sure the Element Data window is visible (Tools -> Statistics -> Element Data).

My computer is relatively low-end (512 MB RAM), and I usually have tons of web pages open, so this might not be noticeable on all computers. In order to observe it, then, you may need to run enough programs to slow down SuperMemo's refresh rate.

Go to an article, select some text, and focus on the "Priority" field of the Element Data window. Hit alt-X to extract. You will briefly see some new priority, presumably that of the extracted element. But hit alt-Left to go to the extracted element. The priority is different from that which was briefly displayed.

For example: Topic #22740 has priority 53.485%. I select some text and extract it (alt-X). I notice the priority briefly displays 5.512% for Topic #48522 (which is visible at the top of the Element Data window if you can catch it). But then I go to the extract (i.e. to topic #48522), and I see that its priority is 41.694%.

Clearly the briefly-flashed priority has nothing to do with the priority of the extract. So what is it, and why doesn't it display the actual priority?

idea

Alt+X is a high-level procedure, and as such it does lots of things that are otherwise not necessary. That first priority is probably the default priority of a newly added element (it shows up as part of the high-level procedure). The final priority is derived from the priority of the extract. This could perhaps be eliminated by optimizing the procedure "add new element" when it is called within "create a new extract". This is an old dilemma: (A) simple code, inefficient, but few bugs, or (B) optimized code, efficient, with rare and hard-to-spot bugs. SuperMemo optimizes usually only then when there is a severe cost on speed.