__DL__ changed the topic of #ocaml to: OCaml 3.09.0 available! Archive of Caml Weekly News: http://sardes.inrialpes.fr/~aschmitt/cwn/ | A free book: http://cristal.inria.fr/~remy/cours/appsem/ | Mailing List: http://caml.inria.fr/bin/wilma/caml-list/ | Cookbook: http://pleac.sourceforge.net/
rq has joined #ocaml
shirogane has quit [Read error: 104 (Connection reset by peer)]
shawn has quit [Read error: 104 (Connection reset by peer)]
humasect has joined #ocaml
bluestorm has quit [Remote closed the connection]
Revision17 has quit [Read error: 110 (Connection timed out)]
<humasect> why would the default 3.09 toplevel segfault whenever i call something undefined? ("something ();;" or "quit ;;" for example)
<humasect> could exception reporting be broken? cygwin machine here.
<humasect> *breaking
pmdboi has joined #ocaml
<pmdboi> does anyone run any largely ocaml-related blogs?
Revision17 has joined #ocaml
Raziel has quit ["Yo soy goma. Tú eres cola."]
ski has quit [Read error: 104 (Connection reset by peer)]
ski has joined #ocaml
<humasect> fixed !
smimou has quit ["bli"]
<vincenz> hello
<vincenz> anyone use lablGL?
<vincenz> I don't know how to get it to work under cygwin
<humasect> doesn't it need lablTK (and cygwin x11.. which might not have hw GL)?
<vincenz> not certain
<vincenz> it uses glut
<vincenz> which I think doesn't require tk
exa has quit [Remote closed the connection]
<vincenz> so no
<vincenz> no tk
<vincenz> the problem is that there is no makefile for it
<vincenz> there is a makefile for mingw and native
<vincenz> but not for cygwin
<vincenz> also I'm having an issue of the fully native port of ocaml..whenevre I use unix...and build natively it complains about a lacking wsock32.lib
<humasect> i use the mingw one for those cases
<vincenz> why?
<humasect> native without cygwin port? i use cygwin port for now.
<humasect> becuase mingw is mostly the same as cygwin
<vincenz> well seeing I Can't use lablGL...
<humasect> cygwin "comes" with mingw
<vincenz> in cygwin
<humasect> yeah.. i'm doing my own GL bindings
<vincenz> I tend to use cygwin typicall
<vincenz> how so?
<humasect> *did. i like glVertex2f syntax more than GL.glVertex or what it was.
<vincenz> can't you just make a proper makefile?
<humasect> and i have wrote code for doing vertex arrays of my own
<vincenz> and I want glut
revision17_ has joined #ocaml
<vincenz> basically I want to experiment a bit with soft bodies and cloth simulation in ocaml
<humasect> i don't see why not
<vincenz> I assume it'd be like the linux one except not use X11
<vincenz> I tried making with the linux makefile ot no avail
<humasect> i don't think i've got lablGL to work right at its current version, i was pretty satisfied with the haskell builtin opengl bindings
<vincenz> hmm
<vincenz> don't use haskell
<humasect> yeah no thanks..
<humasect> GlDraw.ends ();
<humasect> I am not sure why the API was made this way.
<humasect> cygwin comes with glut
<vincenz> I'll look at the makefile
<humasect> mingw ? ok
<vincenz> lablgl is missing one for cygwin :(
<vincenz> I just use a mingw makefile?
<humasect> yeah, that's what i do
<vincenz> I don't think so
<vincenz> it uses special checks
<humasect> (when i see one and no cygwin)
<vincenz> to see which version it is
<vincenz> by looking in the binary
<vincenz> I assume mingw has a different signature than cygwin
<humasect> ..
<humasect> cygwin has mingw as well..
<vincenz> well
<vincenz> it detects it as windows
<vincenz> and then it won't work
<humasect> under bash ?
<vincenz> basically it does something in the makefile
<vincenz> to check if it's mingw or windows
<vincenz> and defaults to windows
<vincenz> I think it must compile a dud program
<vincenz> and then look at the binary
* vincenz shrugs
<vincenz> haven't looked at it in depth
<humasect> ok edit the linux one
<humasect> that would be closest .. it is rare for a mingw to check for mingw..
<vincenz> linux one uses x11 include files
<humasect> =(
<humasect> maybe it will be happy enough if you install cygwin x11
<humasect> but using cygwin glut for win32
<humasect> *hence
<vincenz> you know anything about soft body simulation?
<humasect> somewhat
<humasect> springs and concept
<vincenz> yeah
<vincenz> that for I have gotten
<vincenz> I'm just not certain how to calculate the forces on impac
<vincenz> impact
<humasect> that far i have gotten? that i have forgotten?
Revision17 has quit [Read error: 110 (Connection timed out)]
<vincenz> as in... understood how it works
<humasect> ah
<humasect> so you want to experiment with ocaml and toplevel (with GL)?
<vincenz> nah
<vincenz> just write code
<humasect> ah
<vincenz> and run it
<humasect> yeah ok =)
<vincenz> don't need a toplevel
<vincenz> but I figure ocaml is a prime language
<vincenz> fast and easy to code in
<humasect> i respect the syntax now
<vincenz> I have some c++ sources but tehy're mainly for 2d and they don't deal with collision against other soft bodies
<humasect> ode does soft body, but that might not count for what you want to do. with an ocaml binding
<vincenz> I could prolly do the generic 3D case, just not sure how to do collision so I googled a bit but it's all pure math, no algorithms on how ot solve it
<humasect> yeah its maybe how you put the math in
<vincenz> the thing is... if you look at physics... you calculate the force of impact by using impulse equations
<vincenz> the problem is that these bodies deform so you can't calculate the final speed before you know the force and you need the final speed to find the force
<vincenz> impulse change/time
<humasect> ah so it solves forever ?
<vincenz> I doubt anyone uses a solver for it
<vincenz> that' would be too complicated
<vincenz> so I'm trying to find for a cheap algorithm that uses some approximate equatiosn
<humasect> hmm
<humasect> maybe 1 dimensional liquid is easier. =)
<humasect> er *n
<humasect> it's the same thing isn't it, soft bodies and liquid. different properties
<humasect> in the implementation side, maybe it's all under "fluid dynamics" or something.
<vincenz> no
<humasect> ok
<vincenz> the model I looked at doesn't use fluid equations
<vincenz> but a more simpler pressure model
<vincenz> basically a cloth countaining a generic pressure
descender has joined #ocaml
<humasect> hmm, i don't think i can help on that
revision17_ has quit [Read error: 110 (Connection timed out)]
<dylan> I don't suppose anyone knows of an ocaml library for STM (software transactional memory)?
pango__ has joined #ocaml
malc_ has quit ["leaving"]
pango_ has quit [Read error: 110 (Connection timed out)]
pango__ is now known as pango
Revision17 has joined #ocaml
quamaretto has quit [Client Quit]
humasect has quit ["Leaving.."]
Smerdyakov has quit ["Leaving"]
mkhl has quit []
rq has quit ["Leaving"]
rq has joined #ocaml
Snark has joined #ocaml
Submarine has joined #ocaml
shawn_ has joined #ocaml
Maledict has joined #ocaml
revision17_ has joined #ocaml
m3ga has joined #ocaml
m3ga has quit [Client Quit]
rillig has joined #ocaml
Revision17 has quit [Read error: 110 (Connection timed out)]
schlick has left #ocaml []
smimou has joined #ocaml
__DL__ has joined #ocaml
Schmurtz has joined #ocaml
Raziel has joined #ocaml
malc_ has joined #ocaml
mkhl has joined #ocaml
__DL__ has quit [Remote closed the connection]
__DL__ has joined #ocaml
kryptt has joined #ocaml
Maledict has quit [Read error: 110 (Connection timed out)]
enthalpyX has quit [Read error: 104 (Connection reset by peer)]
<flux__> dylan, I don't, but I know there's (on freshmeat?) an STM library for C, chances are it could be interfaced neatly with ocaml
<flux__> hm, however, I do wonder if it would require using native threads in that case
Raziel has quit ["Yo soy goma. Tú eres cola."]
Smerdyakov has joined #ocaml
kryptt has left #ocaml []
Skal has joined #ocaml
pmdboi has quit ["This computer has gone to sleep"]
Bigb[a]ng has joined #ocaml
pmdboi has joined #ocaml
pmdboi has quit ["This computer has gone to sleep"]
tom_p has quit [Read error: 110 (Connection timed out)]
ramkrsna has quit [Read error: 113 (No route to host)]
descender has quit [Remote closed the connection]
ramkrsna has joined #ocaml
rq has quit ["Leaving"]
rq has joined #ocaml
tom_p has joined #ocaml
tom_p has quit [Read error: 110 (Connection timed out)]
Bigb[a]ng is now known as Bigbang
quamaretto has joined #ocaml
zigong has joined #ocaml
KrispyKringle is now known as Goatboy
Goatboy is now known as KrispyKringle
rq has quit ["Leaving"]
Raziel has joined #ocaml
descender has joined #ocaml
kryptt has joined #ocaml
Boojum has joined #ocaml
tom_p has joined #ocaml
Boojum has quit ["Leaving"]
Snark has quit [Read error: 110 (Connection timed out)]
vodka-goo has joined #ocaml
mwc has joined #ocaml
rq has joined #ocaml
<mwc> Question about http://caml.inria.fr/pub/docs/manual-ocaml/manual038.html It says that threads are implemented internally, and so can't take advantage of SMP. On the otherhand, it claims there's a POSIX pthread implementation. That should be multiprocessor capable, right?
<malc_> mwc: only one thread running ocaml code can be active at a given time
<malc_> mwc: and as many threads of C as you wish
<mwc> Hmm, that's a pretty severe limitation
<Smerdyakov> POSIX specifies that implementations must take advantage of multiprocessors?
<mwc> well, no, but pthreads on OS X do
<Smerdyakov> Then I guess you agree that you've found no contradiction? :)
<mwc> so what, the runtime obtains a lock around the ocaml system everytime an ocaml thread starts to run?
<malc_> mwc: sortof
<Smerdyakov> Implementing threading for multi-processors with a garbage-collected runtime system is non-trivial.
<Smerdyakov> Implement it yourself if it's important to you. :)
<malc_> blah
<malc_> first nitpicking
<mwc> yeah, that's true, you need to use an MP GC
<malc_> then excuses
<malc_> than insult
<malc_> how childish
<Smerdyakov> I think OCaml's threads are lightweight, meaning that they are fundamentally different from usual pthreads.
<malc_> and you are wrong
<mwc> yeah, are there any heavyweight threads?
<Smerdyakov> Really? Too bad.
<malc_> there are vmthreads and native threads
<malc_> selectable at build time
<Schmurtz> Smerdyakov, ocaml threads do not allow full parallele working
<Smerdyakov> Schmurtz, I think that's what I just said
<Schmurtz> ok ;)
<mwc> yeah, so native threads. that's what I'm interested in. Guess we oughta put that on the req list for Ocaml 4.0
<Schmurtz> I did not read everything
<malc_> mwc: erm, why?
<pango> bytecode uses vmthreads, native binaries use pthreads. I don't think you have other choices
<malc_> pango: you can use sys OR vmthreads with bytecode
<pango> malc_: pthreads with bytecode ? didn't know that
<mwc> malc_, trying to take advantage of concurrency on G5's. I'm doing a design right now, and I'd like to be able to drop off worker threads
<pango> malc_: actually I think vmthreads with native could be useful too
<mwc> but if I can't do that, I need to rework my design or implement a diff't lang
<malc_> i'm perfectly happy with the way it's done now
<mwc> well, basically, I gain nothing from threading this way except a nicer design.
<Smerdyakov> Oh, is THAT all?
<malc_> if your threads do not block, you gain nothing
<Smerdyakov> malc_, that's not true. CML provides a nice way to structure programs.
<malc_> Smerdyakov: i'm not familar with CML to comment on that
<Schmurtz> Smerdyakov, what is CML ?
<malc_> Concurent ML one would assume
<Smerdyakov> Schmurtz, see the Event module of the OCaml thread library for a port in OCaml.
humasect has joined #ocaml
<Schmurtz> is it like using pipes, but with structured messages ?
<humasect> how does one develop with the repl and source files? "open Something" does not find ./something.ml if a #use file references it..
<Schmurtz> and with multiple write ends, and one read end ?
<Smerdyakov> Schmurtz, it's "typed rendezvous-based communication" at the primitive level.
<Smerdyakov> Schmurtz, but there is also the idea of user-constructible first-class communication events.
* Schmurtz is looking to an Event tutorial
<flux__> that Event-module is quite cool, imo
<Schmurtz> ocaml help it a bit to quick ;)
<Schmurtz> -it +is
<flux__> yeah, ocaml documentation didn't really reveal to me what it's all about
<Smerdyakov> Schmurtz, you might want to read John Reppy's conference paper on CML. (I forget the details of its publication.)
<flux__> but some cml examples on the web did it for me
mwc has left #ocaml []
<Schmurtz> I see what it is
<Schmurtz> It seems to be like runloops in Objective-C
<Smerdyakov> Do "runloops" give you a way to encapsulate synchronous events like CML does?
<Schmurtz> to respond to your question, I must know what is synchronous events ;)
<Schmurtz> in fact a runloop is a queue, you can post a event to ifunction
<Schmurtz> to it
<Smerdyakov> A CML event is something that might happen, and, if it does, produces a value of a known type.
<Schmurtz> each event is mapped to a function that is executed when the runloop has time
<Smerdyakov> That doesn't sound particularly related to CML.
<Smerdyakov> Examples of events are receiving a message, completing sending of a message, receiving one of a number of messages, making an HTTP query and retrieving the result, ...
<Schmurtz> so, it's the same thing
<Smerdyakov> Runloops allow you to call a function that waits for one of a number of messages to be received, and then returns with that message's value?
<Schmurtz> I don't know, I only used it for socket programming
<Schmurtz> I only respond to messages, and never send them
<Smerdyakov> What I just said has nothing to do with sending.
<Schmurtz> I've read your question again with more attention, but I don't know the answer
kryptt has quit ["Download Gaim: http://gaim.sourceforge.net/"]
vodka-goo has quit [niven.freenode.net irc.freenode.net]
vodka-goo has joined #ocaml
zigong has quit [Remote closed the connection]
rq has left #ocaml []
zigong has joined #ocaml
revision17_ has quit ["Leaving"]
tristram has quit [Remote closed the connection]
tristram has joined #ocaml
quamaretto has quit ["Leaving"]
quamaretto has joined #ocaml
Submarine has quit ["Leaving"]