List of videos

Gradualize your language with set-theoretic types - Guillaume Duboc | Lambda Days 2024

✨ This lightning talk was recorded at Lambda Days 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ In this session, we'll explore the practical representation of gradual set-theoretic types for Elixir. We'll demonstrate how this implementation shifts a lot of complexity from the type-checker to the type representation itself. Key points include: - Practical applications: Representing disjoint unions of base types and progressive integration of singleton types. - Addressing challenges: Strategies for handling pretty-printing and type simplifications. - Focus on dynamic: Illustrating its elegant representation through set-theoretic types in Elixir, and the distinction between static, dynamic, and gradual types. The presentation showcases a general structure demonstrated through Elixir examples, but which can be used to accommodate other languages. Let's keep in touch! Follow us on: 💥Twitter: https://twitter.com/LambdaDays 💥LinkedIn: https://www.linkedin.com/company/lambda-days 💥Facebook: https://www.facebook.com/lambdadays 💥Mastodon: https://genserver.social/codesync

Watch
Haskell is just the beginning- a Lightning Talk by Christoffer Ekeroth | Lambda Days 2024

✨ This lightning talk was recorded at Lambda Days 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Let's keep in touch! Follow us on: 💥Twitter: https://twitter.com/LambdaDays 💥LinkedIn: https://www.linkedin.com/company/lambda-days 💥Facebook: https://www.facebook.com/lambdadays 💥Mastodon: https://genserver.social/codesync

Watch
What's cooking in GRiSP - a Lightning Talk by Peer Stritzinger & Gwendal Laurent | Lambda Days 2024

✨ This lightning talk was recorded at Lambda Days 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Let's keep in touch! Follow us on: 💥Twitter: https://twitter.com/LambdaDays 💥LinkedIn: https://www.linkedin.com/company/lambda-days 💥Facebook: https://www.facebook.com/lambdadays 💥Mastodon: https://genserver.social/codesync

Watch
Sound on BEAM Music in the Land of Distributed Lisp - Duncan McGreggor | Lambda Days 2021

This video was recorded at the virtual Lambda Days conference, which took place on 16-19th February 2021 - https://www.lambdadays.org/lambdadays... More great virtual tech conferences - https://codesync.global​ --- Sound on BEAM Music in the Land of Distributed Lisp by Duncan McGreggor ABSTRACT While not built for sound or digital signal processing, Erlang excels in the realm where music control systems have converged: network message-passing. In this talk, Duncan will provide some background on the functional nature of electronics used in music, with a special focus on analog synthesis a la Moog modular systems. Previous sound-generation work on the BEAM will be covered before diving into a new effort along similar lines being made in Lisp Flavoured Erlang (LFE). Practical issues with integrating multiple well-established improvisational tools and music recording systems with a functional programming language will be covered. In addition, LFE's strength as a platform for creating DSL's will be discussed in the dual context of integrating systems and creating generative music. --- SPEAKER - Duncan McGreggor Duncan started hacking in the early 80s on copies of the BSD games, was a linguist in the 101st Airborne Division, studied physics and applied maths at university, traveled to India to practice meditation and dialectic with monks in exile, and eventually joined a startup just before the Internet crash in 1999/2000. Somehow, that did not deter his life-long passion for programming: he started hacking on small, distributed services in the early 2000s, eventually became a Fellow at the Python Software Foundation, joined Robert Virding as a contributor to LFE, and coded in another Lisp for the USGS (LANDSAT data) and then NASA. Duncan is currently a principal engineer at MediaMath, dedicated to building better engineering teams and software engineering practices while also teaching new generations of engineers a love for the art. --- Lambda Days Website: https://www.lambdadays.org​ Twitter: https://twitter.com/LambdaDays​

Watch
Adventures in the browser and Node js without writing (...) - Susan Potter | Lambda Days 2021

This video was recorded at virtual Lambda Days conference, which took place on 16-19th February 2021 - https://www.lambdadays.org/lambdadays2021 More great virtual tech conferences - https://codesync.global​ --- Adventures in the browser and Node.js without writing (much) JavaScript (using PureScript) by Susan Potter ABSTRACT PureScript is an expressively typed purely functional programming language heavily inspired by Haskell yet with some key differences. Some of these differences make it more practical for web developers to exploit the Node.js and web browser ecosystems without sacrificing algebraic data types and common functional abstractions found in Haskell. We will explore through examples some of these language and ecosystem (library) differences with Haskell to see how they impact web development ergonomics and onboarding as well as describing PureScript's similarities to Haskell to contrast with TypeScript using functional libraries like fp-ts based on our experiences with all three. --- SPEAKER - Susan Potter Susan is a functional programmer working as a software engineer, architect, and hands-on manager. Over the last two decades, she has also worked on algorithmic trading systems, market data software, multi-tenant service-oriented architecture, and continuous delivery pipelines that make teams more productive. --- Lambda Days Website: https://www.lambdadays.org​ Twitter: https://twitter.com/LambdaDays​

Watch
Generating Programs from Types | Nadia Polikarpova | Lambda Days 2021

