Elm - Functional Reactive Programming Language compiles to Javascript

  •        542

Elm is a functional reactive programming (FRP) language that compiles to HTML, CSS, and JS. FRP is a concise and elegant way to create highly interactive applications and avoid callbacks. It aims to make web development more pleasant. Functional Reactive Programming (FRP) is a high-level way to work with interactions. It provides control flow structures for time.

http://elm-lang.org/

Tags
Implementation
License
Platform

   




Related Projects

reflex - Reflex FRP is a composable, cross-platform functional reactive programming framework for Haskell

  •    Haskell

Reflex is an fully-deterministic, higher-order Functional Reactive Programming (FRP) interface and an engine that efficiently implements that interface. Reflex-DOM is a framework built on Reflex that facilitates the development of web pages, including highly-interactive single-page apps.

reflex-dom - Reflex FRP is a composable, cross-platform functional reactive programming framework for Haskell

  •    Haskell

Reflex-DOM is a framework for building web applications in Haskell, based on the Functional Reactive Programming library Reflex. Comprehensive documentation is still a work in progress, but a demo is available and an introductory talk is available at Part 1 / Part 2 (Slides).

turbine - Purely functional frontend framework for building web applications

  •    TypeScript

A purely functional frontend framework based on functional reactive programming. Experimental. The JavaScript world is full of frameworks. So why another one? Because we want something different. We want something that is purely functional without compromises. Something that takes the best lessons from existing JavaScript frameworks and couples them with the powerful techniques found in functional languages like Haskell. We want a framework that is highly expressive. Because when functional programming is at its best it gives you more power, not less. Turbine is supposed to be approachable for typical JavaScript developers while still preserving the benefits that comes from embracing purely functional programming.

Interstellar - Simple and lightweight Functional Reactive Coding in Swift for the rest of us

  •    Swift

The simplest Observable<T> implementation for Functional Reactive Programming you will ever find. This library does not use the term FRP (Functional Reactive Programming) in the way it was defined by Conal Elliot, but as a paradigm that is both functional and reactive. Read more about the difference at Why I cannot say FRP but I just did.


reflex-platform - Reflex FRP is a composable, cross-platform functional reactive programming framework for Haskell

  •    Nix

The Reflex Platform is a collection of libraries and tools that are useful for developing and deploying Reflex-based applications. To get started with Reflex development, follow the instructions below.

reactive-banana - Library for functional reactive programming in Haskell.

  •    Haskell

Reactive-banana is a library for Functional Reactive Programming (FRP), written in Haskell. See the project homepage for documentation, examples and so on.

bacon.js - FRP (functional reactive programming) library for Javascript

  •    Javascript

FRP (functional reactive programming) library for Javascript

sodium - Sodium - Functional Reactive Programming (FRP) Library for multiple languages

  •    CSharp

Sodium - Functional Reactive Programming (FRP) Library for multiple languages

ios-oss - Kickstarter for iOS. Bring new ideas to life, anywhere.

  •    Swift

Welcome to Kickstarter’s open source iOS app! Come on in, take your shoes off, stay a while—explore how Kickstarter’s native squad has built and continues to build the app. We’ve also open sourced our Android app, and read more about our journey to open source here.

talk-2015-essence-and-origins-of-frp - A keynote talk for LambdaJam 2015 (July 15--16)

  •    TeX

Functional Reactive Programming (FRP) is now 20 years old. Although originally motivated by interactive 3D computer graphics, FRP is a general paradigm for describing dynamic (time-varying) information. Such information had traditionally been described in software only indirectly, as successive side effects of sequential execution. In contrast, FRP expressions describe entire evolutions of values over time, representing these evolutions directly as first-class values. From the start, FRP has been based on two simple and fundamental principles, namely (a) having a precise and simple denotation and (b) continuous time. The first property, which Peter Landin called "denotative" (and "genuinely functional"), applies across problem domains and ensures a precise, implementation-independent specification, insulated from operational details as found in efficient implementations. As such, denotative systems can be reasoned about practically and rigorously. The second property (temporal continuity) is domain-specific and is crucial for simple composability, natural specification of behavior via integration and differentiation, and adaptively efficient implementations. In this talk, I'll share with you the essence of the original (denotative and continuous) FRP. You'll see the thought processes that led to its design, including the care I took to keep the specification both precise and simple, and hopefully, you'll get a sense of why you might care. As a more in-depth follow-up, the "Denotational Design" workshop explores how to use denotations to design libraries in general.

