Skip to content

Commit d65f0aa

Browse files
committed
Stage 2 migration, yaml to HOCON with title
1 parent cdb3e25 commit d65f0aa

129 files changed

Lines changed: 930 additions & 2389 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/blog/2016-03-02-summit-philadelphia.md

Lines changed: 9 additions & 117 deletions
Original file line numberDiff line numberDiff line change
@@ -1,122 +1,14 @@
1-
---
2-
layout: event
1+
{%
2+
laika.html.template: event.template.html
3+
date: "2016-03-02"
4+
event-date: "March 2-3, 2016"
5+
event-location: "Hub's Cira Centre"
6+
tags: [summits, events]
7+
%}
38

4-
title: "Typelevel Summit Philadelphia"
5-
short_title: "Philadelphia Summit"
6-
date_string: "March 2-3, 2016"
7-
location: "Hub's Cira Centre"
8-
description: "One day of recorded talks and one day of unconference, co-located with NE Scala."
9+
# Typelevel Summit Philadelphia
910

10-
poster_hero: "/img/media/philly.jpg"
11-
poster_thumb: "/img/media/philly-thumb.jpg"
12-
13-
sponsors_section: true
14-
15-
schedule:
16-
- time: "8:30"
17-
title: "Registration"
18-
break: true
19-
- time: "9:00"
20-
title: "Opening Remarks"
21-
break: true
22-
- time: "9:10"
23-
title: "Becoming a cat(s) person"
24-
speakers: ["adelbertc"]
25-
summary: "Want to contribute to Cats? Let’s head over to the Cats Issues list and do some live coding! Along the way we will see how the codebase is organized, the various bits of automation provided, and how you can use our various channels to get feedback on your work."
26-
- time: "9:40"
27-
title: "Break"
28-
break: true
29-
- time: "9:55"
30-
title: "End to End and On The Level"
31-
speakers: ["davegurnell"]
32-
summary: "This talk answers the burning question 'Can I build a complete web service using solely Typelevel libraries?' In Scala we are spoiled for choice for web frameworks, database layers, JSON libraries, and a thousand other essential tools for application development. So much so, it's easy to become a victim of choice paralysis when starting a new project. There's so much choice, many developers favour groups of libraries that work well together. The Typesafe Reactive Platform (colloquially the 'Typesafe Stack'), is widely known as a set of interoperable libraries providing all the functionality required to build entire web applications without looking elsewhere. Enter Typelevel, endorsing a fleet of interoperable free/open source libraries providing all manner of functionality. The phrase 'Typelevel Stack' has been used frequently in the community, raising some intersting questions: Can we build complete web services using Typelevel libraries alone? What would that look like? What will the developer experience be like in terms of tooling, support, and documentation? In this talk, Dave will discuss his adventures building a web framework completely 'on the level', capturing thoughts on design, process, documentation, support, and community along the way."
33-
- time: "10:35"
34-
title: "Probabilistic Programming: What It Is and How It Works"
35-
speakers: ["noelwelsh"]
36-
summary: "Probabilistic programming is the other Big Thing to happen in machine learning alongside deep learning. It is also closely tied to functional programming. In this talk I will explain the goals of probabilistic programming and how we can implement a probabilistic programming language in Scala. Probabilistic models are one of the main approaches in machine learning. Probabilistic programming aims to make expressive probabilistic models cheaper to develop. This is achieved by expressing the model within an embedded DSL, and then compiling learning (inference) algorithms from the model description. This automates one of the main tasks in building a probabilistic model, and provides the same benefits as a compiler for a traditional high-level language. With the close tie of functional programming to mathematics, and the use of techniques like the free monad, functional programming languages are an ideal platform for embedding probabilistic programming."
37-
- time: "11:05"
38-
title: "Break"
39-
break: true
40-
- time: "11:20"
41-
title: "Introducing Typelevel Scala into an OO environment"
42-
speakers: ["dreadedsoftware"]
43-
summary: "Its difficult enough trying to introduce a new language into an established environment. This problem is compounded when the new language comes with a paradigm shift. This talk will detail one process which successfully introduced Functional Scala into an Object Oriented Java shop. The talk will explain how to bridge the OO-FP impedance mismatch when communicating ideas across project boundaries. The discussion will focus on migrating from Java style mutability, loops, get/set and coupling into Typelevel style immutability, combinators, case classes and type classes."
44-
- time: "12:00"
45-
title: "Efficient compiler passes using Cats, Monocle, and Shapeless"
46-
speakers: ["sellout"]
47-
summary: "Centered around a new standalone recursion scheme library (Matryoshka), this talk shows how to take advantage of various Typelevel projects to write many conceptually-independent data transformations, but have them efficiently combined into a small number of passes. Matryoshka also uses other Typelevel projects, including kind-projector and simulacrum."
48-
- time: "12:30"
49-
title: "Lunch Break"
50-
break: true
51-
- time: "14:00"
52-
title: "Keynote: Dependently-Typed Haskell"
53-
speakers: ["sweirich"]
54-
summary: "Is Haskell a dependently typed programming language? The Glasgow Haskell Compiler's many type-system features, such as Generalized Algebraic Datatypes (GADTs), datatype promotion, multiparameter type classes, type families, and more recent extensions give programmers the ability to encode domain-specific invariants in their types. Clever Haskell programmers have used these features to enhance the reasoning capabilities of static type checking. But how far have we come? Could we do more?"
55-
- time: "15:00"
56-
title: "Break"
57-
break: true
58-
- time: "15:20"
59-
title: "Evaluation in Cats: the Good, the Bad, and the Lazy"
60-
speakers: ["non"]
61-
summary: "A unique part of Cats' design is its Eval type. This type abstracts over evaluation strategies, and is the primary way to encode laziness in Cats APIs. It also includes a trampoline to allow safe, efficient implementations of algorithms that require laziness. Eval serves as a building block for other types, such as the Streaming data type and the Foldable type class. This talk will cover the basic design of Eval. It will walk through several different examples to help explain how the evalutation strategies work, cover some common pitfalls, and show off some interesting uses of laziness. It will also try to highlight some of the shortcomings of laziness in Scala, as well as alternate approaches."
62-
- time: "15:40"
63-
title: "Easy, intuitive, direct-style syntax for Monad-comprehensions!"
64-
speakers: ["cvogt", "clhodapp"]
65-
summary: "Easy, intuitive, direct-style syntax for monad comprehensions! Like Scala async or SBT .value, but generalized to any monad. Implemented, ready to be used and requiring only vanilla Scala 2.10/2.11 and blackbox macros. Future extensions could include automatic use of Applicative where possible, support for more embedded control-flow operations, comprehensions over multiple compatible monads at once for user-defined notions of compatible and compiler tweaks for syntactic improvements."
66-
- time: "16:00"
67-
title: "Scala Exercises"
68-
speakers: ["raulraja"]
69-
summary: "Scala Exercises is a web based community tool open sourced by 47 Degrees. It contains multiple koan and free form style exercises maintained by library authors and maintainers to help you master some of the most important tools in the Scala Ecosystem. Version 2 comes with a brand new backend and exercise tracking where you can login simply using your Github account and track your progress throughout exercises and libraries. Version 2 will launch with exercises for the stdlib, Cats, Shapeless and other well known libraries and frameworks part of the Scala ecosystem."
70-
- time: "16:15"
71-
title: "Break"
72-
break: true
73-
- time: "16:30"
74-
title: "From Simulacrum to Typeclassic"
75-
speakers: ["mpilquist"]
76-
summary: "Simulacrum simplifies development of type class libraries. It is used in a number of open source libraries, including Cats. In this talk, we’ll tour the features of Simulacrum, and look at the forthcoming Typeclassic project, which merges Simulacrum with complementary projects like machinist and export-hook."
77-
78-
sponsors:
79-
- name: "47 Degrees"
80-
logo: "/img/media/sponsors/47_degrees.png"
81-
link: "http://www.47deg.com/"
82-
type: "platinum"
83-
height: 100
84-
- name: "Underscore"
85-
logo: "/img/media/sponsors/underscore.png"
86-
link: "http://underscore.io/"
87-
type: "gold"
88-
height: 50
89-
- name: "Verizon"
90-
logo: "/img/media/sponsors/verizon.png"
91-
link: "http://www.verizonwireless.com/"
92-
type: "gold"
93-
height: 50
94-
- name: "Lightbend"
95-
logo: "/img/media/sponsors/lightbend.png"
96-
link: "https://www.lightbend.com/"
97-
type: "silver"
98-
height: 60
99-
- name: "MediaMath"
100-
logo: "/img/media/sponsors/mediamath.png"
101-
link: "http://www.mediamath.com/"
102-
type: "silver"
103-
height: 100
104-
- name: "Comcast"
105-
logo: "/img/media/sponsors/comcast.png"
106-
link: "http://www.comcast.com/"
107-
type: "silver"
108-
height: 70
109-
- name: "Box"
110-
logo: "/img/media/sponsors/box.png"
111-
link: "http://www.box.com/"
112-
type: "silver"
113-
height: 50
114-
- name: "Scotiabank"
115-
logo: "/img/media/sponsors/scotiabank.png"
116-
link: "http://www.scotiabank.com/"
117-
type: "silver"
118-
height: 40
119-
---
11+
![Typelevel Summit Philadelphia](/img/media/philly.jpg)
12012

12113
## About the Summit
12214

0 commit comments

Comments
 (0)