Skip to content
This event was canceled
MonadLibre v2016

Details

http://photos3.meetupstatic.com/photos/event/1/7/3/6/600_450185942.jpeg

Merchise Startup Circle (http://www.merchise.com/) is delighted to organize the first annual MonadLibre (http://www.monadlibre.com/) conference, an event gathering people passionate about functional programming. We hope to bring together leading practitioners and researchers on all things functional with the Cuban developer community, for an informal forum of deep technical insight and inspiration.

More than just a conference, MonadLibre is also a place where faraway travellers can come to make new friends, share experiences and find renewed hope for writing better software. All Merchise's events are crafted for and with our Cuban community, people who are passionate about learning innovative approaches and technologies to crack the engineering challenges in our industry. People like you!

The first MonadLibre conference will take place from August 10 to 12, three action-packed days of workshops, talks and activities. Merchise Startup Circle warmly invite you to join us in Havana for #MonadLibre (https://twitter.com/hashtag/monadlibre?src=hash) 2016 and to connect with our friendly community in Cuba.

Whilst some well-known experts have already agreed to share their ideas at this year's MonadLibre, we are still open for proposals from you. Sessions may be given in the form of a talk or a workshop. Would you like to share your Functional Programming experience? We'd love to see you featured on this August's program! Please contact us at monadlibre@merchise.com

Stay tuned (http://twitter.com/merchise) for updates on the event schedule and venue!

This is a free event!

----------------------------------

Sessions confirmed so far:

Bartosz Milewski (https://twitter.com/BartoszMilewski) – Parallel and Concurrent Haskell [talk]

Overview of how Haskell deals with parallelism and concurrency: Eval monad, Par monad, Repa, Accelerate, threads, MVars, STM…

Edward Kmett (https://twitter.com/kmett) – Propagators [talk]

Eventually your web application or micro-service has to compute something. We'll explore a fairly powerful framework that subsumes a lot of previous kinds of solvers for different problem domains.

There are a lot of algorithms that revolve around iterating a form of information propagation until it attains a deterministic fixed point. CRDTs, Datalog, SAT solving, functional reactive programming, and constraint programming all fit into this mold.

One framework for these sorts of algorithms is the notion of a “propagator” due to Sussman and Radul, but until now little rigor has applied to know how such algorithms terminate with consistent results. Another framework is Lindsey Kuper’s work on the notion of “lattice variables” (LVars), which addresses termination, parallelism and eventual consistency well, but not iteration.

By blending these frameworks, I’ll build up a series of sufficient conditions for propagators to terminate with consistent results and proceed to show how we can use this common framework to steal insights and quirks from each individual domain to try to optimize the rest.

Richard Minerich (https://twitter.com/rickasaurus) - DSLs in F# [talk]

DSLs enable to you to capture the essence of a problem, guiding you to a solution, and drastically increasing code clarity. Functional languages are ideal for writing DSLs because they offer many tools for modeling your problem and give you the syntactic freedom to capture it in the way you see fit. Type-inferred functional languages give an additional benefit, letting you define your DSLs so that it is difficult or impossible to define your inputs incorrectly. In this talk I will walk you through different kinds of DSLs in F#, and show you the language features that were used in defining each of them.

Richard Minerich (https://twitter.com/rickasaurus) - Entity Resolution in F# [workshop]

Hannes Mehnert (https://twitter.com/h4nnes) - MirageOS - clean-slate robust operating system design [talk]

Contemporary operating systems suffer from being enormous code bases, riddled with bugs, still supporting legacy hardware (like floppy drives). A common attack vector is based on unsafe memory operations - lack of bounds checks (buffer overflows) and temporal memory safety violations (double free, use after free).

But the environment changed: for security reasons, each service is usually isolated in its own virtual machine, and the virtual machines are scheduled by the hypervisor onto the physical hardware. The requirements for operating systems changed, but most operating systems are only extended to support more complex environments.

In this talk I will present a radical approach to operating systems design: back to ring 0, starting from scratch. Programming language technology has progressed since UNIX was written in C, automated memory management is widely used, strong and static types are usable, and we learned how to build reusable libraries and package those.

MirageOS is a library operating system written mostly in OCaml, a functional and modular programming language. It targets hypervisors, thus does not contain hardware-specific drivers, but generic drivers (e.g. a VirtIO network driver). Each MirageOS application consists of only those OCaml libraries required - why should my name server have user management and a file system? The lines of code, and thus the attack vectors, are drastically reduced. We already implemented various common network protocols, such as HTTP, TCP/IP, TLS, DHCP.

I will explain the design and implementation of our TLS stack in more detail, which separates the effectful bits from the protocol logic very clearly, while preserving reasonable performance.

Links of interest:

raichoo (https://twitter.com/raichoo) - An X-Ray on GHC[talk]

Haskell is a high level language, in fact it is so high level that it can be hard to wrap your head around what is actually going on on the machine. While this is quite liberating, the curious of us might not be satisfied with this. Let me take you on a ride and show you GHC and Haskell through the eyes of a Hacker. We will take a look at how Haskell code gets compiled to machine code, what optimizations GHC can do for us and some of the more advanced language extensions like GADTs inner workings.

----------------------------------

About the speakers:

Bartosz Milewski

http://photos1.meetupstatic.com/photos/event/e/a/1/d/600_450239933.jpeg

Software designer and developer, more of an architect and a visionary. Has a Ph.D. and did research in Quantum Physics before switching to programming. Experience in almost every aspect of software design and implementation.

Development lead at Microsoft, designing and implementing the Content Index – a search engine before its time. Founded Reliable Software, the maker of a distributed version control system, which he designed and developed with a team of C++ programmers.

Software Architect at FP Complete, where he created the School of Haskell, a site for publishing content with runnable and editable snippets of Haskell code.

Involved in the design and implementation of the D programming language and its support for concurrency (together with Walter Bright and Andrei Alexandrescu).

Edward Kmett

http://photos3.meetupstatic.com/photos/event/1/1/2/2/600_450184386.jpeg

Spent most of his adult life trying to build reusable code in imperative languages before realizing it was building castles in sand. Converted to Haskell in 2006 while searching for better building materials. Now chairs the Haskell core libraries committee, collaborates with hundreds of other developers on over 200 projects on github, builds tools for quants and traders using the purely-functional programming-language Ermine he designed for S&P Capital IQ, and is obsessed with finding better tools.

  • Vice President @ haskell.org, Inc.

  • Community outreach to the Haskell and Scala communities. Chairs the Haskell core libraries committee, runs Boston Haskell, sits on the committee and runs the Google Summer of Code for https://haskell.org/, and maintain over 100 open source projects that are beneficial to both the open source community at large and S&P Capital IQ in particular, including the "monad transformer library" for Haskell and helps maintain "scalaz" the standard library for functional programming in Scala.

  • Designed and implemented the lazy, pure Haskell-like functional programming language Ermine in both Scala and Haskell for use in report generation inside of ClariFI and the larger Capital IQ ecosystem.

  • Sr. Software Engineering Lead @ S&P Global Market Intelligence

  • Managed the software engineering team @ SM&A.

  • Lead Software Engineer @ SM&A Tech Team Services

Richard Minerich

http://photos1.meetupstatic.com/photos/event/1/1/2/5/600_450184389.jpeg

  • Software Architect @ Atalasoft (2007 - 2010)

  • Director of R+D @ Bayard Rock (2010 - Present)

Research and development toward enhanced Entity Resolution and Data Visualization in the context of Politically Exposed Persons identification, Anti-Money Laundering and Fraud Detection.

  • Created the Barb programming language. Barb is a pure functional programming language designed around writing simple predicate filters for data inspection and machine learning features.

  • F# MVP @ Microsoft MVP Program

  • Brainstormed extensively with Stephen Hawley on his Hough Transform research. Named on the corresponding patent.

Hannes Mehnert

http://photos3.meetupstatic.com/photos/event/4/7/e/3/600_451878403.jpeg

Hannes Mehnert is currently a PostDoc at the University of Cambridge.

In his spare time, he is not only a hacker, coauthor of a book on indian cuisine and functional programming in JavaScript, but also a barista and likes to travel with and repair his recumbent bicycle.

He researches in several engineering areas: from programming languages (such as compiler optimisation visualisation and type systems) over full functional correctness proofs of object-oriented code, development environments for dependently typed languages, to re-engineering network protocols (TCP/IP) and security protocols (TLS, OTR). He feels safe in a garbage collected environment, and appreciates the expressive power of declarative purely functional code.

Websites:

raichoo

http://photos3.meetupstatic.com/photos/event/3/5/600_450240053.jpeg

raichoo has been programming for about 25 years. Most of that time he spent writing C++ until he discovered Haskell in 2009 and slowly descended into the world of functional programming. He is now working in the industry where Haskell is his primary programming language.

raichoo is also the original author of the JavaScript backend of Idris and the haskell-vim mode for the Vim text editor. He's also deeply fascinated by category theory.

----------------------------------

Sponsorship Opportunities:

Lambda package :: λ sponsor

Reach the #MonadLibre community! Your 5min video shown on our screens between conferences

Your own dedicated page on http://merchise.com/sponsors/

Your logo (large) on all in-venue #MonadLibre banners

Your logo (large) on all #MonadLibre web pages

Pre-roll 5s ads on our video updates, your logo (large) shown on our (5s) end-screen

Visibility of your brand and your support for #MonadLibre in regular social media updates.

Your logo (small) printed on all #MonadLibre swag bags

Your sponsored message with hot linked logo in the #MonadLibre newsletter

Two items included in all #MonadLibre swag bags, plus a t-shirt with your logo included

Alpha package :: α sponsor Reach the #MonadLibre community! Your 2min video shown on our screens between conferences

Your own dedicated page on http://merchise.com/sponsors/

Your logo (medium) on all in-venue #MonadLibre banners;

Your logo (medium) on all #MonadLibre web pages

Your logo (medium) included on our video updates’ (5s) end-screen

Visibility of your brand and your support for the #MonadLibre in regular social media updates.

Your sponsored message with hot linked logo in the #MonadLibre newsletter

One item included in #MonadLibre swag bags;

Beta package :: β sponsor Your logo (small) on http://merchise.com/sponsors/ linking to your website

Your logo (small) on all in-venue #MonadLibre banners

Your logo (small) on the #MonadLibre web pages;

Your brand mentioned in leaflet of the event

Gamma package :: γ sponsor Your logo (small) on http://merchise.com/sponsors/ linking to your website

Your logo (small) on the #MonadLibre web pages;

Your brand mentioned in leaflet of the event

To discuss sponsorship opportunities please contact us: monadlibre@merchise.com

Photo of Merchise Startup Circle group
Merchise Startup Circle
See more events

Canceled