ReactiveUI - An advanced, composable, functional reactive model-view-viewmodel framework for all

  •    CSharp

ReactiveUI is a composable, cross-platform model-view-viewmodel framework for all .NET platforms that is inspired by functional reactive programming which is a paradigm that allows you to abstract mutable state away from your user interfaces and express the idea around a feature in one readable place and improve the testability of your application.That's reactive programming: changes propagate throughout a system automatically. Welcome to the peanut butter and jelly of programming paradigms. For further information please watch the this video from the Xamarin Evolve conference - Why You Should Be Building Better Mobile Apps with Reactive Programming by Michael Stonis.

flyd - The minimalistic but powerful, modular, functional reactive programming library in JavaScript

  •    Javascript

The modular, KISS, functional reactive programming library for JavaScript. Functional reactive programming is a powerful programming paradigm for expressing values that change over time. But existing libraries for JavaScript are huge, complex, have a high learning curve and aren't functional enough.

Nest - A progressive Node.js framework for building efficient and scalable server-side applications, heavily inspired by Angular

  •    TypeScript

A progressive Node.js framework for building efficient and scalable server-side applications, heavily inspired by Angular. Nest is a framework for building efficient, scalable Node.js server-side applications. It uses modern JavaScript, is built with TypeScript (preserves compatibility with pure JavaScript) and combines elements of OOP (Object Oriented Programming), FP (Functional Programming), and FRP (Functional Reactive Programming).

android-oss - Kickstarter for Android. Bring new ideas to life, anywhere.

  •    Java

Welcome to Kickstarter's open source Android app! Come on in, take your shoes off, stay a while—explore how Kickstarter's native squad has built and continues to build the app, discover our implementation of RxJava in logic- filled view models, and maybe even create an issue or two. We've also open sourced our iOS app, written in Swift: check it out here. Read more about our journey to open source here.

FunctionalAndroidReference - Showcase project of Functional Reactive Programming on Android, using RxJava

  •    Kotlin

FunctionalAndroidReference is a showcase project of Functional Reactive Programming on Android, using RxJava. It's a companion app to the presentation "Fully Reactive Apps" at Droidcon UK 2016.

frp-zoo - Comparing many FRP implementations by reimplementing the same toy app in each.

  •    Haskell

Interested in trying FRP (Functional Reactive Programming), but overwhelmed by the number of FRP libraries to choose from? To help you with this choice, this repository contains several implementations of the same small program, to give you a taste of what each library looks like. For comparison, here are a few non-FRP implementations of the same small program.

fo - An experimental language which adds functional programming features to Go.

  •    Go

Fo is an experimental language which adds functional programming features to Go. The name is short for "Functional Go". Go already supports many features that functional programmers might want: closures, first-class functions, errors as values, etc. The main feature (and in fact only feature for now) that Fo adds is type polymorphism via generics. Generics encourage functional programming techniques by making it possible to write flexible higher-order functions and type-agnostic data structures.

verve-lang - A functional language for the working hacker

  •    Haskell

Verve is a functional language for the working hacker. It was designed with users that come from other language paradigms in mind (primarily object-oriented). It aims to ease the path into the functional programming world by offering a more familiar take on functional idioms, like you'd find in most modern languages. Verve has lists, classes, objects, lambdas, interfaces and more, and it tries to give them all a beginner-friendly API, but all the concepts found here have can be expressed in purely functional languages.