6 ms·
Homophony Groups in Haskell
- platz 13y agoI've realized lately that http://www.reddit.com/r/haskell/ http://www.reddit.com/r/haskell/ is always the place to go for latest haskell news.
- vezzy-fnord 13y agoYep, it's even linked on the front page of Haskell.org.
- jcurbo 13y agoI also like http://haskellnews.org/ http://haskellnews.org/
- waqf 13y agoIn answer to his question about the equivalent problem in French: http://people.mpim-bonn.mpg.de/zagier/files/exp-math-2/fulltext.pdf http://people.mpim-bonn.mpg.de/zagier/files/exp-math-2/fullt...
- tunesmith 13y agoI had no idea that draught is pronounced draft. I always thought that whatever I heard was always "draft", and that draught was some word that I only came across in written english.
- jerf 13y agoMe neither. I would have thought draught and drought were homophones. Interesting, my EN-US spellchecker here in Firefox is also insisting that draught is misspelled, and is most likely "fraught" (with drought next). I guess I've never had to read that word aloud in front of anyone who would laugh at me....
- jfb 13y agoI have a shockingly large "read-only" English vocabulary, at least relative to my age (42) and native language (American English). I still get caught out from time to time -- "quay" was a particularly humiliating bête noire.
- velis_vel 13y agoApparently in American English it can either be pronounced 'key', 'kay' or 'kway'.
- tunesmith 13y agoMy favorite was at a party where the (verbal) quiz question was what a "yamikah" is. I had absolutely no idea. Then they told me what it was, and I said - as if the quiz question had gotten it wrong - "Ohhhhh! You mean a YAR-MULK."
- ahomescu1 13y agoSomething similar happened to me: a friend of mine kept telling me he worked for a security company called Semantic, and much later I realized he meant Symantec (pronounced like "semantic").
- jonnybgood 13y agoThis is not a bash on Haskell as I like Haskell, but is every Haskell article or discussion academic? It's all fascinating and interesting (especially the OP), but some of us would like to learn about Haskell's applicability in the real world, not just in computer science academia. I would like to read about Haskell workflows, productivity, and the positives/negatives of using it in your organization. Languages like Go and Clojure bring up these kinds of conversations all the time, so why is it so silent (or at least very low volume) on Haskell's front?
- deleted 13y ago[deleted]
- davorak 13y agoWill you please link to some example articles form your example topics and any others that you would be interested in seeing a Haskell analog of?
- jonnybgood 13y agoHere are some examples just off the top of my head. Go: http://blog.gopheracademy.com/moving-to-go http://blog.gopheracademy.com/moving-to-go http://blog.iron.io/2013/03/how-we-went-from-30-servers-to-2-go.html http://blog.iron.io/2013/03/how-we-went-from-30-servers-to-2... http://blog.gopheracademy.com/day-03-building-a-twelve-factor-app-in-go http://blog.gopheracademy.com/day-03-building-a-twelve-facto... Clojure: http://blog.getprismatic.com/blog/2013/1/14/bringing-functional-to-the-frontend-clojure-clojurescript-for-the-web http://blog.getprismatic.com/blog/2013/1/14/bringing-functio... http://www.infoq.com/presentations/Why-Prismatic-Goes-Faster-With-Clojure http://www.infoq.com/presentations/Why-Prismatic-Goes-Faster...
- tel 13y agoThese show up from time to time but I don't think they get the same popularity boost that the cute academic ones do. I also don't think there are as many people trying to sell Haskell internally or externally. Most of what you see with Haskell-in-practice posts is that (a) powerful static typing improves maintainability in various ways (b) training people isn't as hard as people think (c) monad transformers are really important (d) stack dumps don't really exist and that's tough sometimes (e) space leaks happen but you can learn to avoid them without too much effort (f) both robust and scripty/throwaway code is easy to write once you learn how (g) concurrency rocks (h) the awkward squad is still awkward (i) many libraries are abnormally high quality (j) there's some missing library coverage, though. These posts exist and come up from time to time on /r/haskell as well as after the Commercial Users of Functional Programming conference each year. If you go fishing in the /r/haskell archives you'll find quite a few.
- gjm11 13y agoSome of the homophone pairs the author used seem pretty dubious to me: ant/aunt, choral/coral, air/err, awed/odd, veldt/felt. This is partly British versus American English, but not wholly. My personal homophony group is not trivial (I think); in particular, I believe that for all pairs of words I regard as having the same pronunciation, the number of "v"s is the same. The counterexample alleged on the linked page is "veldt = felt", but I (like the Dutch, I believe) pronounce "veldt" with a "v" rather than an "f" sound. I can reduce everything else to the identity using only (what I think are) uncontroversial homophone pairs, so I claim that every native English speaker of large enough vocabulary has a homophony group that's either trivial or isomorphic to Z (and generated by "v"). (I did need some uncommon words, though I didn't try very hard to avoid them: od, gneiss, phlox, qat, flyte, lam. And some somewhat-uncommon ones: banns, rapt, wright.)
- philsnow 13y agoagreed, I didnt have to look far at all: affect / effect are (and sound) completely different. also as an aside, both effect and affect are both verbs and nouns.
- rspeer 13y agoMost people pronounce the verb "affect" and the noun "effect" the same.
- dragonwriter 13y ago> Most people pronounce the verb "affect" and the noun "effect" the same. Most people I've encountered pronounce the verb "affect" and noun "effect" differently, though the difference can be slight. (schwa for affect vs. short e for effect)
- deleted 13y ago[deleted]
- jfarmer 13y agoI'm going to put on my math hat for a second, because this blog post was a bit confusing for me at first. I had to read through the post a few times to understand what the "homophony group" was. For this comment, I don't want to dive into this post from the perspective of someone who's never studied abstract algebra before, so what I'm about to write won't make much sense to anyone who hasn't. If you know a little bit of group theory, though, you should be able to follow along. In math-ese, the group under consideration is <a,b,c,...,z | knight=night, ad=add, arc=ark, ...> Defining a group this way is called a "group presentation". The symbols to the left of the | are called "generators" and the symbols to the right are called "relations." For example, one presentation of the integers modulo 4 with mod-4 addition is <x | x+x+x+x = 1> See http://en.wikipedia.org/wiki/Presentation_of_a_group http://en.wikipedia.org/wiki/Presentation_of_a_group for the gory details. Anyhow, the blog post confused me at first because the "homophony group" is a kind of mathematical double entendre. In algebra one often omits the group operation explicitly, writing "xy" instead of "x.y," where "." is the group operation. This implicit understanding is what makes the "joke" work. So, on the one hand, we write down the relation "ad=add" in our presentation because ad and add are homophones in English. On the other hand, in group-land, we mean a.d = a.d.d, where (again) "." is the group operation. In group-land, however, there's no sense that "a" is anything special. The 26 symbols "a" to "z" are arbitrary and we could easily write, say, <σ,b,c,...,z | knight=night, σd=σdd, ...> or use any other 26 distinct symbols for "a" to "z." The generators tell us what symbols we have at our disposal and the relations tell us how we can reduce combinations of those symbols to the identity element. Math jokes. Oh buddy. For the CS folks among us, there's a computational problem called the "group isomorphism problem" which asks, "Given two group presentations, are they isomorphic?" This problem is provably undecidable: http://en.wikipedia.org/wiki/Group_isomorphism_problem http://en.wikipedia.org/wiki/Group_isomorphism_problem This means you can't write a single algorithm which takes two arbitrary group presentations as inputs and correctly determines whether the groups as presented are isomorphic.