I need to write something that will notice when a change happens in a directory (file added, delete, modified, etc) and let me take action based on that. I was excited when I saw Racket's "Detecting Filesystem Changes" (https://docs.racket-lang.org/reference/Filesystem.html#%28part._filesystem-change%29) section, but having read through it I am (a) confused and (b) not sanguine about this being what I need.
I also saw this: http://benaiah.me/posts/watching-filesystem-racket/ but I'm hoping there's a way that does not involve installing extra software on the customer's machine. After reading through the DFC docs multiple times, this is what I think it says; could someone please confirm this for me? "Synchronizable event" is another name for "event". The word "synchronizable" is redundant. An event is an object. Some events are purpose built objects that exist only to be events while some events are things that have other uses. Example: a port is always an event but it has functionality beyond its event-ness. The purpose of events is to let threads work together without stepping on each other. In essence, an event is a message that one thread sends to another. Events are not used for inter-process communication, only inter-thread communication. An event is ultimately a notification about something -- the filesystem changed, the user moved the mouse, etc. When a thread receives an event and acts upon it that is called "synchronizing" the event. Synchronizing an event always yields a result, logically enough called the 'synchronization result'. This result is often the event itself but does not have to be. Events are mutable. Synchronizing may affect their state. Events are typically generated either manually (e.g. <alarm-evt>, which produces an event object for later use) or semi-manually (e.g. calling thread-send which sends the specified value as an event). Hopefully all of the above is correct. If so, I have an understanding of events but I still know nothing about detecting filesystem change events. I've looked through PLaneT and found nothing that seems like an FS-monitoring package. Can anyone suggest how to do this? -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.

