nirum

Nirum: IDL compiler and RPC/distributed object framework for microservices

Github星跟蹤圖

Nirum

The latest release on GitHub
Docker automated build
Build status on Linux and macOS (Travis CI)
Build status on Windows (AppVeyor)
Test coverage (codecov)
Total lines of code
Gitter

Nirum is an IDL compiler and RPC/distributed object framework
for microservices, built on top of the modern Web server technologies
such as RESTful HTTP and JSON.

You can find how the language looks like from source codes in the examples/
directory.

Note that its design is highly unstable and could be changed.
Also the feature set is incomplete yet.

Installation

The Nirum compiler works on the most major platforms like Linux, macOS, and
Windows. We provide the prebuilt executable binaries for these three platforms.

Released builds

You can download executable binaries for Linux (x86_64), macOS (x86_64), or
Windows (x64) from the latest release note.
You should give it appropriate permissions (e.g., +x) depending on your
platform.

If you look for a previous release, see the list of all releases.

We provide official Docker images as well. You can check the list of
released tags. Note that latest is for a nightly build which
is unstable (see below).

Nightly builds

Since Nirum is still changing by leaps and bounds, you could want to try
its bleeding edge. We provide nightly builds for this purpose.

Although we call it "nightly build," technically it is not built every night,
but done every merge commit.

Getting started

In order to compile a Nirum package (examples/) to a Python package:

$ mkdir out/  # directory to place generated Python files
$ nirum -t python -o out/ examples/

For more information, use --help option:

$ nirum --help
Nirum: The IDL compiler and RPC/distributed object framework

Usage: nirum [-v, --version] (-o, --output-dir DIR) (-t, --target TARGET) DIR
  Nirum compiler 0.5.1

Available options:
  -h,--help                Show this help text
  -v,--version             Show version
  -o,--output-dir DIR      Output directory
  -t,--target TARGET       Target language name. Available: docs, python
  DIR                      Package directory

There is a step-by-step tutorial as well.

Building

If you already installed Haskell Stack, you can build the project
in the same way to build other Haskell softwares:

$ stack build

You can run the test suite of Nirum:

$ stack test  # unit test for compiler
$ ./lint.sh   # style lint

For details, please read the contribution guide.

See also the list of Nirum-related projects on GitHub.
Have you kicked off a new project related to Nirum? Please add nirum
topic to your project on GitHub!

Language runtimes

Editor supports

Etymology

니름 (IPA: /niɾɯm/; nireum) is a sort of telepathy in the fictional world
of The Bird That Drinks Tears (눈물을 마시는 새 Nunmureul masineun sae)
by Lee Yeongdo (이영도).

主要指標

概覽
名稱與所有者nirum-lang/nirum
主編程語言Haskell
編程語言Haskell (語言數: 4)
平台
許可證GNU General Public License v3.0
所有者活动
創建於2016-05-10 07:25:53
推送於2019-01-30 06:54:37
最后一次提交2019-01-30 15:54:19
發布數10
最新版本名稱0.5.0 (發布於 )
第一版名稱0.1.0 (發布於 2018-02-11 18:45:19)
用户参与
星數121
關注者數20
派生數27
提交數785
已啟用問題?
問題數117
打開的問題數37
拉請求數187
打開的拉請求數2
關閉的拉請求數22
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?