News for hackers. Stuff that matters.
Re:What the interns have wrought, 2020 edition by angio on Tuesday August 25, 2020 @12:15PM (#24272901)
The OCaml website lists some companies it [0], I think there are a bunch of new blockchain startups that are also using OCaml but are not on that page.

[0] https://ocaml.org/learn/companies.html

Re:What the interns have wrought, 2020 edition by non-entity on Tuesday August 25, 2020 @12:20PM (#24272970)
Is there something about purely functional languages that make them attractive to blockchain applications? I remember a post on here a little while ago complaining about Haskell adoption in industry was being mostly led by cryptocurrencies.
Re:What the interns have wrought, 2020 edition by twic on Tuesday August 25, 2020 @12:34PM (#24273120)
One person might say that the common factor is not being frightened of doing something challenging and unconventional that allows you to achieve extraordinary things.

Another might say it was a weakness for snake oil.

Re:What the interns have wrought, 2020 edition by uHuge on Wednesday August 26, 2020 @11:48AM (#24283533)
You have high-stake operations in relatively small code base, so you better pick a language and tools compatible with formal verification or even supporting it natively.
Re:What the interns have wrought, 2020 edition by nesarkvechnep on Tuesday August 25, 2020 @01:29PM (#24273753)
Just to make it clear, OCaml is not purely functional.
Re:What the interns have wrought, 2020 edition by non-entity on Tuesday August 25, 2020 @01:32PM (#24273781)
Oh sorry, not sure why I thought it was.
Re:What the interns have wrought, 2020 edition by johnisgood on Tuesday August 25, 2020 @11:23PM (#24278778)
Yeah, it most likely is not. I mix imperative, OOP, and functional all the time. Parts of my codebase that has to do with algorithms are written using imperative style, the "public API" is OOP (class, object, methods) which makes the use of my library a breeze, and the rest is functional.

To give you an example of how you would use some crypto-related library that implemented its API (?) in OOP:

  let x = new Foo.bar in
  x#absorb a;
  x#squeeze b;
  x#reset
Or take a look at: https://github.com/xavierleroy/cryptokit/blob/master/src/cry...

This (this entire file) is a great example, too!