Adding feature: I am still building up the 'Dao.Interpreter.ObjectLens' monad to create a cleaner interface to updating/indexing objects by reference or by value. Also, in a somewhat related change, I have shortened the name of the data type that used to be called 'Dao.Interpreter.HaskellData' to just 'Dao.Interpreter.Hata'.
Adding feature: I am still building up the 'Dao.Interpreter.ObjectLens'
monad to create a cleaner interface to updating/indexing objects by
reference or by value. Also, in a somewhat related change, I have
shortened the name of the data type that used to be called
'Dao.Interpreter.HaskellData' to just 'Dao.Interpreter.Hata'.

I also modified the 'Dao.Interpreter.objToStruct' and
'Dao.Interpreter.objFromStruct' functions to return ordinary
'Dao.Interpreter.ToDaoStruct' and 'Dao.Interpreter.FromDaoStruct'
(respectively) typed functions, moving them out of the
'Dao.Interpreter.Exec' monad. I feel this is a better design decision as
it limits the ability of those functions to only constructing and
deconstructing Haskell data types and Dao structures, and to do so
without side effects.

printedheart/Dao