concept G22ProjectInfo { File projectDir; new L historicalProjectDirs; void _doneLoading :: after { historicalProjectDirs.remove(null); } void addHistoricalProjectDir(File dir) { if (syncSetAdd(historicalProjectDirs, dir)) change(); } }