Comment #6 on issue 276 by Will.Donnelly: HConf should be a standalone
package
http://code.google.com/p/yi-editor/issues/detail?id=276
Personally, I like the approach of having all the compilation files in the
config
directory, although I personally favor moving them into a subdirectory for
cleanliness. I don't think moving to ~/.app.hs would be a good idea,
because I can
easily see the need for multiple user-defined modules in a complex
customization.
I am wondering about the use of MonadIO in HConf. As far as I can tell, the
only
things that are ever even imported from Control.Monad.Trans are 'MonadIO'
and
'liftIO'. Without importing other monad transformers, is there any purpose
at all to
using those abstractions? All I see is that it adds unnecessary line noise
to the
program, and makes recompilation more difficult because you have to hide
mtl.
I have verified that everything still works perfectly when all references
to MonadIO
and liftIO are expunged, and (in my opinion) the code in HConf.Paths
becomes much
easier to read after that change.
Attached is HConf working without Control.Monad.Trans, and also with the
Functor
instances removed.
Other aesthetic questions I would raise:
* We're already giving the status file the bare name 'status', should the
same be
done for the 'app.errors' file?
* Should we delete the status file after recovering state from it?
* Shoule we manually clean up the *.hi and *.o files in the config
directory (less
applicable if we move all those files into a subdirectory)
Attachments:
hconf.tar 50.0 KB
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
--~--~---------~--~----~------------~-------~--~----~
Yi development mailing list
[email protected]
http://groups.google.com/group/yi-devel
-~----------~----~----~----~------~----~------~--~---