I agree about making everything depend on filesystem write dates.
What do you think about my idea about dropping a dummy file into the filesystem to record the last compile date of systems? Is that unnecessary?
I suppose one can simply traverse the current system's files to do the checking, and compute a MIN over the compiled file dates as the system freshness date, compared to the MAX of the write dates of the parent system.
My dummy file was an attempt to avoid this extra work. You have obviously been thinking harder about this, so I defer to you.
Question: is there any case where there's an aspect of system state that cannot be done by file write date? E.g., reasoning about the in-memory state of a file that is simply loaded from source instead of compiled (we have a system like this, involving processing of a DSL into in-memory data structures, and it's a nightmare).
I agree about making everything depend on filesystem write dates.
What do you think about my idea about dropping a dummy file into the filesystem to record the last compile date of systems? Is that unnecessary?
I suppose one can simply traverse the current system's files to do the checking, and compute a MIN over the compiled file dates as the system freshness date, compared to the MAX of the write dates of the parent system.
My dummy file was an attempt to avoid this extra work. You have obviously been thinking harder about this, so I defer to you.
Question: is there any case where there's an aspect of system state that cannot be done by file write date? E.g., reasoning about the in-memory state of a file that is simply loaded from source instead of compiled (we have a system like this, involving processing of a DSL into in-memory data structures, and it's a nightmare).