<div dir="ltr">Begging the list's indulgence with tangential and possibly off-topic content.<br><br><div class="gmail_quote"><div dir="ltr">On Tue, Sep 19, 2017 at 7:57 AM Daniel Goertzen <<a href="mailto:daniel.goertzen@gmail.com">daniel.goertzen@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">How does Alpaca compare to F#/Ocaml?  After tasting some Rust and Elm, working in Erlang makes me a bit nervous too.  My dream is to see a BEAM ML-like achieve Elixir stature.</div><div dir="ltr"><br></div></blockquote><div><br></div><div>In terms of syntax it's closest to OCaml but it's worth noting we still lack some significant features one would be used to, e.g. ML's module system (and functors, etc) and you'll see hints of Elm in some places like our records.  We kept things like adding fields to records, e.g.</div><div><br></div><div>let record_example () =</div><div>  let r1 = {x="hello", y="world"} in</div><div>  {pi=3.14 | r1} </div><div><br></div><div>is perfectly legal without declaring those record types in advance.</div><div><br></div><div>r1:  {x: string, y: string}</div><div>record_example:  {pi: float, x: string, y: string}</div><div><br></div><div>There's a basic tour of the language here if you're further curious:  <a href="https://github.com/alpaca-lang/alpaca/blob/master/Tour.md">https://github.com/alpaca-lang/alpaca/blob/master/Tour.md</a></div><div><br></div><div>The pending v0.2.8 release (held up by me being super slow on a couple of bugs I should have fixed months ago) adds some substantial stuff like type annotations and better compiler feedback (both community contributions!)<br><br></div><div>Jeremy</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_quote"><div dir="ltr">On Tue, Sep 19, 2017 at 8:57 AM Karl Nilsson <<a href="mailto:kjnilsson@gmail.com" target="_blank">kjnilsson@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Tue, 19 Sep 2017 at 12:41 Jesper Louis Andersen <<a href="mailto:jesper.louis.andersen@gmail.com" target="_blank">jesper.louis.andersen@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Wed, Sep 13, 2017 at 11:38 PM Richard A. O'Keefe <<a href="mailto:ok@cs.otago.ac.nz" target="_blank">ok@cs.otago.ac.nz</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">What's your opinion of F#?  It seems to be the language<br>
of choice for people who liked Caml but need to take advantage<br>
of multiple cores.  I haven't done any benchmarking; I doubt<br>
that it could match OCaml in raw speed.<br>
<br></blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><div>I have not used it enough to have an opinion (yet). Were I to communicate a lot with the .NET platform, I'd probably pick it because it has a null value and this is a necessity when talking to C# I'm told.</div><div><br></div><div>Given that it runs under a pretty powerful JIT, it could perform really well for a lot of tasks I think.</div></div><div class="gmail_quote"><br></div></div></blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><span style="font-size:13px">F# doesn't typically have any speed advantages of any other .NET languages and in every comparison I've seen to OCaml it has performed worse. If anything the allocation costs induced by a functional first programming style means it is typically a bit slower than the equivalent C# code (also there is no goto).</span><div style="font-size:13px"><br></div><div><span style="font-size:13px">As a language F# is the nicest I've ever used substantially. I find it easy (and fun) to write reasonably correct code in. Also I hardly ever fear refactoring (compared to erlang where I break out in cold sweats even for code bases that pass dialyzer).</span></div><div><span style="font-size:13px"><br></span></div><div>I even like it so much I've started hacking on an fsharp to core erlang compiler. (<a href="https://github.com/kjnilsson/fez" target="_blank">https://github.com/kjnilsson/fez</a>). </div></div></div><div dir="ltr"><div class="gmail_quote"><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"></div><div class="gmail_quote">My "dream" would be an industry-supported parallel MLton :P<br></div></div>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</blockquote></div></div>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</blockquote></div></div>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</blockquote></div></div>