Docs update

This commit is contained in:
Nikolay Igotti
2017-11-03 06:46:03 -07:00
parent 068b526e7e
commit 68d30205c4
4 changed files with 35 additions and 13 deletions
+14
View File
@@ -1,3 +1,17 @@
## v0.4 (Nov 2017) ##
* Objective-C frameworks interop for iOS and OSX targets
* Platform API libraries for Linux, iOS, OSX and Windows
* Kotlin 1.2 supported
* `val` and function parameters can be inspected in debugger
* Experimental support for WebAssembly (wasm32 target)
* Linux MIPS support (little and big endian, mips and mipsel targets)
* Gradle plugin DSL fully reworked
* Support for unit testing annotations and automatic test runner generation
* Final executable size reduced
* Various interop improvements (forward declaration, better handling of unsupported types)
* Workers object subgraph transfer checks implemented
* Optimized low level memory management using more efficient cycle tracing algorithm
## v0.3.4 (Oct 2017) ##
* Intermediate release
+3 -2
View File
@@ -226,8 +226,9 @@ Process 80496 launched: './program.kexe' (x86_64)
### Known issues
- stepping in imported inline functions
- inspection is not implemented for (val) variables.
- stepping in imported inline functions does not work
- sometimes single stepping works incorrectly in other scenarious
- variable inspections may not work properly
_Note:_ Support DWARF 2 specification means that debugger tool recognize Kotlin as C89, because till DWARF 5 specification, there is no
identifier for Kotlin language type in specification.
+5 -2
View File
@@ -10,16 +10,19 @@ without need to ship an additional execution runtime.
To get started with _Kotlin/Native_ take a look at the attached samples.
* `androidNativeActivity` - Android Native Activity rendering 3D graphics using OpenGLES
* `csvparser` - simple CSV file parser and analyzer
* `gitchurn` - program interoperating with `libgit2` for GIT repository analysis
* `libcurl` - using of FTP/HTTP/HTTPS client library `libcurl`
* `nonBlockingEchoServer` - multi-client TCP/IP echo server using co-routines
* `gitchurn` - program interoperating with `libgit2` for GIT repository analysis
* `objc` - AppKit Objective-C interoperability example for OSX
* `opengl` - OpenGL/GLUT teapot example
* `socket` - TCP/IP echo server
* `tensorflow` - simple client for TensorFlow Machine Intelligence library
* `tetris` - Tetris game implementation (using SDL2 for rendering)
* `uikit` - UIKit Objective-C interoperability example for iOS
* `win32` - trivial Win32 application
* `androidNativeActivity` - Android Native Activity rendering 3D graphics using GLES2
See `README.md` in each sample directory for more information and build instructions.
+13 -9
View File
@@ -20,11 +20,15 @@ basic runtime shipped along with the translator, we only support a subset of all
target platforms. Currently _Kotlin/Native_ is being shipped and tested with support for
the following platforms:
* Mac OS X 10.11 and later (x86-64), host and target
* Mac OS X 10.11 and later (x86-64), host and target (`-target macbook`, default on OSX hosts)
* Ubuntu Linux x86-64 (14.04, 16.04 and later), other Linux flavours may work as well, host and target
* Microsoft Windows x86-64 (tested on Windows 7 and Windows 10), host and target
* Apple iOS (arm64), cross-compiled on MacOS X host (`-target iphone`), target, hosted on OS X
* Raspberry Pi, cross-compiled on Linux host (`-target raspberrypi`), target, hosted on Linux
(`-target linux`, default on Linux hosts)
* Microsoft Windows x86-64 (tested on Windows 7 and Windows 10), host and target (`-target mingw`,
default on Windows hosts)
* Apple iOS (arm64), cross-compiled target (`-target iphone`), hosted on OS X
* Linux arm32 hardfp, Raspberry Pi, cross-compiled target (`-target raspberrypi`), hosted on Linux
* Linux mips big endian, cross-compiled target (`-target mips`), hosted on Linux
* Linux mips little endian, cross-compiled target (`-target mipsel`), hosted on Linux
* Android arm32 and arm64 (`-target android_arm32` and `-target android_arm64`), target, hosted on Linux or OS X
Adding support for other target platforms shouldn't be too hard, if LLVM support is available.
@@ -34,15 +38,15 @@ the following platforms:
To run _Kotlin/Native_ JDK8 for the host platform has to be installed.
Note that Java 9 not yet supported.
The language and library version supported by this EAP release mostly match Kotlin 1.1.4.
The language and library version supported by this EAP release mostly match Kotlin 1.2.
However, there are certain limitations, see section [Known Limitations](#limitations).
Currently _Kotlin/Native_ uses reference counting based memory management scheme with a cycle
collection algorithm. Multiple threads could be used, but objects must be explicitly transferred
between threads, and same object couldn't be accessed by two threads concurrently.
_Kotlin/Native_ provides efficient interoperability with libraries written in C, and supports
automatic generation of Kotlin bindings from a C header file.
_Kotlin/Native_ provides efficient interoperability with libraries written in C or Objective-C, and supports
automatic generation of Kotlin bindings from a C/Objective-C header file.
See the samples coming with the distribution.
## Getting Started ##
@@ -75,7 +79,7 @@ call similar APIs from the POSIX library, see this [`sample`](https://github.com
### Reflection ###
Full reflection and class object references are not implemented.
Full reflection is not implemented, but class can be referenced and its name could be retrieved.
Notice that property delegation (including lazy properties) *does* work.
### Microsoft Windows support ###
@@ -100,5 +104,5 @@ Notice that property delegation (including lazy properties) *does* work.
b kfun:main(kotlin.Array<kotlin.String>)
to set breakpoint in main function of your application. Single stepping and step into shall work,
variable inspection partially works (not on val's, var's only).
variable inspection may have issues.
See [`DEBUGGING.md`](https://github.com/JetBrains/kotlin-native/blob/master/DEBUGGING.md)