tag:blogger.com,1999:blog-10770855.post111898235921723400..comments2024-03-28T03:20:57.393-04:00Comments on The Little Calculist: Real world PL designDave Hermanhttp://www.blogger.com/profile/00405190527081772997noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-10770855.post-1119202866041538092005-06-19T13:41:00.000-04:002005-06-19T13:41:00.000-04:00Thanks!Terminology (and notation) are important!Ye...Thanks!<BR/><BR/><I>Terminology (and notation) are important!</I><BR/><BR/>Yep, names <I>should</I> matter to people, and names <I>shouldn't</I> matter to computers (cf. α-equivalence).<BR/><BR/><I>What should a Monad Transformer be called?</I><BR/><BR/>Effect Transformer?<BR/>Effect Builder?<BR/>Effect System Transformer?<BR/>Effect System Combinator?<BR/>Effect System Builder?<BR/><BR/>I'm not sure. Is your objection to "Effect Combinator" that it sounds like it combines an individual instance of an effect rather than the family of all such effects, or is it that it's not a true combinator since you don't in general get out a monad on the other end?Dave Hermanhttps://www.blogger.com/profile/00405190527081772997noreply@blogger.comtag:blogger.com,1999:blog-10770855.post-1119191922916707032005-06-19T10:38:00.000-04:002005-06-19T10:38:00.000-04:00I agree with you wholeheartedly on this. I have b...I agree with you wholeheartedly on this. I have been arguing the same position (from my convenient pulpit of teaching a PL course).<BR/><BR/>Your point of separating the theory and the name given to the concept when it is implemented in a PL needs to be shouted much louder. Terminology (and notation) are important! Picking a name which is suggestive of an analogy with something already known (like effect instead of monad) is one of the most important choices to be made when designing a language. Of course, reasoning by analogy can lead one astray, but since there is a background theory to rely on, that is not such a big deal.<BR/><BR/>Question: What should a <I>Monad Transformer</I> be called? While <I>Effect Combinator</I> would be correct, it is still not <B>right</B>. A Monad Transformer does indeed combine effects, but I have yet to come up with a suggestive name for it!Anonymousnoreply@blogger.com