scala

Recursos de programación de scala
Around the time React became popular, JS programmers started to get the idea that pure functional programming might be a good way to write web apps. Most of them still haven’t moved on to actual pure functional languages, even if a ton of ideas have filtered back down to them from platforms like Elm. But you can: Elm exists, and PureScript beyond that. Let’s review the state of the art: the Elm architecture, the core ideas of which lay the foundations for almost everything in the space, and how these ideas have been developed further in PureScript. We’ll look at some real, practical examples, but don’t worry, there will also be category theory. About Bodil: Born into an aristocratic Russian-German family, Bodil traveled widely around the Soviet Union as a child. Largely self-educated, she developed an interest in computer science during her teenage years. According to her later claims, in 1989 she embarked on a series of world travels, visiting Europe, the Americas, and India. She alleged that during this period she encountered a group of mathematical adepts, the ‘Haskell Language and Library Committee,’ who sent her to Glasgow, Scotland, where they trained her to develop her powers of category theory. Both contemporary critics and later biographers have argued that some or all of these foreign visits were fictitious, and that she spent this period writing JavaScript. Bodil was a controversial figure during her lifetime, championed by supporters as an enlightened guru and derided as a fraudulent charlatan by critics. Her doctrines influenced the spread of Homotopy Type Theory in the West as well as the development of Western computer science currents like dependent types, blockchains and isomorphic JavaScript. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
Adopting actors was a journey and some of our early assumptions would create issues later on. Slowly, we realized we had not fully embraced the let-it-crash philosophy, did not understand how the atomic nature of actors effects data sovereignty, or how parts of our application would have to be eventually consistent. In this talk, I will share some of our mistakes, how we arrived at those mistakes and how we eventually resolved them. I explore the reasoning behind our mistakes and the lessons we discovered, so hopefully you can recognize and avoid them. About Iain: Iain is a principal software engineer at Workday using Scala and Akka to deliver their next generation elastic grid. His twin passions are large scale distributed computing and applying clean code to complex problems. He is interested in good design and how this can improve system reliability and reduce friction during development. Follow https://www.twitter.com/IainHull for more on his work. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
Through some basic code samples not requiring deep theoretical background, Pascal will show how to build (in Scala) everyday-life program by pushing a bit further the good old separation of business logic description from execution. This will rely on basic Domain Specific Languages (DSL), combined using buzz-concepts like Free monads, Coproducts & monadic ‘onions’. Naturally, he’ll also demonstrate how to compile descriptions into effectual computations using interpreters. He’ll use OSS ‘Freek’ library developed in the context of Project September startup to help tame those creatures in a seamless way. Eventually, he’ll try to scratch a few deeper concepts like limitations, Free monads ‘transpiling’ & optimizations, compile-time optimization of Coproduct structure, SI-2712 patch etc… About Pascal: Pascal is a Senior Backend/Distributed systems developer at ‘Project September’ loudly advocating for Functional Programming languages, mathematical foundations & cuisine. Follow him at https://twitter.com/mandubian About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
The Typelevel fork of the Scala compiler has been reinvigorated by the recent community fix for SI-2712, a long-standing problem of type inference for projects which make extensive use of higher-kinded types. Thanks to newly arrived improvements in the compiler build process and SBT it is now dramatically easier to explore and work on compiler internals and use the results in existing Scala projects. Moreover, the experience over the last year of activity and collaboration between other Typelevel projects means that we have a clearer idea of what new language features and compiler bug fixes are really of value to the community. The combination of these developments has lowered the barriers to participation in compiler development and provided focus. In this talk, I will show what’s new in Typelevel Scala, explain how you can use it in your projects today, discuss the collaboration with the Scala team at Lightbend which is making this possible, and encourage you to get involved yourselves. About Miles Sabin: Miles has been doing stuff with Scala for more than twelve years, currently with Underscore Consulting. He is a co-founder of Typelevel and his best-known project, the Scala generic programming library shapeless, is the weapon of choice wherever boilerplate needs to be scrapped or arities abstracted over. Follow Miles at http://www.twitter.com/milessabin and http://www.underscore.io About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
When coming to Haskell from another programming language there are a lot of things that appear to be quite odd at first glance. One of these things is the non-strict evaluation strategy. Dreaded by some and loved by others, this might be one of the most controversial features of this programming language. In this talk, Raichoo will shed some light on the why and how of laziness and how GHC achieves it, as well as some interesting optimization techniques that the compiler performs to reduce some of the overhead that is introduced by it. About Raichoo: Raichoo has been fascinated by programming for nearly 25 years now and currently obsessed with functional programming, category theory, and type theory. He’s working in the industry using Haskell as one of his main programming languages to write everything from web-applications to parsers and compilers as well giving workshops about functional programming. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
Declarative, Convergent Edge Computation: An Approach for the Internet of Things Consistency is hard and coordination is expensive. As we move into the world of connected ‘Internet of Things’ style applications, or large-scale mobile applications, devices have less power, periods of limited connectivity, and operate over unreliable asynchronous networks. This poses a problem with shared state: how do we handle concurrent operations over shared state, while clients are offline, and ensure that values converge to a desirable result without making the system unavailable? We look at a new programming model, called Lasp. This programming model combines distributed convergent data structures with a dataflow execution model designed for distribution over large-scale applications. This model supports arbitrary placement of processing node: this enables the user to author applications that can be distributed across data centers and pushed to the edge. In this talk, we will focus on the design of the language and show a series of sample applications. About Christopher Meiklejohn Christopher Meiklejohn is a Software Engineer with Basho Technologies, Inc. where he focuses on building rich web applications for Riak using Erlang and JavaScript. Before joining Basho, he worked at Swipely, a loyalty program startup based in Providence where he maintained critical infrastructure components written in Ruby. Christopher is also a graduate student in computer science at Brown University in Providence RI, where he studies formal verification and distributed systems. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
About this talk: Many of us developers are still getting to grips with thinking in more functional terms. With the introduction of lambdas and streams in Java 8, functional thinking becomes more important, even in a language like Java. This presentation moves beyond slide-sized examples of recently-added Java 8 features, and to shows how to leverage things like lambda expressions and the streams API to build a fully working end-to-end application, using minimal external dependencies and the latest version of Java. In this session, Trisha will build an application that consumes a feed of high-velocity data, makes sense of it and presents results in a real-time JavaFX dashboard. Trisha shows how to design this application so that it’s split into small services (possibly micro-sized). Along the way, we’ll: create pipelines of aggregate operations, encounter lambda expressions and method references, discover new ways of working with collections and bump into the new date and time API. About Trisha Gee Trisha is a developer, technical advocate, and educator based in Spain and working remotely for JetBrains. She loves the combination of solving technical problems and working out the best way to teach other developers techniques that will make their lives easier. She is a leader of the Sevilla MongoDB and Java User Groups, and a key member of the London Java Community. In 2014, she became a Java Champion, and in 2015 a MongoDB Master. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
Idris is a functional programming language with dependent types, which supports ‘total’ functional programming. A function is total if, for all well-typed inputs, it gives either a complete result of a finite prefix of an infinite result, in finite time. Total functions give us strong guarantees about their behavior: for example functions can’t crash due to badly formed inputs, servers will always produce responses to requests. In this talk, I’ll show how Idris supports total programming, with a series of examples. As an extended example, I’ll show how to define a type for describing communicating concurrent systems which, by writing total functions, guarantees that concurrent programs will interact as intended. About Edwin: Edwin Brady is a Lecturer in Computer Science at the University of St Andrews, interested in type theory, dependently typed functional programming, compilers and domain-specific languages (DSLs). He is currently working on the implementation of DSLs for stateful, resource-aware programming, especially for correct network protocol design and implementation, using Idris, a dependently typed functional programming language. When he’s not doing that, you might find him playing Go (He’s about 1 kyu), walking up a hill, watching a game of cricket, or waiting for a delayed train. He also perpetrated the whitespace programming language. Follow @edwinbrady for more on his work and the book he alleges he’ll complete in 2038. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
You may be hearing a lot of buzz around functional programming. For example, Java 8 recently introduced new features (lambda expressions and method references) and APIs (Streams, Optional and CompletableFutures) inspired from functional ideas such as first-class functions, composition and immutability. However, what does this mean for my existing codebase? In this talk, we show how you can refactor your traditional object-oriented Java to using FP features and APIs from Java 8 in a beneficial manner. We discuss things like: - How to adapt to requirement changes using first-class functions. - How you can enhance code reusability using currying. - How you can make your code more robust by favoring immutability over mutability. - How you can reduce null pointer exceptions with Optional. About Raoul CEO & Co-founder of Cambridge Coding Academy, PhD Computer Science, Co-author of Java 8 in Action Raoul-Gabriel Urma is CEO and Co-Founder of Cambridge Coding Academy. He is also author of the bestselling programming book “Java 8 in Action” which sold over 15,000 copies globally. Raoul completed a PhD in Computer Science at the University of Cambridge. In addition, he holds a MEng in Computer Science from Imperial College London and graduated with first class honours having won several prizes for technical innovation. Raoul has delivered over 60 technical talks at international conferences. He has worked for Google, eBay, Oracle, and Goldman Sachs. He is also a Fellow of the Royal Society of Arts. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.
The Dialectics of Type-Level Programming; or How I Learned To Love Values by Aaron Levin About this talk: Can my compiler also compute? The answer is often an astounding yes. Programmers have taken advantage of their compiler's limited runtime to produce safer and more extensible code for decades. But what else can we build? In this talk, we explore how to use typeclass resolution in Scala and Haskell to coerce our compiler to compute as inspired by Shapeless, a Scala library for generic programming, and Servant, a Haskell library for declaring HTTP APIs as a type. Alas, paradise has its price. Is type-level programming a Monkey's Paw, Hairy Yak, or Golden Ticket? You decide! You can find the slides for this talk here: https://docs.google.com/presentation/d/18Ds5KT-QwuS_ZYKPMj2RK11B0V_vsv6oOpAtKjIF6Fs/edit #slide=id.p About Aaron Levin Mathematician and Software Engineer, Soundcloud I am a mathematician turned software engineer. I am excited by data-driven opportunities in environments that foster creativity, diversity, and innovation. I value openness, honesty, empathy, and egolessness. I am passionate about solving challenging problems in functional programming, data engineering, Haskell, machine learning, and distributed systems. About Lambda World: The 2016 Lambda World brought together Functional Programming enthusiasts from around the world for two days of presentations, hacking, networking, and a healthy dose of partying in Cadiz, Spain. Hosted by 47 Degrees, the event also featured a Typelevel Community Conference and a Scala Center Hackathon. Join in on the conversation at http://www.twitter.com/lambda_world and http://www.twitter.com/47deg using #LambdaWorld. Stay tuned to http://www.lambda.world and http://www.47deg.com for more on the conference and announcements for the 2017 event.