Hacker Newsnew | past | comments | ask | show | jobs | submit | gargamel9's commentslogin

Oooops, you forgot the first rule of Datomic license: Thou shall not talk about the Datomic (un)performance!


Yep, for how much they are involved in the open source community, it's fairly disappointing this is not allowed:

https://www.datomic.com/on-prem-eula.html

"[The licensee will not] (j) publicly display or communicate the results of internal performance testing or other benchmarking or performance evaluation of the Software; "

I wish they wouldn't do this, it seems that they simply do not want to talk about this topic, even though the reason people usually choose Datomic is not performance but rather its abstractions -- so why the hostile attitude?


I think they've said before that they don't want someone saying the performance sucks when it is really just a bad query or something else that isn't the databases fault...this is usually the reason why talking about performance is outlawed.


But an analogous situation holds for almost all performance benchmarks of any product right? That seems to be an argument against ever making any benchmarks public.


I don't agree with it.


> simply do not want to talk about this topic

I wonder if there are many respectable companies that don't allow you to post benchmarks. It's almost as if they don't have any confidence in their product that they have to resort to such extraordinary measures.


Oracle, Microsoft. They're called "DeWitt clauses", after the researcher who first invoked Oracle's wrath after publishing benchmarks and finding them to be the slowest. Read on:

* more about DeWitt: https://en.wikipedia.org/wiki/David_DeWitt#The_%22DeWitt_Cla...

* an overview of database licenses with such a clause today: https://stackoverflow.com/a/12116865/1376005

* an essay discussing the legality of such clauses, with links to further material on/about them: https://www.dwheeler.com/essays/dewitt-clause.html


For the unfamiliar:

> The Licensee hereby agrees, without the prior written consent of Cognitect, which may be withheld or conditioned at Cognitect’s sole discretion, it will not: [...] (j) publicly display or communicate the results of internal performance testing or other benchmarking or performance evaluation of the Software; [...]

https://www.datomic.com/on-prem-eula.html

I.e., the Oracle approach.


Still only OpenCL 2 support... I have nvidia. I wish I could try it.


The engine for nvidia is in the works.

But, in the meantime, you can try the native CPU engine. It is as fast as the underlying ATLAS. Almost no overhead.


Just quickly skimmed the source, and there is a hilarious comment for the bind! function:

"An impure, heretic variant of bind that sacrifices kittens to C++ gods."

https://github.com/uncomplicate/fluokitten/blob/master/src/u...


There are a few more (but not many functionst) that are a compromise, so I expect that Haskellers would have a few objections. But, this is Clojure, and not haskell :)


This is a bit old, but interesting.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: