List of videos

Embedding of external DSLs in Scala: why and how! - Juan Manuel Serrano Hidalgo | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Sooner or later, you'll find yourself wanting to create your own domain-specific language or embed an external DSL into your functional language of choice. This presentation delves into the motivations behind this choice and offers practical guidance on how to achieve it. Specifically, it will demonstrate the implementation of the syntax, semantics, and type system of DSLs using the tagless-final style, along with some of the latest Scala 3 features: extension methods, match types, union types, polymorphic function types, structural types, macros, and more. Real-world examples will be drawn from the Scala embedding of the command-line JSON quer language, jq. Let's keep in touch! Follow us on: 💥BlueSky: https://bsky.app/profile/lambdadays.bsky.social 💥LinkedIn: https://www.linkedin.com/company/lambda-days 💥Facebook: https://www.facebook.com/lambdadays 💥Mastodon: https://genserver.social/codesync 💥Twitter: https://twitter.com/LambdaDays

Watch
SAFE Stack: The Pit of Success for Functional Web Programming - Isaac Abraham | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ The SAFE Stack is a free, open-source and flexible end-to-end, functional-first stack for cloud-ready web apps that emphasizes type-safe programming almost entirely in F#, without needing to compromise and shoehorn your codebase into an object-oriented framework or library, and without needing you to be an expert in CSS or HTML to create compelling, rich client-side web applications. This talk will demonstrate the value proposition behind it, illustrating how we can develop unified client/server apps that take the best features of F# - such as type safety, succinctness, productivity and performance - whilst still integrating naturally with technologies and frameworks such as ASP .NET and React. We'll create data-driven server-side APIs quickly and easily, and then surface them in a rich, responsive web application using .NET and JavaScript libraries that come together beautifully. Lastly, we'll see how easily SAFE apps can be hosted on a cloud platform. Let's keep in touch! Follow us on: 💥BlueSky: https://bsky.app/profile/lambdadays.bsky.social 💥LinkedIn: https://www.linkedin.com/company/lambda-days 💥Facebook: https://www.facebook.com/lambdadays 💥Mastodon: https://genserver.social/codesync 💥Twitter: https://twitter.com/LambdaDays

Watch
fast - grepping SQL code like a boss - Jônatas Paganini | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ I'd like to walk people through my latest adventures with fast: A search/refactoring tool that work as a regular expression language to target AST nodes. I built it originally for Ruby and now I'm also adding the support for SQL language. This talk will be a walkthrough in the AST and the searching engine. The idea is expose my little "functional" toy and walk people through the parser and how the matching system works. Later we'll see how to use the AST Tree Rewriter to refactor code based on AST elements. Let's keep in touch! Follow us on: 💥BlueSky: https://bsky.app/profile/lambdadays.bsky.social 💥LinkedIn: https://www.linkedin.com/company/lambda-days 💥Facebook: https://www.facebook.com/lambdadays 💥Mastodon: https://genserver.social/codesync 💥Twitter: https://twitter.com/LambdaDays

Watch
WasmRef-Isabelle: how to formally verify a not-slow interpreter... - Maja Trela | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Abstract WasmRef-Isabelle is a WebAssembly interpreter written in Isabelle/HOL verified to be sound with respect to the WasmCert-Isabelle mechanisation of WebAssembly. Its main improvement on both the existing verified interpreter included in WasmCert-Isabelle and even the official (but unverified) WebAssembly reference interpreter is in performance – in fact, thanks to that, the Wasmtime (one of the main WebAssembly implementations) team adopted it as their fuzzing oracle. So, how much direct effort does it take to achieve such a practical result in formal verification? Actually, not an insane amount. I'll talk about how we verified WasmRef-Isabelle as a two-step refinement proof, using the WasmCert-Isabelle interpreter as the springboard so to speak, in a single (one-year) master's thesis time. 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
Imagine a Dependently Typed Python - Andor Pénzes | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Abstract Envision a Python dialect that seamlessly combines user-friendly, optional, static types with the transformative capabilities of dependent types. Picture a world where functional and object-oriented programming coexist harmoniously, putting developers firmly in control, with the type system serving as a powerful ally. How daring can we be in pushing the boundaries and seamlessly integrating cutting-edge type theory advancements into the language? What challenges might arise with dependent types, and how can dynamically typed programming embrace this innovation? In collaboration with Thorsten Altenkirch, we've conceptualized a language designed to deliver an exceptional developer experience. Intrigued? Join us as we open a window into this parallel universe or glimpse the future of programming possibilities. 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
The Y Combinator: developing intuition around abstract recursion - Dave Kimber | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Abstract The Y Combinator is an elegant construct of the Lambda Calculus used to implement recursion. Unfortunately, it's so elegant, so abstract, and so succinctly expressed that it's quite difficult to understand how it works. In this talk, I will be guiding you through developing an intuition for its inner workings, looking at its practical applications, and hopefully shedding some light on why it is so beautiful. Working in Clojure and using some snazzy animations we will be looking into how the Y Combinator is evaluated into a dynamically generating infinite stack of function calls and how these then resolve into solutions to recursive problems. 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
Media streaming in the functional world - Mateusz Front | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Abstract Media streaming is usually associated with low-level, imperative languages. Yet, through the last few years, I've been leading the development of Membrane - the media streaming framework in Elixir. In this talk, I'll share the rationale behind our approach and how it turned out in practice. After quickly introducing you to the multimedia world, I'll discuss the benefits and challenges of bringing that world to Elixir and functional programming in general. 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
Cellular Automata for video games - Maciej Gorywoda | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Abstract The cell. The board. The neighbourhood. The rules. The loop. In this video I want to convince you that a lot of what we see in video games - and, by extension, in real life - can be split and modelled with those five concepts. And since we can do that, we can put it in code in the same, or at least very similar way. 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
The Power of Mentoring: Nurturing Growth in the IT Industry -hosted by Anna Miler | Lambda Days 2024

✨ This talk was recorded at Lambda Days in June 2024. If you're curious about our upcoming event, check https://lambdadays.org ✨ Abstract Join us for an engaging conversation where we’ll explore essential aspects of mentoring, particularly within the tech landscape. Mentoring is one of the most effective forms of supporting professional development. It allows you to create tailor-made solutions. What makes it increasingly popular and how you can benefit from it? We would like to talk about: * Technical and soft skills: how can mentors support mentees in developing technical and interpersonal skills? * Two-way learning: the mentor-mentee relationship as a mutual learning experience (including reverse mentoring). * Diversity and inclusion: how mentoring can address the unique challenges faced by underrepresented groups and help create an inclusive technology community. * Structured programs vs. informal mentoring: pros and cons of both ways of experiencing mentoring * Individual goal setting: how mentees' individual goals can align with organizational needs? If you have experience as a mentor or mentee and want to share it, join us. If you want to contribute another thread - let us know! 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