Interesting OCaml Articles

I don’t know who is the author and how to contact him.
But, he should give a try at the parany library, if he is interested into parallelization of OCaml code.
The interface is more generic than parmap.
There might be times where one (parmap or parany) is faster than the other.
Especially, parany can work on an infinite stream of elements.

1 Like

Did we just blow Go in this parallelization benchmark? :slight_smile:

Presentation on Mirage OS by our own @dinosaure!

4 Likes

@ostera has started live-casting programming sessions on major OCaml libraries, written in Reason syntax (which is easy enough for OCamlers to understand). Highly recommended!

His twitch videos are here. Make sure to show up and chat for his live streams!
For posterity (since twitch deletes old videos), his youtube channel is here.

I’d love to see more of this kind of thing from the community – new users are much more likely to want to watch a fun programming session than to read something.

8 Likes

Ok, here is my contribution to try promoting OCaml in my field:

7 Likes

I always thought the other way. Watching a video is very hard because it forces on you the timing of the author which is different from your own. This was also an issue for me with university lectures and meetup talks - they are either too slow when I know/understand the part and too fast when I don’t.

But I considered doing a video of a project of my own. It is mostly the editing which I absolutely dread.

4 Likes

One advantage of videos for newcomers is it helps them see an example development workflow in a an environment they might not be familiar with.

3 Likes

I don’t know how much editing would be involved, but I’ve heard good things about Video, a Racket DSL for video editing. It might help automating tedious steps, or just nerd-snipe the functional programmers that we are… :slight_smile:

1 Like

Clearly a port to OCaml is in order. :wink:

Definitely true, but keeping yourself going through an article is harder. The fact that you have no control of the tempo also means that you’re more likely to make it though to the other end, at which point you should have some familiarity with the topic. You can also pause and replay parts, or even play at 1.5x speed, which you can’t do in a lecture.

I think it’s easier than it seems, so long as you’re not doing any fancy special effects (which are unnecessary). Cutting out stuff is fairly easily done on just about any video editing software out there, and once you start doing it you’ll get better and better.

2 Likes

AFAIK this is implemented in OCaml:

https://www.ocamlpro.com/2019/08/30/ocamlpros-compiler-team-work-update/

6 Likes

An introduction to Fuzzing OCaml (programs) with AFL, Crowbar and Bun, September 4th 2019

6 Likes

Jane Street internship reports, August 30th, 2019.

3 Likes

Interesting performance comparison with quite a few languages when writing a user space network driver:

2 Likes

https://tarides.com/blog/2019-09-13-decompress-experiences-with-ocaml-optimization.html

1 Like

I guess losing to Rust is expected, but Go? Isn’t that also garbage-collected?

Yes, C# is also garbage collected

Yes but its GC is optimized for extremely low collection times at the expensive of eating more memory. It isn’t too hard to get a Go program into a state where it’s memory explodes and it eventually runs out. This does mean it’s runtime tends to be quite fast in the common case, C speed or so.

I thought this might be of interest since AFAIK the backend is implemented in OCaml:
https://darklang.com/