This video was recorded at virtual Lambda Days conference, which took place on 16-19th February 2021 - https://www.lambdadays.org/lambdadays... More great virtual tech conferences - https://codesync.global --- Introducing Nx by Nadia Polikarpova ABSTRACT Program synthesis is a promising approach to automating low-level aspects of programming by generating code from high-level declarative specifications. But what form should these specifications take? In this talk I will advocate for using types as input to program synthesis. Types are widely adopted by programmers, they can vary in expressiveness and capture both functional and non-functional properties, and finally, type checking is often fully automatic and compositional, which helps the synthesizer find the right program. I will describe two type-driven program synthesizers we developed. The first one is Synquid, a synthesizer for recursive functional programs that uses expressive refinement types as a specification mechanism. The second one is Hoogle+, which relies on more mainstream Haskell types and generates code snippets by composing functions from Haskell libraries. --- SPEAKER - José Valim Nadia Polikarpova is an assistant professor at UC San Diego, and a member of the Programming Systems group. She received her Ph.D. in Computer Science from ETH Zurich in 2014, and then spent a couple years as a postdoctoral researcher at MIT. Nadia's research interests are in program synthesis, program verification, and type systems. She is a 2020 Sloan Fellow, and a recipient of the 2020 NSF Career Award and the 2020 Intel Rising Stars Award. --- Lambda Days Website: https://www.lambdadays.org Twitter: https://twitter.com/LambdaDays

Watch
Multicloud bindings from web page | Michał J. Gajda | Lambda Days Virtual 2021

This video was recorded at Lambda Days Virtual 2021 - https://www.lambdadays.org/lambdadays2021 Multicloud bindings from web pages | Michał J. Gajda, Science-based solutions ABSTRACT We address a practical problem of inter-language interoperability with cloud APIs from different vendors with HTML documentation and REST calling conventions. We solve this problem, by providing implementing a retargetable cloud application programming interface (API) binding generator. The code for the proposed API is implemented in Haskell, utilising type classes, types a la carte, and a code generation monad (design pattern). It also targets Haskell and allows binding cloud APIs on a short notice and an unprecedented scale. We also note that it significantly decreases maintenance issues with large cloud API bindings due to decreased code-base. • Follow us on social: Twitter: https://twitter.com/LambdaDays LinkedIn: ttps://www.linkedin.com/company/lambda-days • Looking for a unique learning experience? Attend the next Lambda Days conference! See what's coming up at: https://www.lambdadays.org • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Dynamic Creation of Well Typed DSL Expressions | Pieter Koopman | Lambda Days 2021

This video was recorded at Lambda Days Virtual 2021 - https://www.lambdadays.org/lambdadays2021 Dynamic Creation of Well Typed DSL Expressions | Pieter Koopman ABSTRACT Interactive systems can require complex input from their users. A grammar specifies the allowed expressions in such a Domain Specific Language, DSL. An algebraic DataType, ADT, is a direct representation of such a grammar. For most end-users a structured editor with pull-down menus is much easier to use than a free text editor. The iTask system can derive such structured editors based on an ADT using datatype generic programming. However, the input DSL has often also semantic constraints, like proper use of types and variables. A solution is to use a shallow embedded DSL or a DSL based on a Generalized ADT to specify the input. However, such a specification cannot be handled by datatype generic programming. Hence, one cannot derive structured editors for such a DSL. As a solution, we introduce structured web-editors that are based on dynamic types. These dynamic types are more expressive; they can express the required DSL constraints. In the new dynamic editor library we need to specify just the dynamic relevant for the DSL. The library takes care of displaying the applicable instances to the user and calls itself recursively to create the arguments of the dynamic functions. In this paper we show how this can be used to enforce the requires constraints on ADTs, to create structured web-editors for shallow embedded DSLS, and to create those editors for GADT based DSLs. • Follow us on social: Twitter: https://twitter.com/LambdaDays LinkedIn: ttps://www.linkedin.com/company/lambda-days • Looking for a unique learning experience? Attend the next Lambda Days conference! See what's coming up at: https://www.lambdadays.org • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Fast XML HTML for Haskell XML TypeLift | Michał J. Gajda | Lambda Days 2021

This video was recorded at Lambda Days Virtual 2021 - https://www.lambdadays.org/lambdadays2021 Fast XML HTML for Haskell XML TypeLift | Michał J. Gajda, Science-based solutions ABSTRACT We presents and compares a range of parsers with and without data mapping for conversion between XML and Haskell. The best performing parser competes favorably with the fastest tools available in other languages and is, thus, suitable for use in large-scale data analysis. The best performing parser also allows software developers of intermediate-level Haskell programming skills to start processing large numbers of XML documents soon after finding the relevant XML Schema from a simple internet search, without the need for specialist prior knowledge or skills. We hope that this unique combination of parser performance and usability will provide a new standard for XML mapping to high-level languages. • Follow us on social: Twitter: https://twitter.com/LambdaDays LinkedIn: ttps://www.linkedin.com/company/lambda-days • Looking for a unique learning experience? Attend the next Lambda Days conference! See what's coming up at: https://www.lambdadays.org • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch