Live data from Hacker News

Apple Open-Sources FoundationDB Record Layer

github.com

1–10 of 36 posts

Re: Apple Open-Sources FoundationDB Record Layer

#5
post #4

I didn't expect this to be written in Java. Do they talk about this decision anywhere? I didn't catch anything in the announcement.

They acquired the company that made FoundationDB:

https://techcrunch.com/2015/03/24/apple-acquires-durable-dat...

Re: Apple Open-Sources FoundationDB Record Layer

#6
post #4

I didn't expect this to be written in Java. Do they talk about this decision anywhere? I didn't catch anything in the announcement.

They acquired the company that made FoundationDB: https://techcrunch.com/2015/03/24/apple-acquires-durable-dat...

This makes sense. Thank you for clarifying!

Re: Apple Open-Sources FoundationDB Record Layer

#7
post #4

I didn't expect this to be written in Java. Do they talk about this decision anywhere? I didn't catch anything in the announcement.

FDB itself is written in Flow, which is 98% C++ with a few extra keywords thrown on top that gets compiled to actual C++. This gives them actor model concurrency in C++ that is completely deterministic by generating very ugly code that uses callbacks instead of threads or coroutines.

The reason for Java being used here, if I had to guess, is they have experience running Java in production and the Java bindings are the most mature (in my opinion). Writing the record layer in C++ would probably be overkill. The reason the Java bindings are the most mature is probably because they needed to be to write this :)

Re: Apple Open-Sources FoundationDB Record Layer

#9
post #4

I didn't expect this to be written in Java. Do they talk about this decision anywhere? I didn't catch anything in the announcement.

Apple's server-side WebObjects stuff is all written in Java; and IIRC, the original Control Panel for OS X was in Java using the ObjC/Cocoa bridge stuff.
Post reply on HN