Haskell Programmers of Chicago
See all
Members (50)

Stream

 
I created a #ChicagoHaskell on Freenode IRC channel for a place where we can all talk online in real-time.
2
Luke Hoersten's profile photoGregory Kettler's profile photo
2 comments
 
There's a few of us in there now. Try again?
Add a comment...
 
On April 5th (a month from now) there will be a NYHUG (New York Haskell User Group) hackathon. Some of us in Chicago were thinking it might be a lot of fun to attend! If we purchased tickets now flights are very reasonable. If this is something that you'd be interested in please let us know so we can setup group travel arrangements. Any and all are welcome and encouraged! Contact Luke Hoersten or me for more details.
 http://www.haskell.org/haskellwiki/Hac_NYC
1
Chetan Taralekar's profile photoDavid Johnson's profile photo
2 comments
 
Ah Sorry! Meant to say April 5th, not 15th. Will correct it above.
Add a comment...

Mark Grant

Discussion  - 
 
Let me know if and when you guys want to organize the next event. My company (8th Light) is willing to host/sponsor. Office is in the West Loop.
1
Luke Hoersten's profile photoChetan Taralekar's profile photo
3 comments
 
Sounds good. For the next event we were thinking of everyone presenting their Haskell projects. When works for you?
Add a comment...
 
A few of us at the Hackathon were talking about ways of dealing with cabal-hell. This looks like a nice step in the right direction to me: https://github.com/benarmston/cabal-constraints. Seems to be based on roughly the same principle as Ruby's bundler with a gemfile.lock. Thoughts?
1
Add a comment...

Luke Hoersten
owner

Discussion  - 
 
 
People,

There has been a lot of debate over the Hackage package versioning policy lately. My plea to you: please follow the policy and put upper bounds on your version dependencies.

Some (typically those who maintain a lot of packages) advocate removing the upper bound from package version dependencies since it means you don't have to upgrade your package's dependencies if a new version of package foo comes out.

My contention has always been that this is a recipe for "code rot" -- old code that ought to still build without problems breaks because you depend on package "foo", which depends on "bar >= 0.2",  and the "bar" api changes between 0.3 and 0.4.  The linked github issue is an example of this.

I appreciate that package authors have a lot of work to do and that bumping package bounds on 100 packages gets tedious when a new version of bytestring comes out, but this is shifting the maintenance burden from you to all of your users in perpetuity. In order to keep this program building, I either have to commit to running on the Hackage treadmill and making sure all code I've ever written continues to build with the latest versions of all of the crap on hackage, or lock down upper bounds on all of the packages in the transitive closure of the bad package's dependency graph.

For libraries on Hackage this is probably OK because it's expected of a package author to keep current. This program, however, is application code and there is no excuse for it not to be buildable in this particular case. If upstream had followed the PVP then I wouldn't have to spend the 30 minutes or whatever it's going to take to fix this.
1
Luke Hoersten's profile photoReid Draper's profile photo
2 comments
 
Talking to some more people it seems like this issue with aes crypto libs has been pretty pervasive in breaking peoples code that used to compile with a simple 'cabal update'. Not fun.
Add a comment...

Luke Hoersten
owner

Discussion  - 
 
What IDE or editor does everyone use for coding Haskell?
1
Luke Hoersten's profile photoDavid Johnson's profile photo
9 comments
 
+John Wiegley 's FPComplete presentation was awesome. I'm going to give it a serious try as my main IDE.
Add a comment...
 
What do people think about starting a HackChi, Chicago Haskell Hackathon?  Once or twice a year (or maybe more!) it would be a nice to get together and just jam in a work space like that Next Door location we were at.
6
1
Luke Hoersten's profile photoJohn Wiegley's profile photoReid Draper's profile photo
23 comments
 
Hey Jeremy, we should get that announcement out ASAP if we want people to put it on their calendars.  Can you ping me on IRC sometimes so we can work out that announcement email?
Add a comment...

Reid Draper

Discussion  - 
 
Been playing a bit with Pipes 4.0. Fun stuff.
1
Luke Hoersten's profile photoJohn Wiegley's profile photo
3 comments
 
