[Haskell] Haskell Weekly News: Issue 246
Welcome to issue 246 of the HWN, an issue covering crowd-sourced bits of information about Haskell from around the web. This issue covers the week of September 23 to September 23, 2012. Want to contribute quotes for HWN? Until today the only way to help with those was to use @remember in the IRC channel. Now you can also use @HWNQuotes in twitter to submit quotes for the weekly newsletter. Quotes of the Week * carpi: all said ... the brain of someone of who writes compilers for haskell scares me nuts. I wouldn't want them concentrating on me, lest I catch fire. * Igloo: The major problem, as far as I can see, is how to construct the mumble'. * edwardk: i want to be able to know if the compiler is being stupid or if its just me, and without any sort of model to reason about it with, i always have to assume it could be the compiler; i already have to deal with that problem, its called 'scala' * ddarius: Now I can just point people at a readable and relevant paper instead of having to Cale it. * rwbarton: also, a generally safe answer to "was there an update to lambdabot recently" is "no" * camccann: you want a debugger? GHC has one. Except that stepping through lazy evaluation is like listening to a stream of consciousness narrative told by a 5-year-old with ADHD. Top Reddit Stories * My Haskell book is not dead! I'd love some feedback now that it's six chapters long and growing. Domain: sthaskell.com, Score: 61, Comments: 18 On Reddit: [1] http://goo.gl/AfLwS Original: [2] http://goo.gl/oB0e8 * What commercial users say they want from Haskell Domain: fpcomplete.com, Score: 46, Comments: 54 On Reddit: [3] http://goo.gl/JTtMG Original: [4] http://goo.gl/ZoHrh * Haskell rewarding moments: Orc Battle translation Domain: self.haskell, Score: 41, Comments: 22 On Reddit: [5] http://goo.gl/5xjJJ Original: [6] http://goo.gl/5xjJJ * Does Stroustroup have some FP envy? This is a pretty neat library implementation of pattern matching in C++. Domain: open-std.org, Score: 40, Comments: 44 On Reddit: [7] http://goo.gl/PH7ZU Original: [8] http://goo.gl/KuGrw * Functional TDD: a clash of cultures? Domain: facebook.com, Score: 34, Comments: 34 On Reddit: [9] http://goo.gl/9xBLo Original: [10] http://goo.gl/kOi2G * Dovetailing Domain: self.haskell, Score: 33, Comments: 21 On Reddit: [11] http://goo.gl/GdlMi Original: [12] http://goo.gl/GdlMi * Oh the fun of trying to install wxhaskell Domain: self.haskell, Score: 33, Comments: 33 On Reddit: [13] http://goo.gl/4F3Fu Original: [14] http://goo.gl/4F3Fu * Lazy v. Yield: Incremental, Linear Pretty-printing (Kiselyov, Peyton-Jones, Sabry) [pdf] Domain: cs.indiana.edu, Score: 31, Comments: 54 On Reddit: [15] http://goo.gl/PfVHl Original: [16] http://goo.gl/ub46l * Call for discussion: OverloadedLists extension Domain: gist.github.com, Score: 24, Comments: 52 On Reddit: [17] http://goo.gl/0O1G8 Original: [18] http://goo.gl/xYyTq * Real World Haskell: is there a second edition coming? Domain: self.haskell, Score: 24, Comments: 9 On Reddit: [19] http://goo.gl/rjjQb Original: [20] http://goo.gl/rjjQb * Introduction to Functional Reactive Programming [video] Domain: blog.edwardamsden.com, Score: 23, Comments: 3 On Reddit: [21] http://goo.gl/vSVKP Original: [22] http://goo.gl/IH3MF Top StackOverflow Questions * What optimizations can GHC be expected to perform reliably? votes: 27, answers: 2 Read on SO: [23] http://goo.gl/E6bH4 * A simple example showing that IO doesn't satisfy the monad laws? votes: 22, answers: 4 Read on SO: [24] http://goo.gl/YptHT * Are there any good use cases for OverlappingInstances? votes: 12, answers: 3 Read on SO: [25] http://goo.gl/FLChO * Why is ListT monad transformer considered buggy - what monad laws it breaks? votes: 11, answers: 1 Read on SO: [26] http://goo.gl/HX7Oa * How to build and use a bootstrap executable in a Cabal package votes: 10, answers: 1 Read on SO: [27] http://goo.gl/tvA03 * Continuation passing style representation of types votes: 10, answers: 1 Read on SO: [28] http://goo.gl/6R60n * GHC code generation for type class function calls votes: 10, answers: 3 Read on SO: [29] http://goo.gl/3ggvE * Why inductive datatypes forbid types like `data Bad a = C (Bad a -> a)` where the type recursion occurs in front of ->? votes: 10, answers: 2 Read on SO: [30] http://goo.gl/jtG6d * Are functions of arity-n really just an n-category due to currying? Can they be made into a 1-category? votes: 9, answers: 2 Read on SO: [31] http://goo.gl/JfJLF * Setting socket options on OSX votes: 9, answers: 0 Read on S
[Haskell] Call for Contributions - Haskell Communities and Activities Report, November 2012 edition
Dear all, I would like to collect contributions for the 23rd edition of the Haskell Communities & Activities Report http://www.haskell.org/haskellwiki/Haskell_Communities_and_Activities_Report Submission deadline: 1 November 2012 (please send your contributions to hcar at haskell.org, in plain text or LaTeX format) This is the short story: * If you are working on any project that is in some way related to Haskell, please write a short entry and submit it. Even if the project is very small or unfinished or you think it is not important enough --- please reconsider and submit an entry anyway! * If you are interested in an existing project related to Haskell that has not previously been mentioned in the HCAR, please tell me, so that I can contact the project leaders and ask them to submit an entry. * Feel free to pass on this call for contributions to others that might be interested. More detailed information: The Haskell Communities & Activities Report is a bi-annual overview of the state of Haskell as well as Haskell-related projects over the last, and possibly the upcoming six months. If you have only recently been exposed to Haskell, it might be a good idea to browse the May 2012 edition --- you will find interesting projects described as well as several starting points and links that may provide answers to many questions. Contributions will be collected until the submission deadline. They will then be compiled into a coherent report that is published online as soon as it is ready. As always, this is a great opportunity to update your webpages, make new releases, announce or even start new projects, or to talk about developments you want every Haskeller to know about! Looking forward to your contributions, Janis (current editor) FAQ: Q: What format should I write in? A: The required format is a LaTeX source file, adhering to the template that is available at: http://haskell.org/communities/11-2012/template.tex There is also a LaTeX style file at http://haskell.org/communities/11-2012/hcar.sty that you can use to preview your entry. If you do not know LaTeX, then use plain text. If you modify an old entry that you have written for an earlier edition of the report, you should already have received your old entry as a template (provided I have your valid email address). Please modify that template, rather than using your own version of the old entry as a template. Q: Can I include Haskell code? A: Yes. Please use lhs2tex syntax (http://people.cs.uu.nl/andres/lhs2tex/). The report is compiled in mode polycode.fmt. Q: Can I include images? A: Yes, you are even encouraged to do so. Please use .jpg format, then. Q: Should I send files in .zip archives or similar? A: No, plain file attachements are the way. Q: How much should I write? A: Authors are asked to limit entries to about one column of text. A general introduction is helpful. Apart from that, you should focus on recent or upcoming developments. Pointers to online content can be given for more comprehensive or "historic" overviews of a project. Images do not count towards the length limit, so you may want to use this opportunity to pep up entries. There is no minimum length of an entry! The report aims for being as complete as possible, so please consider writing an entry, even if it is only a few lines long. Q: Which topics are relevant? A: All topics which are related to Haskell in some way are relevant. We usually had reports from users of Haskell (private, academic, or commercial), from authors or contributors to projects related to Haskell, from people working on the Haskell language, libraries, on language extensions or variants. We also like reports about distributions of Haskell software, Haskell infrastructure, books and tutorials on Haskell. Reports on past and upcoming events related to Haskell are also relevant. Finally, there might be new topics we do not even think about. As a rule of thumb: if in doubt, then it probably is relevant and has a place in the HCAR. You can also ask the editor. Q: Is unfinished work relevant? Are ideas for projects relevant? A: Yes! You can use the HCAR to talk about projects you are currently working on. You can use it to look for other developers that might help you. Q: If I do not update my entry, but want to keep it in the report, what should I do? A: Tell the editor that there are no changes. The old entry will typically be reused in this case, but it might be dropped if it is older than a year, to give more room and more attention to projects that change a lot. Do not resend complete entries if you have not changed them. Q: Will I get confirmation if I send an entry? How do I know whether my email has even reached the editor, and not ended up in a spam folder? A: Prior
[Haskell] ANN: cabal-install-1.16.0 (and Cabal-1.16.0.1)
(Please redirect follow-ups to haskell-c...@haskell.org or cabal-de...@haskell.org) On the behalf of the many contributors to cabal, I'm proud to present cabal-install-1.16.0. This release contains almost a year worth of patches. Highlights include: * Parallel installs (cabal install -j) * Several improvements to the dependency solver. * Lots of bugfixes We're also simultaneously releasing Cabal-1.16.0.1, which address a few bugs. To install: cabal update cabal install cabal-install-1.16.0 Cabal-1.16.0.1 Complete list of changes in cabal-install-1.16.0: * Bump cabal-install version number to 1.16.0 * Extend the unpack command for the .cabal file updating * On install, update the .cabal file with the one from the index * Make compatible with `network-2.4` API * Update ZLIB_VER in bootstrap.sh for ghc-7.6 compatibility * cabal-install.cabal: add Distribution.Client.JobControl and Distribution.Compat.Time * Adapt bootstrap.sh to ghc-7.6 changes * Move comment that was missed in a refactoring * cabal-install: Adapt for GHC 7.6 * Ensure that the cabal-install logfile gets closed * Make cabal-install build with Cabal-1.16. * Initialise the 'jobs' config file setting with the current number of CPU cores. * Update version bounds for directory. * Update bootstrap.sh to match platform 2012.2.0.0 * Relax dependency on containers. * Bump versions. * Better output for parallel install. * Fix warnings. * Remove 'tryCachedSetupExecutable'. * Redundant import. * Use a lock instead of 'JobControl 1'. * Comments, cosmetic changes. * Implement the setup executable cache. * Add the missing JobControl module * Fix missing import after merge of par build patches * Fix impl of PackageIndex.allPackagesByName * Drop the "ghc-options: -rtsopts" on cabal-install. We do not need it. * Parallelise the install command This is based on Mikhail Glushenkov's patches. * InstallPlan: Add a Processing package state. * Add a '-j' flag for the 'install' command. * Add -threaded and -rtsopts to cabal-install's ghc-options. * Fix typos. * Fix warnings. * 80-col violation. * Spelling. * Fix warnings. * Extended a comment. * Force the log for the error to be printed in parallel with the complete trace. * Remove goal choice nodes after reordering is completed. * Make modular solver handle manual flags properly. * Store manual flag info in search tree. * Maintain info about manual flags in modular solver. * Fix cabal-install build. * Merge pull request #6 from pcapriotti/master * Adapt to change in GHC package db flags. * Merge pull request #1 from iustin/master * Add support for Apache 2.0 license to cabal-install * Handle test and bench stanzas without dependencies properly in modular solver. * Updated repo location in cabal files. * last-minute README changes * updated copyright year for Duncan * updated changelog * added deepseq to bootstrap.sh * handling the solver options properly in config file * handling the "optimization" option properly in config file * Update cabal-install bootstrap.sh * treat packages that are unknown no longer as an "internal error" in modular solver * minor wording change when printing install plans * no longer pre-filter broken packages for modular solver * for empty install plans, print the packages that are installed * make the reinstall check less noisy * disable line-wrapping for solver debug output * adding a solver flag for shadowing of installed packages * adding the possibility for index-disabled packages * choose default solver based on compiler version * Added a comment * Use the new --package-db flag stuff in cabal-install * head cabal-install requires head Cabal * Fix ticket #731 * Add brief description of PVP to cabal init generated .cabal files * Bump versions to 1.15 and 0.15 This is the head branch, the 1.14.x and 0.14.x are in the 1.14 branch. * init: guess at filling in deps in the build-depends: field * init: see whether source directory 'src' exists. * init: improve prompt: enclose y/n in parens * init: improve prompt: 'homepage' field is not for repos. * bootstrap with --global should still respect $PREFIX * Update cabal-install boostrap.sh package versions * Fix 'cabal configure --enable-{tests,benchmarks}'. 'cabal configure' was not adding optional stanza constraints when checking dependencies, causing '--enable-{tests,benchmarks}' to be silently ignored. * added missing error message * Don't try to run test suites where none exist. * Fixed non-exhaustive pattern matches with new InstallOutcome. * Automatically run test suites when invoked with 'cabal install --enable-tests'. Do not install if tests fail. * make test and bench available as user constraints * let --reinstall imply --force-reinstalls for targets * stanza support in modular solver * show optional stanzas when printing install plans * Added a missing case. * Enable tests and benchmarks in cabal-install without modifications to the Cabal library. * Don't build benchmarks, even if installing benchmark dependencies. *