Attended LambdaConf 2015 in Boulder!
by Yuji Yamamoto on May 26, 2015
※日本語版も書きました。
I attended LambdaConf 2015, held from May 22 to May 24.
What I learned
I took (or planned to take) part in these sessions among the various and interesting others.
I tell their summary and my impression only for ones I could watch without sleeping.
(I feel regret and sorry but I sufferred from jet lag…)
Day 1
- Write Some Idris
- Introduction to Idris. And introduction to dependent types for me.
- Interesting but very difficult perhaps because I couldn’t hear the details. In the intervals of exercises, I guessed some answers of undone exercises and tried to tinker the sample codes, but in vail.
- Developing Web Applications with Haskell
- Learned from building HTML (with shakespeare), routing (with Spock), ORM (with persistent), to form validation (with digestive-functors).
- I had fun and understood very well. Because I knew a bit about the theme before this and Alejandro’s voice was clear and loud enough.
- But I couldn’t do most of the exercises because I was almost always cabal-install-ing in each exercise’s sandbox…. I should have prepared sandboxes in better way.
- A Practical Introduction to Haskell GADTs
- Well, as I remember, about implementing dependent types with GADTs, maybe.
- I felt bad and extremely sleepy by jet lag before exercise 2. I’m sorry that I couldn’t use glambda though I compiled in the early morning.
- LiquidHaskell: Refinement Types for Haskell
- As its title, tutorial of LiquidHaskell.
- The only part I saw was the last; I was sleeping from the previous session on.
- But even the last part (maybe the case study) made me impressed with the power of LiquidHaskell. So I’ll review the book (the above link).
Day 2
- Pattern Functors: Wandering Around Fix-points, Free Monads and Generics
- Give me Freedom or Forgeddaboutit: What Does “Free” Really Mean?
- Free is free because it converts a Functor into a Monad for free, as List converts any Hask object into a Monoid.
- Actually, List and Free is similar in their structures.
- The speaker and slide must have said more, but only I could understand is that.
- I’ve been learning category theory since preparing for a workshop of Monad (Japanese). But I could understand little of them.
- Finally Tagless DSLs and MTL
- Accelerating Haskell: GPGPU Programming with Haskell
- Introduction to GPGPU and accelerate, provides an easy way to use GPGPU in Haskell.
- I heard about accelerate in Parallel and Concurrent Programming in Haskell, but never used. So I’d be glad if I have a nice workshop to learn… (actually I wouldn’t use it voluntarily. Because I don’t think I should use it so far…).
- In Rust We Trust
- About attractions of Rust, Mozilla’s programming language.
- Things I got impressed with were:
- Memory management by ownership (with neither GC nor runtime!). Sounded like linear type to me.
- Default immutability.
- Support of combinators I (as a functional programmer) am familiar with (e.g. map, filter, take_while).
- Introduction to Intuitionistic Type Theory
- Introducing Emily: Simplifying Functional Programming
- In Emily, all is access to an object like JavaScript’s one. Even assignment expression (such as
a = 123
) is a syntactic sugar ofset
method of a scope object. - It sounded like Lisp based on JavaScript’s object to me (I don’t know how similar it is actually). Interesting.
- In Emily, all is access to an object like JavaScript’s one. Even assignment expression (such as
- The Next Great Functional Programming Language
- John (seems the leader of LambdaConf 2015) told us many features of his ideal language (of cource most of them must be jokes) by criticizing various features and bad points of today’s languages.
- All people in the hall discussed most actively in the day, and then prolonged the session very well. They looked very fun :)
Day 3
- An Adventure in Elm: Writing an Adventure Game in Elm
- Tutorial of Elm.
- I’m glad to use Elm for the first time even though I declared “Do Elm from today!” in the previous post (in Japanese)
- The speaker Joe Nash was so kind that many audience (including me) asked questions comfortably.
- Elm was easy and powerful for me as I expected. I wish to use more….
What I did
Besides sessions about functional programming, we enjoyed hiking in LambdaConf 2015!
As the photos above show, Boulder is surrounded mountains. I saw beautiful mountains from everywhere. Then of cource it’s near from hiking trails. So we hiked there with the leader of LambdaConf, John.
And as LambdaConf 2015’s intro says,
people in Boulder held a festival around the downtown.
It seems John intentionally scheduled LambdaConf 2015 for those days, to make us have fun with Boulder more!
I think it’s really nice idea, I found and felt John’s love toward Boulder strongly.
And in the festival, I played bungee-jumping without string for the first time from there!
What I didn’t
I did want to give some lightning talks in LambdaConf 2015, but I missed the chance in the unconference.
I wanted to show my opinion about Monad, as well as to introduce apiary.
So let me publish one set of the slides:
Of cource I uploaded onto Slideshare:
I’ll publish the one about apiary if I remember to complete :)
Thanks to all!
Finally, I want to say thank you to many people who guided me to this fantastic conference.
Including people who held, gave sessions, attended with me, accommodated me or any others!
Thank you! <3<3<3