Not sure what the versions were. Pipes was brand new and conduits not much older. 
Add a comment...

Reid Draper

Discussion  - 
 
Code for the sample app from the Cloud Haskell presentation today: https://github.com/reiddraper/cloud-haskell-sample
2
Luke Hoersten's profile photo
 
Sorry I want able to make the presentation. I plan on going through the material on my own anyway. Thanks for posting it. 
Add a comment...

Luke Hoersten
owner

Discussion  - 
 
Great overview of Keter which came up in today's presentation on FPComplete.
1
Matthew Wraith's profile photo
 
Thanks Luke for this link!
Add a comment...

Luke Hoersten

Discussion  - 
 
Luke Hoersten originally shared:
 
Pizza will be provided by FPComplete!
1
Add a comment...
 
Simon Peyton Jones kicks off the Scala eXchange with a keynote on Haskell, Lenses and Types

The Scala eXchange 2013 kicked off with a challenging keynote by   on #Lenses and #Types. Simon was joined by 400+ members of Europe's Scala community, gathering for 2 intensive days of learning and sharing skills on #Functional Programming, Reactive Programming and Scala! You can watch a SkillsCast (film/code/slides) of Simon's keynote here http://skillsmatter.com/podcast/home/simon-peyton-jones/wd-8776

The rest of the Scala eXchange featured just talks on Scala, but as there are many common challenges faced by and ideas within both the Scala and Haskell community, I thought to provide you with the links and overview of the rest of the conference too:

Simon's keynote, we split into 3 tracks
- Raymond Roestenburg took stage in Hall 1 and shared how to design #Actor based applications in #Akka. A full SkillsCast recording of Ray's talk can be found here: http://skillsmatter.com/podcast/home/akka-in-practise-designing-actor-based-applications/wd-8776

*David Pollak gave a talk on the recently launched web framework Lift3. A skillscast (film/code/slides) recording of this -lift talk can be found here: http://skillsmatter.com/podcast/scala/david-pollak/wd-8776

