The Janet Street folks, who created this, also did an interesting episode[0] of their podcast where they discuss performance considerations when working with OCaml. What I was curious about was applying a GC language to a use case that must have extremely low latency. It seems like an important consideration, as a GC pause in the middle of high-frequency trading could be problematic. [0] https://signalsandthreads.com…
The problem is not a GC language per se, people keep putting all GC languages in the same basket. The real issue is being a GC language, without support for explicit manipulation of stack and value types. Want a GC language, with productivity of GC languages, with the knobs to do low level systems coding? Cedar, Oberon language family, Modula-3, D, Nim, Eiffel, C#, F#, Swift, Go.
OxCaml - a set of extensions to the OCaml programming language.
101–110 of 128 posts
Re: OxCaml - a set of extensions to the OCaml programming language.
#102The sunk cost fallacy at Jane Street is strong.
Ocaml has so much good going on, even being a less known language.
I assume you are a rust fanboy, and i want to see just how long your smirk holds when you compile a 20M LOC project that takes 45 minutes.
Re: OxCaml - a set of extensions to the OCaml programming language.
#103Earlier quoted context omitted.
The problem is not a GC language per se, people keep putting all GC languages in the same basket. The real issue is being a GC language, without support for explicit manipulation of stack and value types. Want a GC language, with productivity of GC languages, with the knobs to do low level systems coding? Cedar, Oberon language family, Modula-3, D, Nim, Eiffel, C#, F#, Swift, Go.
Does Go have much in the way of GC knobs? It didn't some years ago, but I haven't kept up on latest developments
With a Go compiler toolchain you have stack and global memory static allocation, use of compiler flags to track down when references escape, manually allocate via OS bindings, there is the unsafe package, and use slices with it, an assembler is part of the toolchain learn to use it, and regardless of CGO is not Go memes, it is another tool to reach for if Assembly isn't your thing.
Re: OxCaml - a set of extensions to the OCaml programming language.
#104Earlier quoted context omitted.
Does Go have much in the way of GC knobs? It didn't some years ago, but I haven't kept up on latest developments
The knobs aren't on the GC necessarily, rather language features. With a Go compiler toolchain you have stack and global memory static allocation, use of compiler flags to track down when references escape, manually allocate via OS bindings, there is the unsafe package, and use slices with it, an assembler is part of the toolchain learn to use it, and regardless of CGO is not Go memes, it is another tool to reach for…
Re: OxCaml - a set of extensions to the OCaml programming language.
#105Earlier quoted context omitted.
The knobs aren't on the GC necessarily, rather language features. With a Go compiler toolchain you have stack and global memory static allocation, use of compiler flags to track down when references escape, manually allocate via OS bindings, there is the unsafe package, and use slices with it, an assembler is part of the toolchain learn to use it, and regardless of CGO is not Go memes, it is another tool to reach for…
Ohh right yes, now I get what you mean. My brain just immediately went for "GC knobs" when you mentioned "knobs", but in my defense I'm running a 40°C fever so I should probably not be commenting at all
Re: OxCaml - a set of extensions to the OCaml programming language.
#106Earlier quoted context omitted.
How do you distinguish a tuple with both positional and named fields from a tuple that has a record as a field Like how do you write the type of (1, {sum:2}) ? Is it different from (1 , sum :2)?
The syntax is a little funny for mostly historical reasons. The curly braces are only part of the record type syntax. There's no ambiguity there because curly braces aren't used for anything else in type annotations (well, except for named parameters inside a function type's parameter list, but that's a different part of the grammar).
Re: OxCaml - a set of extensions to the OCaml programming language.
#107The sunk cost fallacy at Jane Street is strong.
Why? They have one of the largest Ocaml codebases in the world. It has clearly work out VERY well for them, in terms of productivity and pure ROI in features and revenue. Ocaml has so much good going on, even being a less known language. I assume you are a rust fanboy, and i want to see just how long your smirk holds when you compile a 20M LOC project that takes 45 minutes.
OCaml is a terrible choice for (anyone) a company like this. They NEED to be able to hire the very best of the best, but choosing an exotic language that is less palatable than a plate of shit and more cryptic than alien hieroglyphs restricts your talent pool A LOT.
I'm not saying people cannot learn it, I'm saying people won't want to, for multiple very good reasons (it sucks, it's not at all transferable skill, etc.).
Re: OxCaml - a set of extensions to the OCaml programming language.
#108What are the chances that they are releasing this so that LLMs can index this information for free and they can use public models in their codebase rather than finetuning public models?
Re: OxCaml - a set of extensions to the OCaml programming language.
#109Earlier quoted context omitted.
Why? They have one of the largest Ocaml codebases in the world. It has clearly work out VERY well for them, in terms of productivity and pure ROI in features and revenue. Ocaml has so much good going on, even being a less known language. I assume you are a rust fanboy, and i want to see just how long your smirk holds when you compile a 20M LOC project that takes 45 minutes.
I've never written a line of Rust in my life, but I unfortunately had the great displeasure to write OCaml. OCaml is a terrible choice for (anyone) a company like this. They NEED to be able to hire the very best of the best, but choosing an exotic language that is less palatable than a plate of shit and more cryptic than alien hieroglyphs restricts your talent pool A LOT. I'm not saying people cannot learn it, I'm sa…
Rust on the other hand, takes usually way longer to grok, mostly because of its borrow checker that is quite unique to rust.
Re: OxCaml - a set of extensions to the OCaml programming language.
#110Earlier quoted context omitted.
I've never written a line of Rust in my life, but I unfortunately had the great displeasure to write OCaml. OCaml is a terrible choice for (anyone) a company like this. They NEED to be able to hire the very best of the best, but choosing an exotic language that is less palatable than a plate of shit and more cryptic than alien hieroglyphs restricts your talent pool A LOT. I'm not saying people cannot learn it, I'm sa…
Thats BS. I have learnt Ocaml and im far from "the best if the best". Its just syntax in the end, took me a few weeks to get productive enough to ship features. Rust on the other hand, takes usually way longer to grok, mostly because of its borrow checker that is quite unique to rust.