<thelema>
It's a stop & copy collector, not concurrent GC
<alexyk>
I mean we do need to make Dr Harrop happy, don't we? We have an obligation. OCaml must match F#'s concurrency.
<thelema>
concurrency is fine. multi-process concurrency.
<alexyk>
thelema: interesting; but am not sure the same as discussed on the list...
<alexyk>
thelema: what do you have against threads?
<thelema>
I just don't like them. I'm happier with processes.
<alexyk>
thelema: you probably don't need them either :)
<thelema>
true
jonafan has quit [Ping timeout: 268 seconds]
<alexyk>
I switched to Clojure a while ago for, among other things, its concurrency. Beautiful and well thought-through. pmap and STM are very elegant and mash with the immutability; can't see why OCaml can't borrow them verbatim.
<thelema>
probably no real reason, other than that you wouldn't easily get multiple processors working at the same time easily
<alexyk>
thelema: I replace map by pmap and get a good speedup. Makes me happy!
<alexyk>
may be not linear -- on an 8 CPU box I can get anywhere from 2x to 8x -- but often sensible
<alexyk>
I tried Scala's agents which were buggy and not as easy to plug in; Clojure's model is clean and it works.
<alexyk>
but of course I have anti-JVM cravings every day for slowness in general. If OCaml is fast, it should be even faster with concurrency.
<dark>
alexyk, the problem is the GC AFAIK
<dark>
you need to stop the whole world in order to collect
<alexyk>
dark: yeah, this is what I was hoping for, 3.12 and some better GC. So, that oc4mc -- what's wrong with it so it didn't make it into 3.12?
<dark>
I don't know. I heard this is just a hard problem
<thelema>
oc4mc is very prototype-quality code
<dark>
people that develop compilers for FP languages already solved a lot of hard problems, so I think this problem should be solved eventually, too o.o
<dark>
I would like to work with this kind of thing, btw :t
<dark>
hmm, compilers in general were improved
<alexyk>
dark: Clojure and F# are FP languages with pretty good concurrency.
<alexyk>
not to mention Erlang of course
<alexyk>
clojure really kicks ass, but I'm ambivalent on dynamicity
<alexyk>
there's no pain developing, until you get a Null Pointer Exceltion
<alexyk>
Exception
<dark>
alexyk, .NET runtime has pretty good concurrency?
<dark>
hmm, and where's the catch?
<alexyk>
dark: Dr Harrop says it's superb
<dark>
alexyk, does he work at microsoft :) ?
<drk-sd>
:D
krankkatze has joined #ocaml
<alexyk>
dark: nope, but overall folks say .NET has pretty good concurrent tools
<alexyk>
I just don't want to invest into .NET
<dark>
i will not invest into .NET
<dark>
i'm getting sad that bitC folks will invest into it @.@
<Associat0r>
what's wrong with .NET?
<dark>
oh, nothing
<Associat0r>
BitC isn't investing in .NET, it's just one of the VM's it will support
<dark>
^^
The_third_man has joined #ocaml
<dark>
i think it will be the first
Managaia has joined #ocaml
<Associat0r>
well he has to start somewhere
Managaia has left #ocaml []
<dark>
but that's ok; everyone should use the tools that finds interesting
<dark>
there may be problems with software patents, but I don't think it could harm bitC
<Associat0r>
there are no problems with patents
<Associat0r>
also the CLR has TCO and user defined struct support
<dark>
microsoft threatened in the past without reasonable cause
<alexyk>
anyone tried bitC?
<dark>
i just read docs o.o the syntax is being finished
<alexyk>
when 9 people program in it, I'll be the 10th to try :)
<alexyk>
but, I started the rsync... it pulls a .hg repo too
thieusoai has quit [Quit: Leaving]
<Associat0r>
dark: well they made some agreement to not sue anyone
<Associat0r>
dark: I don't see the problem
<alexyk>
no toplevel README... (ominous music playng)
<dark>
alexyk, hmm, i read a very nice doc, and i'm following the discussion at the bitc-dev mailing list.. (and adding some silly comments). i would use the language, i liked it
<dark>
currently i have no use for it
<alexyk>
dark: there's a doc/ subdir, but no toplevel README correlates with 5 more years of obscurity
<dark>
alexyk, they don't want to encourage actual use, because it's not ready, semantics (and specially syntax) may/will change
<alexyk>
the secret of success: host on github; have a toplevel README; and an instructional video! (kidding)... ah ok
<alexyk>
but compiling into C sounds like a good idea
<dark>
it's just for bootstrapping
<alexyk>
except, C is different everywhere. Compiling into Java is a safer idea
<alexyk>
except Java sucks...
<alexyk>
no shiny path here
<dark>
bitC->C isn't efficient
<dark>
alexyk, hmm, no, C has a "safe" subset.. you just can't rely on alignment, sizes, etc
<alexyk>
dark: exactly. That's the main reason people painfully use Java, when they have no time for iddefs
<alexyk>
ifdefs
<dark>
in fact, if you don't rely in anything that is 'undefined', your program will be fine
<alexyk>
well, look at any GNU project; autoconf and crap -- Java may be ugly, but all that nightmare is gone
<alexyk>
I wonder what will change with wide adoption of C99 and C++0x, but probably not all incompatibility will be gone
<alexyk>
is bitC a liso?!
<alexyk>
lisp??
<dark>
not really
<dark>
they are planning a concrete C-like syntax right now
<orbitz>
C99 is unlikley to be widely adopted
<orbitz>
MS won't support it
<dark>
lisp is just easier to design a new language, because the scope of variables are usually explicit (those extra parenthesis are there for a reason)
<dark>
orbitz, really? @.@
<dark>
orbitz, i wonder why
<dark>
but still, gcc will probably support it someday..
<orbitz>
dark: because ther eis no point
<orbitz>
meh, C99 support in GCC is pretty stalled form what I see
<orbitz>
C99 relaly just doesn't offer much value, no tlike C++1x
<dark>
orbitz, but, but.. :P
<Associat0r>
dark: it also got it's start from a lang with lisplike syntax
_unK has quit [Remote host closed the connection]
<orbitz>
C++1x is going to be a major cluster fuck
<Associat0r>
orbitz: why?
<orbitz>
it's huge
<orbitz>
and they elft out Concepts, probably one of the best things in tehre
<orbitz>
an dit's increadibly complicated
<dark>
was the old version of C++ completely implemented by anyone?
<orbitz>
comaeu claims it
<dark>
it's not open source.. it's harder to claim completeness then, i guess
<orbitz>
well being open source done'a tmatter, you can just run it thought tests designed to test teh language
<orbitz>
probably easier than rooting around teh code too
<dark>
exhaustive testing is very complicated, specially for something as complex as the C++ spec
<dark>
if you were talking about verification i would believe, but even that, C++ has no formal specification (afaik)
<orbitz>
readign teh code for every case is just as hard
<orbitz>
what do you eman by formal specification?
<orbitz>
the stnadard has EBNF
<dark>
this is just a grammar, right?
<orbitz>
yes
<dark>
i mean formal semantics, ala SML
<orbitz>
do you mean stating what actions are defined/udnefined/impelemtnation defined?
<dark>
no, i mean, if the spec is mathematically defined, you can use a theorem prover (like isabelle or coq) for proving that a certain implementation is completely correct
<dark>
that is a path that seems more safe than relying on tests, but i may be wrong
<orbitz>
ah
boscop has quit [Ping timeout: 245 seconds]
sshc has quit [Quit: leaving]
valross has joined #ocaml
Morphous has quit [Ping timeout: 258 seconds]
Morphous has joined #ocaml
sshc has joined #ocaml
valross has quit [Remote host closed the connection]
valross has joined #ocaml
onigiri_ has joined #ocaml
enthymeme has joined #ocaml
onigiri__ has quit [Ping timeout: 265 seconds]
Associat0r has quit [Quit: Associat0r]
alexyk has quit [Quit: alexyk]
goomba has quit []
alexyk has joined #ocaml
valross has quit [Remote host closed the connection]
caligula_ has joined #ocaml
caligula__ has quit [Ping timeout: 246 seconds]
smimou has quit [Ping timeout: 246 seconds]
smimou has joined #ocaml
thrasibule has quit [Ping timeout: 276 seconds]
drk-sd has quit [Quit: foo]
dark has quit [Ping timeout: 265 seconds]
ulfdoz has joined #ocaml
dark has joined #ocaml
<adrien>
alexyk: the concurrent GC *prototype* is still under developpement and had some (nice) changes since it was presented along with its results, in its current form it's not stable however
<adrien>
alexyk: also, the dev team really needs people to test it and report it
wormphlegm has joined #ocaml
wormphlegm has quit [Client Quit]
Shoggoth_ has joined #ocaml
Shoggoth_ has quit [Read error: Connection reset by peer]
alexyk has quit [Quit: alexyk]
Shoggoth has quit [Read error: Connection reset by peer]
<adrien>
could someone start harassing me in 6 hours and only stop when I'm cleaning the ocaml meeting recodrdings or transcripting them?
<adrien>
(I keep forgetting =/ )
Shoggoth has joined #ocaml
valross has joined #ocaml
Shoggoth has quit [Remote host closed the connection]
Shoggoth has joined #ocaml
Shoggoth has quit [Read error: Connection reset by peer]
Shoggoth has joined #ocaml
Shoggoth has quit [Remote host closed the connection]
Shoggoth has joined #ocaml
ygrek has joined #ocaml
det has joined #ocaml
ulfdoz has quit [Ping timeout: 264 seconds]
enthymeme has quit [Quit: rcirc on GNU Emacs 23.1.1]
ttamttam has joined #ocaml
ikaros has joined #ocaml
__init__ has joined #ocaml
Shoggoth has quit [Remote host closed the connection]
Shoggoth has joined #ocaml
__init__ has left #ocaml []
ttamttam has quit [Quit: Leaving.]
ftrvxmtrx has quit [Quit: Leaving]
enthymeme has joined #ocaml
dark has quit [Remote host closed the connection]
oc13 has joined #ocaml
Shoggoth_ has joined #ocaml
Shoggoth_ has quit [Read error: Connection reset by peer]
ttamttam has joined #ocaml
oc13 has quit [Quit: Leaving.]
ftrvxmtrx has joined #ocaml
avsm1 has quit [Quit: Leaving.]
spearalot has joined #ocaml
munga_ has joined #ocaml
barismetin has joined #ocaml
barismetin has quit [Changing host]
barismetin has joined #ocaml
barismetin has quit [Client Quit]
barismetin has joined #ocaml
Yoric has joined #ocaml
spearalot has quit [Quit: Computer has gone to sleep]
spearalot has joined #ocaml
begonzo has joined #ocaml
patronus has quit [Ping timeout: 240 seconds]
begonzo has quit [Remote host closed the connection]
<gildor>
adrien: if you can find a way to do it so that I can apply almost the same techniques on the video we did in the morning, that will be perfect
komar_ has joined #ocaml
kaustuv has joined #ocaml
spearalot has quit [Quit: Computer has gone to sleep]
spearalot has joined #ocaml
Submarine has joined #ocaml
patronus has joined #ocaml
maattd has quit [Remote host closed the connection]
* Shoggoth
has been called away by it's master: Gone away for now
patronus has quit [Quit: leaving]
Submarine has quit [Ping timeout: 265 seconds]
patronus has joined #ocaml
spearalot has quit [Quit: Computer has gone to sleep]
sepp2k has joined #ocaml
avsm has joined #ocaml
spearalot has joined #ocaml
* Shoggoth
has been awakened.
orbitz_ has joined #ocaml
orbitz has quit [Ping timeout: 264 seconds]
Mr_Awesome has quit [Ping timeout: 265 seconds]
Mr_Awesome has joined #ocaml
munga__ has joined #ocaml
munga__ has quit [Client Quit]
munga_ has quit [Ping timeout: 258 seconds]
ikaros has quit [Quit: Leave the magic to Houdini]
enthymeme has quit [Quit: rcirc on GNU Emacs 23.1.1]
Shoggoth has quit [Remote host closed the connection]
Shoggoth has joined #ocaml
spearalot has quit [Quit: -arividerchi]
boscop has joined #ocaml
onigiri__ has joined #ocaml
onigiri_ has quit [Ping timeout: 252 seconds]
<kaustuv>
thelema: are you planning to extend pcre-ocaml to char bigarrays?
<flux>
adrien, harass. harass!
<adrien>
^^
* adrien
just got back, eat first!
itewsh has joined #ocaml
<flux>
no time for eating, it's time for transcribing!
<adrien>
hahaha
<adrien>
want to help? :P
<f[x]>
ocsigen.xhtml -> ocsigen_xhtml, debian findlib package name, very funny indeed. What about backward compatibility?
Associat0r has joined #ocaml
<f[x]>
could at least provide ocsigen.xhtml with requires="ocsigen_xhtml"
<mehdid>
f[x]: submit a bug report (either against the Debian package or ocsigen itself)
th5 has joined #ocaml
<f[x]>
sure, just whining aloud :)
krankkatze has quit [Remote host closed the connection]
<mehdid>
sure
Associat0r has quit [Read error: Connection reset by peer]
Associat0r has joined #ocaml
<gildor>
all: there are 2 job opportunities on Jobs board of the OCaml dev. LinkedIn group (sorry for the noise)
_unK has joined #ocaml
Yoric has quit [Read error: Connection reset by peer]
Yoric has joined #ocaml
komar_ has quit [Quit: WeeChat 0.2.6]
krankkatze has joined #ocaml
orbitz_ has quit [Quit: Reconnecting]
orbitz has joined #ocaml
The_third_man has left #ocaml []
<adrien>
gildor: it's going to make me angry: it looks like I had a better recording quality when I used my headphones as an input than when I used the cable and hooked it up the room's sound system
* adrien
blames impedance mismatches
komar_ has joined #ocaml
<sgnb>
f[x]: ocsigen.xhtml also disappeared upstream...
<sgnb>
(in ocsigen 1.3.1)
alexyk has joined #ocaml
<sgnb>
(it mehdid's fault, btw)
<f[x]>
that makes me think that including dependencies in source code tree is actually a good idea
<sgnb>
f[x]: why?
<f[x]>
don't break behind my back
<sgnb>
well... you don't have to update your system either...
<adrien>
still looking for something that'd let me anaylyse an audio signal, especially "substracting" spectrums
<gildor>
f[x]: using "OASIS -dev" when creating an application is very nice, you can add library dependencies just with a simple edit of _oasis and get it automatically set everywhere
<gildor>
f[x]: the only drawback is that you start using a lot of libraries with this method
<gildor>
;-)
goomba has joined #ocaml
drk-sd has joined #ocaml
barismetin has quit [Ping timeout: 276 seconds]
ccasin has joined #ocaml
barismetin has joined #ocaml
alexyk has joined #ocaml
thieusoai has joined #ocaml
_andre has joined #ocaml
ikaros has joined #ocaml
<adrien>
might end up transcripting: it's hard to remove the noise without removing the speaker voice too
<thelema>
adrien: it's *much* easier to get the recording right the first time than to go back and clean it up to remove constant noise
<adrien>
thelema: the sad part is that at first, I was using my music player (which is actually more than that) and my headphones and the recording is really good but then I plugged my music player into the room's sound system, thinking the sound would be better, and it's not
<gildor>
adrien: don't spend too much time on this, the sound of the video should be ok
<gildor>
adrien: I think that we found the right spot to have the better amplification during the meeting
<gildor>
adrien: even those who didn't hold the mic in front of them have a correct sound
<adrien>
ok, it's good then :-)
<gildor>
adrien: ping me tonight with this URL, sound files are stored at home and tmy computer is currently off
<adrien>
the part that's missing was testing on a computer to get the best place/setting (sounded fine on my headphones)
<adrien>
ok, will do
<adrien>
hmmm, might not be there until quite late actually (but will find a way)
<gildor>
no pb, I am writing the software to extract meta information from my video recorder and convert them to something Debian friendly
<gildor>
(in OCaml of course)
ftrvxmtrx has quit [Quit: Leaving]
<gildor>
so there is nothing urgent
alexyk has quit [Quit: alexyk]
<adrien>
heheh :P
drk-sd has quit [Quit: prolo]
<gildor>
sound is in AC3... not debian friendly
barismetin has quit [Remote host closed the connection]
<adrien>
well, my recordings are .wma files, dunno if it's better :P
<gildor>
will convert it anyway
maattd has joined #ocaml
barismetin has joined #ocaml
barismetin has quit [Remote host closed the connection]
barismetin has joined #ocaml
_zack_ has quit [Ping timeout: 246 seconds]
mehdid has quit [Ping timeout: 240 seconds]
_zack has joined #ocaml
mehdid has joined #ocaml
alexyk has joined #ocaml
th5 has quit [Quit: th5]
th5 has joined #ocaml
mbishop_ has joined #ocaml
sepp2k has quit [Remote host closed the connection]
mbishop has quit [Ping timeout: 265 seconds]
kaustuv has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
ttamttam has quit [Quit: Leaving.]
derdon has joined #ocaml
lokydor has joined #ocaml
itewsh has quit [Quit: Quitte]
barismetin has quit [Quit: Leaving...]
ztfw has joined #ocaml
mbishop_ has quit [Ping timeout: 240 seconds]
Yoric has quit [Quit: Yoric]
_andre has quit [Quit: Lost terminal]
f[x] has quit [Ping timeout: 248 seconds]
albacker has joined #ocaml
ttamttam has joined #ocaml
mbishop_ has joined #ocaml
dmhouse has joined #ocaml
<dmhouse>
Hi guys. I'm completely new to OCaml and am looking for feedback on the first function I've written -- mostly stylistically, as in whether this is idiomatic, whether there are any syntactic shortcuts I'm missing et.