George Leontiev explained how Scala is also a logic programming language and on how Scala's type-level programming is essentially logic programming. You can watch a SkillsCast recording of George's talk (titled 'There's Prolog in your Scala') here: http://skillsmatter.com/podcast/scala/theres-a-prolog-in-your-scala/wd-8776

Following a break, featuring many discussions and visits to the booths of sponsors Cake Solutions, Pearson, Net-a-porter, Underscore, BrickAlloy BSkyB and VNGRS, continued with the following sessions:

Bill Venners got people in Hall 1 very excited with a talk on the journey from a design that leaned towards implicit conversions in ScalaTest 1.0 to one that emphasizes implicit parameters in #ScalaTest and #ScalaUtils 2.0. You can find a SkillsCast recording of Bill's truly amazing talk here: http://skillsmatter.com/podcast/home/implicit-conversions-implicit-parameters/wd-8776

Meanwhile, David Pollak explained how to craft web applications with Lift3, including instance actors that communicate between a JS client and the #Lift server. Find a SkillsCast recording of David's talk here: http://skillsmatter.com/podcast/home/lift-3-high-and-lifted-up/wd-8776

And Haoyi Li got everyone tweeting on his talk on #Metascala - a great HTML/XML construction library for Scala, that he created. Watch a SkillsCast recording of this talk on Metascala and low level stuff here: http://skillsmatter.com/podcast/home/metascala-a-tiny-diy-jvm/wd-8776

After the morning sessions and some learning and sharing of scala skills over lunch, Viktor Klang kicked off the afternoon with a talk on failure... and how to deal with it. Viktor explained that no matter how flawless and well-tested and well-typed our scala code is, there is something that we should never forget: Reality — a place where things get FUBAR all the time — so he talked about what can and will go wrong, and what strategies we have to deal with it; to recover; to heal our systems. You can watch a #SkillsCast (film/code/slides) of Viktor's keynote here: http://skillsmatter.com/podcast/home/viktor-klang/wd-8776

After Viktor's keynote, Jon Pretty gave a talk on lessons learned in #Scala API design. In his talk he explored questions like how to design a library which satisfies a dozen different use cases? How can the same API be ideal for the rigour of a mission-critical production environment, yet still perfect for quick scripting in the REPL? How can the same methods be equally well-suited to blocking and asynchronous code? How do you design an API which interacts seamlessly with a third-party library that hasn't even been conceived yet? And he did an awesome job in answering these questions by demonstrating some of Scala's more advanced features, taming #implicits, type classes and type constructors to enable every Scala user (even beginners) to benefit from some cool and cunning new patterns in library design. You can watch a SkillsCast (film/code/slides) of Jon's ScalaX talk here: http://skillsmatter.com/podcast/home/how-to-please-everyone-all-the-time-lessons-in-scala-api-design/wd-8776

And Chris Cundill from Cake Solutions talked about #thisweekinscala, the weekly community blog on the latest Scala releases, news, blogs, presentations and tutorials. A SkillsCast recording (film/code/slides) of Chris' talk can be found here: http://skillsmatter.com/podcast/home/thisweekinscala/wd-8776

It was nice to see #Scala powering some of the most successful UK startups, MindCandy and Net-a-porter, and to see their teams sharing their experience with us.

Sean Parsons from MindCandy talked about #Types in #Functional Programming. Sean shared some of the experience he gained at MindCandy to explain why you should use Types to model the logic you intend to code more accurately and succinctly. Check out the SkillsCast (film/code/slides) recording of Sean's talk here: http://skillsmatter.com/podcast/home/let-the-types-set-you-free/wd-8776

And Ariel Kogan & Ian Forsey shared their skills and experience gained at Net-a-porter, where they created their first reactive #Scala / #Akka / #Spray service. They explained what they learned, introducing these technologies at a company with a long-standing Java codebase and production infrastructure. You can watch a SkillsCast recording of their talk here: http://skillsmatter.com/podcast/home/scala-does-the-catwalk/wd-8776

Many of the popular talks at the Scala eXchange featured live coding - and a great example of a brilliant live coding session was Mathias Doenitz's live coding demo on #Spray, showing how to use Spray to build REST/HTTP-based integration layers on top of #Akka. Matthias showed how easy it is to to send an HTTP request and receive HTTP responses on the client-side, write a low-level HTTP server as well as use the high-level routing DSL on the server-side to define a simple #REST API behavior. Watch Mathias "live" coding session here: http://skillsmatter.com/podcast/home/mathias-doenitz/wd-8776

Scala Macros were a very hot topic at ScalaX - and Eugene Burmako gave a really good introduction, explaining what #ScalaMacros are, and in what capacity the notion of compile-time metaprogramming can be useful to you, on a series of concrete use cases from research and industry. In the SkillsCast recording of Eugene's talk, you will see how #Slick #Play #Shapeless #Akka #Pickling #Async #Specs and others use macros and you will learn how to apply those techniques. You can watch a SkillsCast (film/code/slides) of Eugene's #ScalaX talk here: http://skillsmatter.com/podcast/home/what-are-macros-good-for/wd-8776

And Alexander Nemish talked about #JScala, a Scala macro that produces #JavaScript from #Scala code. Alexander used a fully working Tetris example (written in Scala with to JavaScript - very cool) to show JScala features. You can watch Alexander's talk here: http://skillsmatter.com/podcast/home/jscala-write-your-javascript-in-scala/wd-8776

Continuing the #JavaScript theme, Sebastien Doeraene gave a talk on Scala.JS and how to write Rich Internet Applications in Scala, enjoying all the Scala goodness, without sacrificing JavaScript interoperability. So if you like to learn how to write Scala for the browser, check out this SkillsCast recording (film/code/slides) of Sebastien's ScalaX talk here: http://skillsmatter.com/podcast/home/scala-js-write-in-scala-for-the-browser-4567/wd-8776

Finally, the brilliant(!) Fredrik Ekholdt gave a great talk on his project #Adept, providing a new dependency management system for the #JVM. Fredrik explained what Adept is, why you should care and how you can help him and the Adept team. So if you want to learn all about Adept, watch the skillscast recording of his talk here: http://skillsmatter.com/podcast/home/introducing-adept-4573/wd-8776

We finished a day with the Scala eXchange Panel discussion, whilst enjoying some beers and nibbles... it was a bit noisy, so the recording will need some work before it can be published... I wil post here once it is ready..

WISH YOU WERE THERE? JOIN US IN 2014 ON DECEMBER 8-9TH
Make sure to attend next year! 2014 has just been announced for December 8 and 9th in London – and next year Martin Odersky will join us to give a visionary keynote! Tickets are available already, and if you register by mid february, you can get a ticket for just £195 (+VAT)! So if you fancy joining a gathering of 500+ fellow developers passionate about Scala, Reactive Programming and all things Functional, check out next year's pages today! http://skillsmatter.com/event/scala/scala-exchange-2014/wd-8776

That's all I've got so far... find further updates here or on twitter #scalax I'll do a post on Day to of ScalaX soon!

Wendy
1
Add a comment...

Luke Hoersten
owner

Discussion  - 
 
I've created a new Chicago Haskell logo. Simple but hopefully effective.
1
Luke Hoersten's profile photoDavid Johnson's profile photo
6 comments
 
Niiice
Add a comment...
 
I've started a @ChicagoHaskell twitter account as another channel to broadcast event announcements and news. Let me know if there's anything you want posted! 
1
Add a comment...
 
 
We are please to announce the first Chicago Area Haskell Hackathon. 

What is as Hackathon? A Hackathon is basically just a bunch of people getting together and hacking on the Haskell code of their choice. It’s a great chance to meet other local Haskell hackers, discuss ideas, or just hack on code without other distractions.

The Hackathon is open to people of all ages, experience, genders, races, orientations, etc.

Never used Haskell before? We are going to kick things off with a ‘Get Started with Haskell’ session. Bring your laptop, and we’ll help you get Haskell installed and working and get your started on ‘Learn You a Haskell’ and other Haskell learning resources.

Jeremy Shaw has volunteered to host this Hackathon at his place. This means we can bring our own food and drink and not have to worry about staying at a coffee house or other business for too long.

You are highly encouraged to bring food, drinks, beer, etc. You can use the stove, oven, fridge, and propane grill if needed.

The address is:

1834 Ridge Ave #124
Evanston, IL
60201

Dial 124 on the callbox to get in. You can also send email to jeremy@n-heptane.com or call 619-301-7429. The callbox sometimes fails to get through on the first try, so call more than once if you get sent to voicemail.

Easily accessible via public transportation. Take the Purple Line or Metra and get off at the Davis stop. Head west towards Ridge. Cross over ridge and then head north 2-3 blocks on Ridge. 
ChiHack
Sat, November 9, 2013, 2:00 PM
1834 Ridge Ave #124, Evanston, IL 60201

1
Luke Hoersten's profile photoChetan Taralekar's profile photo
2 comments
 
Same. Loved it. 
Add a comment...

Reid Draper

Discussion  - 
 
Any of you going to Strange Loop this week?
1
Matthew Wraith's profile photoReid Draper's profile photo
2 comments
 
It's a conference in St. Louis: https://thestrangeloop.com/. Went last year, highly recommend for future consideration.
Add a comment...

Ryan Maus

Discussion  - 
 
Chicago Haskell group,

It's great to have more than 20 members already with only limited advertising.  Luke and I hail from the previous Haskell users group here in Chicago (circa 2009) and I'm happy to see that people are interested in resurrecting it.

This post is to make introductions and solicit feedback for what everyone wants this community to be.  Group projects, learning topics (theory, libraries & tools, etc), presentation topics & speakers, user project show'n'tell, and whatever else you can think of can be fielded for discussion.
1
Gavin Beatty's profile photoDavid Johnson's profile photo
6 comments
 
I've only recently moved to both functional programming and Chicago. I work by day with all the complexity of shared mutable state, so I'm most interested in parallelism, and pure/persistent data structures, but also fun small projects.
Add a comment...