<mpenet>
hmm can't get fieldslib to work, any ideas? open FieldsLib work, my record is annotated, yet the compiler complains on the "with ..." line (merlin too).
<octachron>
the "with ..." syntax is a campl4 extension
<companion_cube>
you probably use an old version of fieldslib, now it's using ppx
<Drup>
Inria (a country-wide compsci research organism) (itself an acronym) would deserve a whole chapter on the subject. It's almost a local sport.
<Algebr`>
I like the playfulness, I saw someone teaching it, a frenchman, it looked really cool and it bills itself as a functional language
AlexRussia has quit [Ping timeout: 244 seconds]
picolino has quit [Ping timeout: 255 seconds]
picolino has joined #ocaml
nore has quit [Quit: WeeChat 1.4]
AlexRussia has joined #ocaml
<gasche>
in terms of language design, Faust is reinventing the wheel on some fronts
<gasche>
(i meant in terms of language *theory* actually)
tennix has quit [Quit: WeeChat 1.5]
<Algebr`>
gasche: can you elaborate?
<gasche>
in terms of pushing synchronous languages towards realistic sound synthesis applications, it's a cool project
picolino has quit [Ping timeout: 276 seconds]
<gasche>
the fact that the people working on it are both researchers and musicians helps a lot
<Algebr`>
so its actually used in industry?
<gasche>
(I don't know -- I don't think so)
<gasche>
it is delicate to elaborate my previous remark, which suggests that maybe I should not have made it
<gasche>
but let's say that I suspect there is a lot of work from the synchronous programming community (which is impactful in industry and has strong research groups in France) that could have been reused by the Faust project, which instead went to develop its own (but relatively similiar) theory
<gasche>
(the fact that there is no link to the research papers from the Faust website doesn't make it very easy to go back to those documents to refresh my memory)
<Algebr`>
what do you mean by synchronous programming? I don't think I'm thinking it the same way you are
<Algebr`>
so lustre is another competing lang and is the predominate one in this space?
clog has quit [Ping timeout: 250 seconds]
<Drup>
Lustre is one that received a good amount of research, but it's a whole family, really
<gasche>
it's unclear whether they are competing given that the applications the various communities are pushing are quite different
<gasche>
I'm pointing out that the *theory* work behind the various languages could have been shared, and opportunities were missed
AlexRussia has quit [Ping timeout: 240 seconds]
<gasche>
(you probably don't care, neither does most of the Faust user-base or contributor-base, which precisely explains the current state)
<Drup>
( If you are curious about synchronous programming and want to see it in a more familiar context, that might interest you: https://github.com/remyzorg/pendulum )
clog has joined #ocaml
AlexRussia has joined #ocaml
<mpenet>
Is there a way to shrink the size of native binary generated by the compiler somehow (I am just running "make" via the Makefile oasis generated for me atm)?
<Drup>
(Elm is pretty much synchronous programming too, now)
<Algebr`>
thank you all
<Algebr`>
mpenet: strip the binary
<mpenet>
Algebr`: how so?
<Algebr`>
`man strip` maybe?
<mpenet>
I am an idiot, thx :>
MercurialAlchemi has quit [Ping timeout: 244 seconds]
mpenet has quit [Remote host closed the connection]
AlexRussia has quit [Ping timeout: 250 seconds]
wu_ng has quit [Ping timeout: 265 seconds]
rgrinberg has quit [Ping timeout: 255 seconds]
Simn has quit [Read error: Connection reset by peer]
nojb has joined #ocaml
freusque has quit [Quit: WeeChat 1.4]
AlexRussia has joined #ocaml
jmiven has quit [Quit: co'o]
jmiven has joined #ocaml
pyon has quit [Remote host closed the connection]
mattrepl has joined #ocaml
pyon has joined #ocaml
MercurialAlchemi has joined #ocaml
Simn has joined #ocaml
johnf has joined #ocaml
brab has quit [Ping timeout: 250 seconds]
brab has joined #ocaml
johnf has quit [Read error: Connection reset by peer]
johnf has joined #ocaml
AlexDenisov has joined #ocaml
ee_ks1 has joined #ocaml
ryanartecona has joined #ocaml
shinnya has quit [Ping timeout: 250 seconds]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
mcc has quit [Quit: Connection closed for inactivity]
alienbot has joined #ocaml
ygrek has joined #ocaml
AlexRussia has quit [Ping timeout: 265 seconds]
rgrinberg has joined #ocaml
jeffmo has joined #ocaml
hcarty has joined #ocaml
rgrinberg has quit [Client Quit]
rgrinberg has joined #ocaml
AlexRussia has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
octachron has quit [Quit: Page closed]
d0nn1e has quit [Ping timeout: 244 seconds]
agarwal1975 has quit [Quit: agarwal1975]
d0nn1e has joined #ocaml
bruce_r has joined #ocaml
ygrek has quit [Ping timeout: 244 seconds]
jeffmo has quit [Quit: jeffmo]
d0nn1e has quit [Ping timeout: 252 seconds]
agarwal1975 has joined #ocaml
d0nn1e has joined #ocaml
zpe has quit [Remote host closed the connection]
nojb has quit [Read error: Connection reset by peer]
jeffmo has joined #ocaml
jeffmo has quit [Client Quit]
orbifx has joined #ocaml
ryanartecona has quit [Quit: ryanartecona]
ryanartecona has joined #ocaml
vapid has joined #ocaml
orbifx has quit [Ping timeout: 250 seconds]
ryanartecona has quit [Quit: ryanartecona]
AlexRussia has quit [Ping timeout: 240 seconds]
lukky513 has joined #ocaml
yomimono has quit [Ping timeout: 240 seconds]
AlexRussia has joined #ocaml
blind44 has joined #ocaml
NaCl has joined #ocaml
blind44 has quit [Remote host closed the connection]
Xizor has joined #ocaml
TheLemonMan has joined #ocaml
blind44 has joined #ocaml
blind44 has quit [Remote host closed the connection]
five776 has joined #ocaml
agarwal1975 has quit [Quit: agarwal1975]
agarwal1975 has joined #ocaml
Simn has quit [Ping timeout: 265 seconds]
ryanartecona has joined #ocaml
yomimono has joined #ocaml
agarwal1975 has quit [Quit: agarwal1975]
yomimono has quit [Ping timeout: 255 seconds]
zpe has joined #ocaml
nore has joined #ocaml
AlexRussia has quit [Ping timeout: 276 seconds]
freusque has joined #ocaml
SpaceSheep has joined #ocaml
AlexRussia has joined #ocaml
freusque has quit [Read error: No route to host]
shinnya has joined #ocaml
hcarty has quit [Quit: WeeChat 1.5]
TheVoid has quit [Ping timeout: 240 seconds]
ee_ks1 has quit [Quit: Leaving.]
AlexRussia has quit [Ping timeout: 250 seconds]
slash^ has quit [Read error: Connection reset by peer]
natimic has joined #ocaml
TheVoid has joined #ocaml
sh0t has quit [Ping timeout: 252 seconds]
octachron has joined #ocaml
kakadu has joined #ocaml
AlexDenisov has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
AlexRussia has joined #ocaml
sh0t has joined #ocaml
freusque has joined #ocaml
freusque has quit [Read error: Connection reset by peer]
freusque has joined #ocaml
tane has joined #ocaml
gautv has joined #ocaml
pyon has quit [Quit: brb]
pyon has joined #ocaml
zpe has quit [Remote host closed the connection]
Simn has joined #ocaml
kakadu2 has joined #ocaml
freusque has quit [Ping timeout: 244 seconds]
freusque has joined #ocaml
bruce_r has quit [Ping timeout: 250 seconds]
TheVoid has quit [Remote host closed the connection]
octachron has quit [Quit: Leaving]
kakadu2 has quit [Quit: Bye]
freusque has quit [Ping timeout: 250 seconds]
freusque has joined #ocaml
SpaceSheep has quit [Quit: WeeChat 1.5]
ggole has quit []
minn has joined #ocaml
Xizor has quit [Read error: Connection reset by peer]
freusque has quit [Read error: Connection reset by peer]
<gasche>
valexey: I'm not sure what we are expected to learn from the microbenchmark
<gasche>
what is the actual usage scenario that may be informed by these results?
<gasche>
microbenchmark tend to depend a lot on implementation choices that don't matter much for most other programs
jhaberku has joined #ocaml
<valexey>
gasche, I've tested ocaml to prove myself that there is no huge performance penalty for pure imperative tasks (image processing, dsp and so on) with ocaml. This is a very simple test: just bubble sort algo.
<Algebr`>
valexey: but it doesn't so anything conclusive...
<valexey>
And this test have been successfully passed by ocaml. For me.
<valexey>
And it was failed by haskell.
<vapid>
rip
<valexey>
As expected.
<vapid>
how badly did the unsafe haskell version perform in comparison to ocaml?
<valexey>
2.14 sec haskell version VS 1.03 sec ocaml
<vapid>
also i kinda get the feeling that forM_ is really slow for for loops
<Algebr`>
I also don't think that's the fastest possible haskell code
<valexey>
Yep. But anyway haskell needs too much effort from programmer to write hipref imperative code for such tasks.
<valexey>
Actually I do't know ocaml (2 days learning) and this code (1.03 sec) was the second code iteration.
<valexey>
By contrast: haskell code have been written by programmer who knows (and sometimes uses) haskell about 10 years.
<valexey>
And there were about 5 code iterations.
freusque has quit [Read error: Connection reset by peer]
freusque has joined #ocaml
<jhaberku>
Immutable data structures, or array mutation and stuff?
<valexey>
array mutation & co
<gasche>
valexey: did you try Haskell's LLVM backend?
<gasche>
it should do well on that stuff
<gasche>
(ghc -fllvm ...)
d0nn1e has quit [Ping timeout: 240 seconds]
<valexey>
gasche, nop. I'll try
d0nn1e has joined #ocaml
<valexey>
so, it does't work:
<valexey>
$ ghc -fllvm -O3 bubble_unsafe_array.hs
<valexey>
[1 of 1] Compiling Main ( bubble_unsafe_array.hs, bubble_unsafe_array.o )
<valexey>
Currently only 3.7 is supported.
<valexey>
You are using an unsupported version of LLVM!
<valexey>
We will try though...
<valexey>
opt: /tmp/ghc22577_0/ghc_2.ll:15:29: error: expected comma after alias's type
<valexey>
@__stginit_Main = alias i8* bitcast (%__stginit_Main_struct* @__stginit_Main$def to i8*)
<valexey>
^
<valexey>
`opt' failed in phase `LLVM Optimiser'. (Exit code: 1)
<valexey>
too much effort for performance haskell code :-)
<vapid>
i mean
<Algebr`>
uh
<vapid>
im pretty sure that forM still makes a list
<vapid>
and takes numbers out of it one at a timw
<vapid>
e
<vapid>
and is the main reason for it being slow
<valexey>
I remember one report about FP usage in one project. They tried to move from C++ to something else. At first they rewrote their production code to haskell. It was 10x times slower then C++, and after optimizations in haskell code it was 3x slower.
<valexey>
After that they rewrote this code to ocaml. It had the same performance as C++ code and was 5 times shorter.