Fix names, samples (#426)

This commit is contained in:
Nikolay Igotti
2017-03-30 19:41:15 +03:00
committed by GitHub
parent d34e5205ae
commit a368818863
13 changed files with 52 additions and 49 deletions
+13 -11
View File
@@ -2,23 +2,23 @@
## Introduction ##
Kotlin Native backend, codenamed _Kotlin N_, is a LLVM backend for the Kotlin
compiler. It consists of a native code generation facility using the LLVM toolchain
_Kotlin/Native_, is a LLVM backend for the Kotlin compiler.
It consists of a native code generation facility using the LLVM toolchain
and a native runtime implementation.
_Kotlin N_ is primarily designed to allow compilation for platforms where
_Kotlin/Native_ is primarily designed to allow compilation for platforms where
virtual machines are not desirable or possible (such as iOS, embedded targets),
or where the developer needs to produce a reasonably-sized self-contained program
that doesn't require an additional execution runtime.
## Supported platforms ##
_Kotlin N_ compiler produces mostly portable (modulo pointer size and target
_Kotlin/Native_ compiler produces mostly portable (modulo pointer size and target
triplet) LLVM bitcode, and as such can easily support any platform, as long as there's a LLVM
codegenerator for the platform.
However, as actual producing of the native code requires a platform linker and some
basic runtime shipped with the translator, we only support a subset of all possible
target platforms. Currently _Kotlin N_ is being shipped and tested with support for
target platforms. Currently _Kotlin/Native_ is being shipped and tested with support for
the following platforms:
* Mac OS X 10.10 and later (x86-64)
@@ -32,20 +32,22 @@ the following platforms:
## Compatibility and features ##
To run _Kotlin/Native_ JDK8 or later for the host platform has to be installed.
The language and library version supported by this EAP release mostly match Kotlin 1.1.
However, there are certain limitations, see section [Known Limitations](#limitations).
Currently _Kotlin N_ uses reference counting based memory management scheme with cycles
Currently _Kotlin/Native_ uses reference counting based memory management scheme with cycles
garbage collection algorithm. Multiple threads could be used, but no objects shared
between threads are allowed.
_Kotlin N_ provides efficient interoperability with libraries written in C, and supports
_Kotlin/Native_ provides efficient interoperability with libraries written in C, and supports
automatic generation of Kotlin bindings from a C header file.
See samples coming with the distribution.
## Getting Started ##
Download Kotlin N distribution and unpack it. You can run command line compiler with
Download _Kotlin/Native_ distribution and unpack it. You can run command line compiler with
bin/kotlinc <some_file>.kt <dir_with_kt_files> -o <executable>.kexe
@@ -61,12 +63,12 @@ For documentation on C interoperability stubs see INTEROP.md.
*** DO NOT USE THIS PREVIEW RELEASE FOR ANY PERFORMANCE ANALYSIS ***
This is purely a technology preview of Kotlin N technology, and is not yet tuned
This is purely a technology preview of _Kotlin/Native_ technology, and is not yet tuned
for benchmarking and competitive analysis of any kind.
### Standard Library ###
The standard library in Kotlin N is known to be incomplete and doesn't include
The standard library in _Kotlin/Native_ is known to be incomplete and doesn't include
certain methods available in standard library of Kotlin.
### Coroutines ###
@@ -81,5 +83,5 @@ Notice that property delegation (including lazy properties) *does* work.
### Microsoft Windows support ###
Due to significant difference in exception handling model on MS Windows and
other LLVM targets, current _Kotlin N_ may not produce executables working on
other LLVM targets, current _Kotlin/Native_ may not produce executables working on
MS Windows. This situation could be improved in upcoming releases.