As the sprint approaches, I would like to argue (feebly ;-) that Leo has been the beneficiary of all the "foreign" work on static type checking.
@testsetup is something truly worth having, but there is one other pattern that has just appeared. I have spent an enormous amount of time making the prepass (P1) very fast. Indeed, P1 can now process one of Leo's very-large files in about 1/20th of a second. This makes it possible to consider serious name and attribute checking when saving any dirty file. However, to do proper checking, one must first have data for *all* of Leo's files, dirty or not. The question is, how to do that? The obvious answer is, "in a separate thread, run at startup". That will work, but it is complicated: Leo must make sure that the thread completes before running any check. The much better way is to run P1 *at idle time*, one file per-idle time invocation. The checking code will, as before, have to ensure that P1 has been run on all files, but coordinating with idle-time processing seems much easier. With this pattern in place, there is now an easy, extensible way of checking files in various ways. At first, we will like run checks when dirty files are saved, but the idle-time pattern might allow true on-the-fly checking. Indeed, we expect checks of changed *nodes* to take one or two milliseconds at most. Edward -- You received this message because you are subscribed to the Google Groups "leo-editor" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/leo-editor?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
