Dyalog / link

Source code for Link – the built-in component that enables the use of text files as the primary storage mechanism for APL source code
https://dyalog.github.io/link
MIT License
19 stars 10 forks source link

Automatic fallback to watch=ns can cause confusion #496

Open mkromberg opened 1 year ago

mkromberg commented 1 year ago

If DotNet is not available, Link.Create will automatically fall back from watch=both to watch=ns. If source file names do not match object names, for example if the repository was originally created with case coding on but is now being used with case coding off, Link will read the case-coded files (for example foo-0.aplf), but if functions are edited, write back to foo.aplf (because case coding is now off, and without watch=both, Link does not create a direct link to the file in the interpreter, as this would cause file changes to be picked up).

Potential solutions include always checking for a case-coded version of a source file even when case coding is off and asking the user what to do if it exists. Perhaps also warning the user on link creation that some or all file names are case coded, even when case coding is off.