alpaca - Functional programming inspired by ML for the Erlang VM

  •        107

Alpaca is a statically typed, strict/eagerly evaluated, functional programming language for the Erlang virtual machine (BEAM). At present it relies on type inference but does provide a way to add type specifications to top-level function and value bindings. It was formerly known as ML-flavoured Erlang (MLFE). Please see the rebar3 plugin documentation for more details.



Related Projects

alpaca - Alpaca provides the easiest way to generate interactive HTML5 forms for web and mobile applications

  •    Javascript

Alpaca provides the easiest and fastest way to generate interactive forms for the web and mobile devices. It runs simply as HTML5 or more elaborately using Bootstrap, jQuery Mobile or jQuery UI. Alpaca uses Handlebars to process JSON schema and provide developers with an extensible framework for implementing controls, wizards, layouts, I18N support and an custom data persistence. The goal of Alpaca is to provide the open source community with a fantastic forms engine that rivals or beats what most proprietary vendors offer. Using Alpaca, you can host really nice forms for your back end services, whether they are proprietary, enterprise or SaaS offerings.

alpaca - Given a web API, Generate client libraries in node, php, python, ruby

  •    Go

You define your API according to the format given below, alpaca builds the API libraries along with their documentation. All you have to do is publishing them to their respective package managers. Join us at gitter if you need any help.


  •    Objective-C

Alpaca is a programmable rich-text editor for authors using Mac OS X. It is built on, and programmable in, Common Lisp, and has a complete Common Lisp programming environment built into it.

hermetic - a python-like language with hindley-milner-like type system, which is compiled to c

  •    Python

a python-like language with hindley-milner-like type system, which is compiled to c

urweb - The Ur/Web programming language

  •    Standard

Ur is a programming language in the tradition of ML and Haskell, but featuring a significantly richer type system. Ur is functional, pure, statically typed, and strict. Ur supports a powerful kind of metaprogramming based on row types. This type safety is just the foundation of the Ur/Web methodology. It is also possible to use metaprogramming to build significant application pieces by analysis of type structure. For instance, the demo includes an ML-style functor for building an admin interface for an arbitrary SQL table. The type system guarantees that the admin interface sub-application that comes out will always be free of the above-listed bugs, no matter which well-typed table description is given as input.

gocaml - :camel: Practical statically typed functional programming language implementation with Go and LLVM

  •    Go

GoCaml is subset of OCaml in Go based on MinCaml using LLVM. GoCaml adds many features to original MinCaml. MinCaml is a minimal subset of OCaml for educational purpose. It is statically-typed and compiled into a binary. This project aims incremental compiler development for my own programming language. Type inference, closure transform, mid-level IR are implemented.

ballerina-lang - Ballerina is a compiled, transactional, statically and strongly typed programming language with textual and graphical syntaxes

  •    Java

Ballerina is a compiled, transactional, statically and strongly typed programming language with textual and graphical syntaxes.

kotlin - Statically Typed Programming Language for the JVM

  •    Java

Kotlin is a statically typed programming language that compiles to JVM byte codes and JavaScript. Java programming language has certain limitations and problems that are either impossible or very hard to fix due to backward-compatibility issues. This new statically typed JVM-targeted language free of the legacy has features include compilation at least as fast as Java, variable type inference, higher-order functions (closures), extension functions, code in interfaces, first-class delegation etc

SATySFi - A statically-typed, functional typesetting system

  •    OCaml

SATySFi (pronounced in the same way as the verb “satisfy” in English) is a new typesetting system with a static type system. It consists mainly of two “layers” ― the text layer and the program layer. The former is for writing documents in LaTeX-like syntax. The latter, which has ML-like syntax, is for defining functions and commands. SATySFi enables you to write documents markuped with flexible commands of your own making. In addition, its informative type error reporting will be a good help to your writing. This software is supported by IPA Mitou Project 2017 (see the abstract here).

elchemy - Write Elixir code using statically-typed Elm-like syntax (compatible with Elm tooling)

  •    Elm

elchemy will find all *.elm files specified in elchemy_path and compile it into corresponding *.ex files in lib directory. You can override output directory specifying elixirc_paths.

articles - Miscellaneous articles. The readme is the table of contents.

  •    Haskell

This repository is filled with articles I have written and needed online for various reasons. Below is a short summary of the articles available publically; the repository may contain files not mentioned below, in which case they're probably unfinished or otherwise not worth reading at this point. Applicative-Monad proposal (AMP) is the original text of the 2013 Applicative-Monad proposal, which was the starting point for Applicative becoming a superclass of Monad in GHC 7.10.

gluon - A static, type inferred and embeddable language written in Rust.

  •    Rust

Gluon is a small, statically-typed, functional programming language designed for application embedding. Statically typed - Static typing makes it easier to write safe and efficient interfaces between gluon and the host application.

LLJS - LLJS: Low-Level JavaScript

  •    Javascript

LLJS is a typed dialect of JavaScript that offers a C-like type system with manual memory management. It compiles to JavaScript and lets you write memory-efficient and GC pause-free code less painfully, in short, LLJS is the bastard child of JavaScript and C. LLJS is early research prototype work, so don't expect anything rock solid just yet. The research goal here is to explore low-level statically typed features in a high-level dynamically typed language. Think of it as inline assembly in C, or the unsafe keyword in C#. It's not pretty, but it gets the job done. For users of node.js, bin/ljc is provided.

agora - a dynamically typed, garbage collected, embeddable programming language built with Go

  •    Go

Agora is a dynamically typed, garbage collected, embeddable programming language. It is built with the Go programming language, and is meant to provide a syntactically similar, loose and dynamic companion to the statically typed, machine compiled Go language - somewhat like Lua is to C. go get -t

Dynamic web tools for Standard ML


Tools for developing dynamic web sites using the Standard ML programming language, including all the software you need to create PHP-style web sites with type-safe, statically checked page generation

Go - Programming Language from Google

  •    C

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

Carp - A statically typed lisp, without a GC, for real-time applications.

  •    Haskell

Update (June 12, 2018): We're currently working towards version 0.3.0 of the language. The goal of this version is to be a stable but somewhat limited version of the language (lacking lambdas and union types). Carp is a small programming language designed to work well for interactive and performance sensitive use cases like games, sound synthesis and visualizations.

rebar3 - Erlang build tool that makes it easy to compile and test Erlang applications and releases.

  •    Erlang

Rebar3 is an Erlang tool that makes it easy to create, develop, and release Erlang libraries, applications, and systems in a repeatable manner. Rebar3 is also a self-contained Erlang script. It is easy to distribute or embed directly in a project. Tasks or behaviours can be modified or expanded with a plugin system flexible enough that even other languages on the Erlang VM will use it as a build tool.

erjang - A JVM-based Erlang VM

  •    Java

A JVM-based Erlang VM

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.