gildor changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 3.12.1 http://bit.ly/nNVIVH
<thelema> you're looking for perfect?
<oriba> heheh
<oriba> I just want only the cyles
<oriba> without any entering graphs
<thelema> "entering graphs"?
<oriba> a -> b -> c -> d -> e -> c
<oriba> the I want only c -> d -> e -> c or c -> d -> e
<oriba> and not a -> b
<thelema> yes, of course.
<oriba> do you know how to do that?
<thelema> you have a directed graph, right?
<oriba> yes
<oriba> I tried with G.fold_vertex
<oriba> and Dfs.iter
<oriba> maybe somehow it can be done with marking
<thelema> yes, you'll want to implement it yourself on top of a marking graph
<oriba> hmhh
sebz has joined #ocaml
<oriba> thelema, there seem to be Mark and Marking
<Drakken> phoenixsun oops... yes I think that's the one I downloaded. Now I got the 404 too.
<thelema> oriba: I think you will be satisfied with strongly connected components, as provided here: http://ocamlgraph.lri.fr/doc/Components.Make.html
<oriba> hmhhh
<oriba> thelema, wikipedia says: "A directed graph is called strongly connected if there is a path from each vertex in the graph to every other vertex."
<oriba> but thats not true in my case
<oriba> I can have seperated connected regions
<oriba> some input end sin loop 1 , others in other loops
<thelema> yes, within a "loop" (correct term: cycle), there is a path from each vertex to each other.
<thelema> this subgraph forms a "strongly connected component"
<thelema> while the whole graph may not be strongly connected, every graph can be partitioned into strongly connected components.
<oriba> hmhh
<thelema> such that within each partition, one can follow transitions to get from any node to any other node
<oriba> but the http://ocamlgraph.lri.fr/doc/Components.Make.html only works on the seperated stuff?
<thelema> ? For your example: a -> b -> c -> d -> e -> c
<thelema> scc_list should return [[a][b][c;d;e]]
<thelema> or maybe the reverse of that.
<oriba> there is a -> b -> c -> d -> e -> c and k -> v -> x -> v and t -> q -> p -> g -> q
<oriba> aha
<oriba> scc_list hmhhh
<thelema> then you'll have [a; b; cde; k; vx; t;qpg]
<oriba> where is scc_list from?
<oriba> ah Components.Make
ousado has joined #ocaml
<oriba> thelema, it seems to work, just gives different order of the loop
<oriba> but it seems to be correct#
<oriba> I will try it with my original data
<oriba> thank you so far
<oriba> maybe just need a List.rev and it's done :-)
<oriba> but, hey... no... it only extracts ONE loop
<oriba> so the strongly connected issue is making trouble here
<oriba> because my stuff is not
<oriba> :(
<oriba> hmhh
<oriba> or it works.... if my loops are REALLY seperated, which they were not in the formeer test
<oriba> so I need to use it on my original data
struktured has quit [Quit: Konversation terminated!]
struktured has joined #ocaml
<oriba> thelema, I don't know why, but it does not work on my orig data :(
<oriba> maybe I should go to bed now
<oriba> nevertheless thank you
<thelema> ok, think about what you want more.
<oriba> it just detects no loops for me
<thelema> all singleton sets?
<oriba> AAA -> BDC -> AAA
<oriba> is not detected
<thelema> what's the result?
<oriba> all stuff is single
<thelema> AAA and BDC should be in the same connected component
arubin has joined #ocaml
<oriba> there is no component with Listlength > 1
<oriba> hence they are all single
<thelema> maybe the graph is constructed incorrectly?
<oriba> it looks correct, but maybe I'm too tired
<oriba> no clue
<thelema> sleep. it'll magically fix itself tomorrow.
<oriba> heheh , yes I hope so
<oriba> cu later
<oriba> bye
oriba has quit [Quit: oriba]
phoenixsun has quit [Ping timeout: 255 seconds]
emmanuelux has quit [Ping timeout: 244 seconds]
ski has quit [Ping timeout: 255 seconds]
dnolen has quit [Quit: dnolen]
struktured has quit [Ping timeout: 258 seconds]
arubin has quit [Quit: arubin]
struktured has joined #ocaml
dnolen has joined #ocaml
metasyntax|work has quit [Read error: Operation timed out]
metasyntax|work has joined #ocaml
ulfdoz has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
yezariaely has joined #ocaml
ulfdoz has quit [Ping timeout: 255 seconds]
dnolen has quit [Quit: dnolen]
sebz has joined #ocaml
emmanuelux has joined #ocaml
sebz has quit [Quit: Computer has gone to sleep.]
struktured has quit [Read error: Connection reset by peer]
ankit9 has quit [Quit: Leaving]
Kakadu has joined #ocaml
emmanuelux has quit [Ping timeout: 240 seconds]
hto has joined #ocaml
ttamttam has joined #ocaml
<yezariaely> anyone knows of a programming language / lambda calculus / types channel in irc somewhere?
struktured has joined #ocaml
ftrvxmtrx has joined #ocaml
yezariaely has quit [Quit: Leaving.]
yezariaely has joined #ocaml
yezariaely1 has joined #ocaml
yezariaely1 has quit [Client Quit]
yezariaely1 has joined #ocaml
yezariaely has quit [Ping timeout: 255 seconds]
ankit9 has joined #ocaml
ikaros has joined #ocaml
ttamttam has quit [Ping timeout: 248 seconds]
ikaros has quit [Quit: Ex-Chat]
Cyanure has joined #ocaml
edwin has joined #ocaml
rby has joined #ocaml
Cyanure has quit [Remote host closed the connection]
<Kakadu> Hi men!
<Kakadu> How to say correctly in english "... that inequality (2.3) holds where x=epsilon"?
mcclurmc has quit [Excess Flood]
mcclurmc has joined #ocaml
ikaros has joined #ocaml
hto has quit [Quit: Lost terminal]
hto has joined #ocaml
Cyanure has joined #ocaml
probst has joined #ocaml
Axioplase_ has quit [Quit: brb]
Axioplase has joined #ocaml
Axioplase is now known as Axioplase_
ttamttam has joined #ocaml
raichoo has joined #ocaml
<yezariaely1> Kakadu: why not using the sentence you mentioned?
yezariaely1 has quit [Ping timeout: 260 seconds]
yezariaely has joined #ocaml
_andre has joined #ocaml
raichoo has quit [Quit: leaving]
raichoo has joined #ocaml
<Kakadu> yezariaely: If u think that it is correcly constructed I'm glad
<yezariaely> Kakadu: I would use, "if x=epsilon" but I am not a native english speaker...
ikaros has quit [Ping timeout: 240 seconds]
destrius has quit [Quit: Leaving.]
<tomprince> depends on the intent, "where" "when" or "if" would all work
<tomprince> I'd use "where" like a postfix let binding
<tomprince> "when" when x is a paramter of (2.3)
<tomprince> and "if" when x=epsilon is some sort of side condition.
ttamttam has quit [Remote host closed the connection]
bwright has joined #ocaml
<Kakadu> tomprince: thanks!
sepp2k has joined #ocaml
emmanuelux has joined #ocaml
_andre has quit [Quit: leaving]
_andre has joined #ocaml
yroeht has quit [Ping timeout: 255 seconds]
yroeht has joined #ocaml
hto has quit [Read error: Operation timed out]
ikaros has joined #ocaml
ftrvxmtrx has quit [Quit: Leaving]
ftrvxmtrx has joined #ocaml
hto has joined #ocaml
oriba has joined #ocaml
hto has quit [Ping timeout: 245 seconds]
hto_ has joined #ocaml
probst has quit [Quit: probst]
ski has joined #ocaml
probst has joined #ocaml
probst has quit [Client Quit]
probst has joined #ocaml
_habnabit has quit [Quit: ZNC - http://znc.sourceforge.net]
_habnabit has joined #ocaml
lusory has quit [Remote host closed the connection]
thomasga has joined #ocaml
cago has joined #ocaml
Kakadu has quit [Quit: Page closed]
<oriba> WTF! uing ocamlgraph instead my own implementation, I could not even compare speed, because I got a Segfault!
<oriba> s/uing/using/
<adrien> in ocamlgraph?
<oriba> yes looks like that
<adrien> gdb stacktrace?
<oriba> for smaller data set ocamlgraph is faster
<oriba> but for my large datasets it crashes
<adrien> how much mem used?
<oriba> will try with gdb, moment
<oriba> adrien, here is thje backtrace http://paste.pocoo.org/show/515353/
<oriba> libc...?!
<adrien> stack overflow maybe
<oriba> hmhh
<f[x]> List.map is not tail-recursive
<f[x]> find what is using it
<f[x]> and beat the author with a stick
<oriba> Stack overflow would be OCaml exception
<f[x]> oriba, in bytecode
<oriba> hmhhh
<oriba> oh
<f[x]> in nativecode it is a roulette
<oriba> oh, really?!
<oriba> bad
<adrien> actually you could try it in bytecode and change the stack size and see if it changes how/when it crashes
<oriba> I can check this with bytecode recompilation
<oriba> does ocamlgraph use List.map?
<oriba> I also used List.map for the new code... hmhh
<adrien> isn't ocamlgraph using functors? with code which you provide?
<adrien> is "RD" something from you?
<oriba> Stack_overflow !
<oriba> what is "RD"?
<oriba> I will change my List.map stuff to List.rev_map
<oriba> maybe it's not ocamlgraph, here
<adrien> RD could be from ocamlgraph's code too; I don't know but if it's from your code, the crasher is probably from your code too
<oriba> yes, it looks like that
<oriba> sorry for the ocamlgraph-blaming
<adrien> heh, it's natural to do that =)
sebz has joined #ocaml
<oriba> hehe, thanks for your understanding :)
<oriba> I used List.rev_map now
<oriba> and the segfault is gone :)
nixfreak has joined #ocaml
<adrien> plus, segfaults are always quite surprising in ocaml
ikaros has quit [Ping timeout: 244 seconds]
ankit9 has quit [Ping timeout: 248 seconds]
ikaros has joined #ocaml
<oriba> normally I use Ocaml NOT to get segfaults
<oriba> but in native code this seems to be not always working
<oriba> most often I used bytecode
<oriba> but this time I needed more speed
<oriba> ocamlgraph is much faster than my ad-hoc implementation...
<oriba> n = 10: my: 47 sec, ocamlgraph: 26 sec; n = 11: my: 3m51, ocamlgraph: 1m57
<oriba> so, it's convincing
<oriba> need to go for noe; thx all for pointing me into the right direction... need to remember the always-use-tailrec-rule ;-)
<oriba> s/noe/now/
oriba has quit [Quit: oriba]
yezariaely has quit [Quit: Leaving.]
Cyanure has quit [Remote host closed the connection]
raichoo has quit [Ping timeout: 260 seconds]
ankit9 has joined #ocaml
struktured has quit [Ping timeout: 252 seconds]
struktured has joined #ocaml
nixfreak has quit [Ping timeout: 240 seconds]
ousado_ has joined #ocaml
ousado has quit [Ping timeout: 258 seconds]
ousado_ is now known as ousado
ousado has quit [Changing host]
ousado has joined #ocaml
struktured has quit [Read error: Operation timed out]
struktured has joined #ocaml
ftrvxmtrx has quit [Quit: Leaving]
cago has quit [Quit: Leaving]
spearalot has joined #ocaml
EmmanuelOga has quit [Ping timeout: 248 seconds]
EmmanuelOga has joined #ocaml
ulfdoz has joined #ocaml
_habnabit has quit [Changing host]
_habnabit has joined #ocaml
struktured has quit [Ping timeout: 240 seconds]
ikaros has quit [Quit: Ex-Chat]
struktured has joined #ocaml
pcjoby has left #ocaml []
struktured has quit [Read error: Connection reset by peer]
rbancroft has joined #ocaml
Anarchos has joined #ocaml
ikaros has joined #ocaml
nixfreak has joined #ocaml
ijp has joined #ocaml
sepp2k1 has joined #ocaml
sepp2k has quit [Ping timeout: 244 seconds]
raichoo has joined #ocaml
fraggle_laptop has joined #ocaml
nixfreak has quit [Ping timeout: 244 seconds]
Drakken has left #ocaml []
nixfreak has joined #ocaml
ftrvxmtrx has joined #ocaml
<_habnabit> anyone know of an ocaml linter? I wanted to get flymake doing something for ocaml, but I wasn't sure if I wanted to bother trying to get it to work with ocamlbuild
<adrien> check pfff
<adrien> also, Jun Furuse' parser
ftrvxmtrx has quit [Quit: Leaving]
sebz has quit [Quit: Computer has gone to sleep.]
<hcarty> thelema: Hooray for a move to 3.12+ for Batteries.
<hcarty> thelema: I have been and probably will continue to be unavailable to help with Batteries tasks for a while, but this seems like a potentially very good thing
<hcarty> thelema: Also, someone (xleroy?) posted a solution to the >= 3.13 vs < 3.13 Hashtbl module interface difference which may be worth pursuing.
<thelema> yes, I noticed that - I'll have to install ocaml-trunk to test it out
<thelema> I'm happy people are happy with moving to 3.12
<adrien> it was Jacques Garrigue iirc
<adrien> and \o/
<hcarty> adrien: I think you're correct
_andre has quit [Quit: leaving]
ijp has quit [Ping timeout: 240 seconds]
ftrvxmtrx has joined #ocaml
raichoo has quit [Quit: Lost terminal]
fraggle_laptop has quit [Read error: Connection reset by peer]
ijp has joined #ocaml
thomasga has quit [Quit: Leaving.]
thomasga has joined #ocaml
thomasga has quit [Client Quit]
ulfdoz has quit [Ping timeout: 245 seconds]
milosn has quit [Read error: Connection reset by peer]
milosn has joined #ocaml
sebz has joined #ocaml
edwin has quit [Remote host closed the connection]
avsm has joined #ocaml
spearalot has quit [Quit: Computer has gone to sleep]
sebz has quit [Quit: Computer has gone to sleep.]
sebz_ has joined #ocaml
Morphous has quit [Read error: Operation timed out]
Cyanure has joined #ocaml
avsm has quit [Quit: Leaving.]
Morphous has joined #ocaml
ikaros has quit [Quit: Ex-Chat]
ijp has quit [Quit: The garbage collector got me]
emmanuelux has quit [Read error: Connection reset by peer]
ikaros has joined #ocaml
emmanuelux has joined #ocaml
nimred has quit [Ping timeout: 255 seconds]
nimred has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-090423]: i've been blurred!]
thelema has quit [Remote host closed the connection]
thelema has joined #ocaml
Cyanure has quit [Remote host closed the connection]
ikaros has quit [Quit: Ex-Chat]
oriba has joined #ocaml
arubin has joined #ocaml