Nim programming language finally hit 1.0
Chris
wendlec at tcd.ie
Fri Oct 4 08:42:53 UTC 2019
On Thursday, 3 October 2019 at 18:27:46 UTC, Adam D. Ruppe wrote:
> On Thursday, 3 October 2019 at 18:15:10 UTC, Chris wrote:
>> How will it work once it's finished?
>
> That's part of what we still need to figure out. What I'm
> aiming for in the first version is you compile the D code with
> ldc then work the generated shared object back into your
> workflow, which won't be modified; you just make the blob then
> drop it in as if it was a closed-source library.
>
> Second pass is possibly a plugin with android studio, or at
> least the build system. I'm actually totally new to mobile dev
> (I personally don't even use smartphone apps!) so lots of
> learning as I go. I'm pretty thankful for the work the ldc
> people have already done on this, as well as the prior art
> Joakim did before he left.
>
> The iOS thing is being led by someone else (idk if he wants to
> publicly talk about it yet), but he's very much a competent Mac
> person so I have no doubt he'll make it work well.
>
>> Are there any plans for auto generated bridges, e.g. JNI
>> calling rt_init() or something?
>
> I do want to put the bindings to the NDK into druntime as well
> in core.sys.android. The D foundation is officially backing
> this work which makes that more realistic.
That all sounds very good. As you probably know, Android Studio
uses CMake for the C/C++ libs [1], it's not hard to set up and
pretty handy, all my C code is compiled for whatever architecture
and version of Android automagically. I realize that it would not
be quite as "simple" for D. But something like that, an automatic
D build script would be desirable. Also, you might want to have a
look at how Kotlin handles multiplatform stuff, especially
Android and iOS [2][3].
[1] https://developer.android.com/studio/projects/configure-cmake
[2] https://kotlinlang.org/docs/reference/native-overview.html
[3]
https://play.kotlinlang.org/hands-on/Targeting%20iOS%20and%20Android%20with%20Kotlin%20Multiplatform/01_Introduction
More information about the Digitalmars-d
mailing list