What language do you want most to use to implement IPFS?

Now, we have Golang, Javascript, Rust IPFS implements. I’m not one of the IPFS group, but, I’m curious what language do you, the community, want most to use to implement IPFS?
For me, I want Java-IPFS and Swift-IPFS. Because they are the native language of mobile devices and if we have those implements, we can build native IPFS apps on the phone and bring the IPFS to everyone.

Which language you prefer most to implement IPFS?
  • C
  • Java
  • Python
  • C++
  • C#
  • PHP
  • Ruby
  • Swift
  • Julia
  • Dart
  • Lisp
  • Kotlin
  • Scala
  • Haskell
  • Elixir

0 voters

Btw, Happy lunar new year!

2 Likes

You gave excellent reasons for Java and Swift. Here is my reasoning for C: most other languages have some way of interfacing with C code, so if you have a C implantation of IPFS, you get the rest of the languages for very little additional work.

3 Likes

I’m rooting for Rust. The implementation isn’t doing everything the go version is doing yet, but I’m glad to see that it’s getting there. And I think it should be better than C for IPFS-as-a-library purposes, because of safety. I was going to try to use it from C++ at some point just to check whether it’s really possible. If that works, then I think the Rust implementation could be the main one: other languages can just link to the library, rather than spending time on rewriting. Even on mobile platforms.

4 Likes

No love for Kotlin? I would have thought google’s impending shift away from java would have gotten more traction by now xD

There is a rust version being built.

Announcement

Code

I agree with the sentiment that Rust should be the focus, and eventual default implementation, especially one that can be embedded into apps, and compiled with cargo-mobile, so device-native aarch64 implementations (and relevant device syscall glue) for libp2p and sled (or other native API k/v storage backend) would obviate the need for splitting development efforts just to support mobile.

I voted Java! Because of Clojure, Scala and Kotlin

I voted for Python because that’s what I’m learning.

Ada implementation…

If it’s safe enough for Space, it should be safe enough for the permanent web:

https://www.adacore.com/industries/space