Web Apps, Concurrency and Compilers

Details
We have three very interesting talks lined up in this meetup covering audiences from beginners to advanced Haskellers. Each talk is of 45 minutes duration and 15 minutes additional for Q & A and discussions. The topics are as follows:
- "Web Programming in Haskell using Yesod (https://www.yesodweb.com/)" by Sibi Prabakaran
Sibi (http://psibi.in/) is an experienced Haskeller, he has been using Haskell at work and contributing to various open source projects including Yesod, a Haskell web programming framework. He will be talking about the basics of web programming in Haskell, and building web applications using Yesod and deploying them.
Learning Resources: All about it (https://www.yesodweb.com/)
- "Introducing Streamly, a Concurrent Streaming Framework (https://github.com/composewell/streamly)" by Harendra Kumar
Harendra is a passionate Haskeller, a pure functional programming advocate, and contributor to several open source Haskell projects. For past many months he has been building a high level concurrent programming framework unifying concurrency, streaming and functional reactive programming (FRP). In this talk he will discuss the motivation behind it and how you can program concurrently without ever knowing about threads, forks, synchronization or locks. The repository is open to contributions at github under BSD3 License (https://github.com/composewell/streamly), the package is also available on hackage (https://hackage.haskell.org/package/streamly).
Learning Resources: Quick Primer (https://github.com/composewell/streamly), Comprehensive Tutorial (https://hackage.haskell.org/package/streamly-0.1.0/docs/Streamly-Tutorial.html)
- "An Experience Report on Using LLVM with Haskell" by Jaseem Abid
Jaseem spent the summer tinkering with LLVM Haskell bindings (llvm-hs (https://hackage.haskell.org/package/llvm-hs)) by Stephen Diehl et al. at the recurse center (https://www.recurse.com/). He will talk about the good, the bad, and the ugly parts of llvm-hs. Specifically, the challenges around designing a functional API over LLVM, design trade-offs, dilemmas, and believe it or not, a cool trick to segfault GHC. If time permits he will also talk about nanopass compilers in Haskell, a glimpse of the unique and interesting challenges it poses and how it relates to his work.
Pre-requisites:
It will be great if you are already familiar with Haskell basics. Absolute beginners can go through https://haskell-lang.o... (https://haskell-lang.org/documentation) for getting started and documentation. Specifically, install the Haskell tool stack, which will install everything else (compiler and dependencies) needed. Play with it, write some simple programs or play with Haskell expressions in GHCi, the interactive REPL.
Also go through the learning resources mentioned under the talk descriptions above. It will be great if you can bring along your laptops with Haskell tool stack installed so that you can try the examples in real time.

Web Apps, Concurrency and Compilers