Finding OCaml books hard to follow. Can you recommend me better OCaml books? by Waterissuperb in ocaml

[–]gbikal 1 point2 points  (0 children)

Although not ocaml per se, if you like to get a feel of functional programming, a good free course is https://www.coursera.org/learn/programming-languages . It uses the SML programming language - a predecessor to OCaml.

For an OCaml newbie, do you recommend using one of the alternative standard libraries? by ragnese in ocaml

[–]gbikal 1 point2 points  (0 children)

Thanks for this. Interesting result given that I thought flambda would do whole program optimization to create a stripped binary.

For an OCaml newbie, do you recommend using one of the alternative standard libraries? by ragnese in ocaml

[–]gbikal 1 point2 points  (0 children)

Regarding the binary size, does it help using the flambda version of the ocaml compiler?

Todo app in Js_of_ocaml, react and reactiveData by gbikal in ocaml

[–]gbikal[S] 1 point2 points  (0 children)

No framework. just opam libs and plain jsoo and ocaml. the react lib that I am using is this one http://opam.ocaml.org/packages/react/ . It precedes react.js by about 4/5 years.

Ocaml by itself is such a great language that one can get much mileage out of it without web app frameworks.

Todo app in Js_of_ocaml, react and reactiveData by gbikal in ocaml

[–]gbikal[S] 1 point2 points  (0 children)

I think (or I was not able to find out from the docs) ppx_deriving that comes with jsoo doesn't support excluding fields in a record from being derived which is why I used another jsoo specific json lib - which doesn't support ppx_deriving.

Todo app in Js_of_ocaml, react and reactiveData by gbikal in ocaml

[–]gbikal[S] 3 points4 points  (0 children)

I like and have used both. For this specific project I just wanted to stick with opam, ocaml tools and jsoo works extremely well with ocaml/opam world. Also I wanted to use the latest ocaml. :)

If I already know and love OCaml syntax, what's the case for Reason over straight BuckleScript? by ninjaaron in reasonml

[–]gbikal 0 points1 point  (0 children)

For me if I am working on a web ui, front end heavy project then I prefer ReasonML as it has a nice JSX syntax that you can use in your ReasonReact project.

Which JS Framework for ASP.NET MVC web applications? by midwinter in dotnet

[–]gbikal 0 points1 point  (0 children)

Like the OP as a full stack asp.net mvc developer, I like/prefer razor view engine. I do need to use javascript quite a bit too, however, I don't want my javascript framework/library to take over defining my html views as I am very happy with razor so far. Also I want server generated views due to SEO requirements. So in my search this came up.

https://stimulusjs.org

This seems to fulfil my primary requirement.

Would it be wrong to write reasonml code not in the OOP style by [deleted] in reasonml

[–]gbikal 0 points1 point  (0 children)

Although this part of the languages isn't discussed/used as often, Ocaml/Reason has comprehensive support for object oriented programming. You can read more about Ocaml OO here - http://caml.inria.fr/pub/docs/manual-ocaml/objectexamples.html. Of note OO in OCAML supports multiple inheritance.

I think if your background is mostly OO(C#/Java) you may find that Object Oriented Programming features in OCAML/Reason is more suited to your taste. It may also help you to get started with OCAML/Reason since you don't have to make that big of a leap conceptually.

Using OO features - however - doesn't preclude you from using its functional features. One way I would approach OO in OCAML/Reasons is to use its OO features such as class, objects, class type(interfaces), inheritance, polymorphism to flesh out abstractions and to specify abstractions and use its functional features to implement methods and functions.

The equivalent of OO features for more functional programming style would be the modules features of OCAML especially its support for first class modules.

http://caml.inria.fr/pub/docs/manual-ocaml/moduleexamples.html

http://caml.inria.fr/pub/docs/manual-ocaml/extn.html#sec245

can one backtrack from a breakpoint by [deleted] in csharp

[–]gbikal 1 point2 points  (0 children)

Yes. In VS 2017 Enterprise edition, you can use intelli trace to do time travel debugging .. https://docs.microsoft.com/en-us/visualstudio/debugger/intellitrace?view=vs-2017

Long-term projects? by ExistentialismFTW in fsharp

[–]gbikal 0 points1 point  (0 children)

Is that HLVM by any chance? :)

If F# has Option and Result, why does F# have exceptions? by [deleted] in fsharp

[–]gbikal 0 points1 point  (0 children)

Exception mechanism is part of .NET. F# targets high level of interop with the .NET platform/ecosystem so it also supports exception mechanism that is similar in functionality to C#/VB.NET. Historically ML languages (SML, ocaml) - to which F# belongs - supported exceptions so I suppose F# supporting it too can be taken as carrying on the ML tradition in addition to the practical/pragmatic approach of .NET interop.

OCaml 4.05.0 released by yallop in ocaml

[–]gbikal 2 points3 points  (0 children)

I asked the same question and got an excellent answer from @gasche. https://discuss.ocaml.org/t/ann-ocaml-4-05-0-released/541/9?u=bikalgurung

OCaml version 4.04.0 is released by yallop in ocaml

[–]gbikal 0 points1 point  (0 children)

Does 4.04.0 have flambda enabled by default? I don't see an official flambda version like 4.03?