4 ms·
Jane Street wrote a compiler that converts Ocaml to Verilog which they run on FPGAs. The OCaml you write in that case is pretty different than what you write fo
by typon 7y ago
Jane Street wrote a compiler that converts Ocaml to Verilog which they run on FPGAs. The OCaml you write in that case is pretty different than what you write for CPUs.
- throwaway87537 7y agoStreeter here. Although I don’t work directly with the FPGA stuff, it’s still a very, very small piece of the overall pie (and new). The motivation behind using Ocaml is mainly in its correctness(!) not because it’s fast (it’s not). See Knight Capital for a good example as to why. There are great videos on YT by Yaron Minsky that explain this better than I can.
- dooglius 7y ago> See Knight Capital for a good example as to why Not really, that was about incompatible versions of software talking to each other, which would not really fall under what is meant by "correctness".
- fennecfoxen 7y agoWhile Knight Capital's problem was caused by incompatible versions of the software talking to each other, one of the reasons that happened was the deployment of the code was not correct. The SEC notes: > “During the deployment of the new code, however, one of Knight’s technicians did not copy the new code to one of the eight SMARS computer servers. Knight did not have a second technician review this deployment and no one at Knight realized that the Power Peg code had not been removed from the eighth server, nor the new RLP code added. Knight had no written procedures that required such a review. Rumor on the outside suggests that Jane St uses OCaml for things like deploying software.
- gowld 7y agoHow does OCaml prevent you from deploying working code that you didn't want to run?
- johnisgood 7y agoSpeaking of correctness and performance, was Ada/SPARK ever considered before you guys picked OCaml? Hypothetically, would you consider Ada/SPARK now, especially that SPARK has safe pointers and whatnot?
- Jtsummers 7y agoSPARK was barely making waves when they selected OCaml. OCaml was much more established by that time.
- johnisgood 7y agoFair enough. Then they should probably just focus on the second question. :)
- gpderetta 7y ago"A FORTRAN programmer can write FORTRAN in any language"
- classified 7y agoAnd structured programming (including, of course, FP) is for quiche eaters!
- classified 7y agoFor those who don't get the allusion: https://web.mit.edu/humor/Computers/real.programmers https://web.mit.edu/humor/Computers/real.programmers
- Ragib_Zaman 7y agoThat certainly explains a whole lot. Thanks!