Giter Club home page Giter Club logo

nemerle's Introduction

What Is It

Join the chat at https://gitter.im/rsdn/nemerle

Nemerle is a high-level statically-typed programming language for the .NET platform. It offers functional, object-oriented and imperative features. It has a simple C#-like syntax and a powerful meta-programming system.

Features that come from the functional land are variants, pattern matching, type inference and parameter polymorphism (aka generics). The meta-programming system allows great compiler extensibility, embedding domain specific languages, partial evaluation and aspect-oriented programming.

To find out more, please visit: http://nemerle.org/

Quick sample

Hello world

Create hello.n:

using System.Console;

WriteLine("Hello world")

Compile and run

"C:\Program Files\Nemerle\ncc.exe" hello.n /out:hello.exe
hello.exe

Will output

Hello world

Install

Windows

Install latest msi package from http://nemerle.org/

Linux, Mono

Download latest binary package from http://nemerle.org and export Nemerle=/path/to/binaries/extracted

How to build

Clone with all submodules: git clone --recursive git://github.com/rsdn/nemerle.git If you have a clone already: git pull --recurse-submodules

Windows

  • For Development:

Nemerle build process (for Nemerle developers)

  • For Installer:

Run BuildInstallerFull(fx-version).cmd depending on required .NET version. Installer will be placed in bin/Release/net-(fx-version)/Installer.

Note: You can also use BuildInstallerFast(fx-version).cmd to build installer without running tests.

Note: For building Visual Studio bindings you need VSSDK and administrative rights.

Linux

Nemerle can bootstrap itself on Mono.

  • Generic line:

xbuild NemerleAll-Mono.nproj /p:TargetFrameworkVersion=v(3.5 or 4.0 or 4.5 or 4.5.1) /p:Configuration=Release(or Debug) /t:Stage4(1 - 4) /tv:4.0(Needed for framework 4.0 and above)

  • Release 3.5:

xbuild NemerleAll-Mono.nproj /p:TargetFrameworkVersion=v3.5 /p:Configuration=Release /t:Stage4

  • Debug 4.0:

xbuild NemerleAll-Mono.nproj /p:TargetFrameworkVersion=v4.0 /p:Configuration=Debug /t:Stage4 /tv:4.0

What about IDE?

  • Visual Studio 2008/2010/2012/2013-preview integration installed by Nemerle installer
  • Nemerle Studio is a free IDE based on Visual Studio Shell (Isolated mode) installed by Nemerle installer if VS Shell was installed
  • Sharp Develop 3.0 addin can be builded manually. See snippets/sharpdevelop/ReadMe.txt
  • See Vim, Emacs, Kate and other editors syntax support in the 'misc' folder

Repository structure

  • Nemerle compiler sources (ncc/),
  • Nemerle Documentation (doc/),
  • standard Nemerle library (lib/),
  • standard Nemerle macros (macros/),
  • some examples of Nemerle programs (snippets/),
  • a few useful tools (e.g. synatx highlighting modes) (misc/),
  • binary Nemerle compiler needed to compile itself (boot/, boot-4.0/).
  • Nemerle realted tools (e.g. relector addin) (tools/)
  • Visual Studio 2008 integration (VsIntegration/)

Contacts

nemerle's People

Contributors

cannorin avatar catbert avatar cnd avatar codingunit avatar deeprocks99 avatar divanorama avatar dsorokin avatar emperon avatar igor-tkachev avatar kali71234 avatar kochetkov avatar makowiem avatar mart-bogdan avatar nn--- avatar paracoder avatar pawel2006 avatar pbludov avatar pekabon avatar rampelstinskin avatar rystsov avatar sergeya avatar serras avatar someone-with-default-username avatar stdray avatar stitchous avatar v2m avatar viivanov avatar vladd2 avatar vladimirreshetnikov avatar ziaw avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.