Escher.jl - Functional Reactive Web without compiling to JavaScript

location_city Bengaluru schedule Sep 12th 01:30 - 02:15 PM place Grand Ballroom 2

Escher.jl is a Julia package designed to give anyone the power to create sophisticated web-based UIs that are driven by data on server and inputs from the user. Escher is based on the principles of denotative programming - denotations of UI components (called Virtual DOM nodes) are handed off to the browser to be rendered. The result is a framework that abstracts the capabilities of CSS, JavaScript and HTML elements into a single consistent library. Interaction in Escher is done via Reactive.jl - a port of Elm's signal library. In this talk I will explain the inner workings of this Signal library, and of Escher and show how all the pieces fit together to form a convenient functional framework for full-stack web development.


Outline/Structure of the Talk

- What is FRP

- Denotation

- Denoting a web page

- Signals

- Composable abstractions over JavaScript via web components

- Web application as an a signal graph

- Demonstrations of terse code

Learning Outcome

Learn about a new, effective way of programming web applications. Solidify understanding of Virtual DOM - a necessary device for functional programming on the web. Learn about how a signal framework works.

Target Audience

Web developers, FRP enthusiasts

schedule Submitted 4 years ago

Public Feedback

comment Suggest improvements to the Speaker

  • Liked Morten Kromberg

    Morten Kromberg / Jay Foad - Array Oriented Functional Programming with Dyalog

    480 Mins

    Dyalog is a modern, array-first, multi-paradigm programming language, which supports functional, object-oriented and imperative programming based on an APL language kernel. During the morning and early afternoon, Dyalog's functional language guru John Scholes will introduce the fundamentals of functional programming in APL. At the end of the day, Dyalog CTO Morten Kromberg will round off with an application development session, showing how a simple web application with a HTML5/JS front-end and a RESTful web service can be used to deliver the power of APL to end users, or as embeddable components for other application tools. The "hands on" sections of the workshop can be followed under Mac OS X, Linux, or Microsoft Windows.