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
iago has joined #ocaml
emmanuelux has joined #ocaml
<pippijn> is there a resizable array module that allows negative indices?
letrec has quit [Ping timeout: 264 seconds]
sivoais has quit [Quit: Lost terminal]
<thelema> pippijn: not that I know of.
<thelema> you want the array to resize on both ends...
<thelema> this might be doable with a vect-like rope construction
<thelema> but you'd have to modify the existing implementation in batteries to not index starting at 0
<pippijn> thelema: no way
<pippijn> thelema: why is your suggestion always modifying implementations?
<thelema> Maybe just use a map.
<thelema> :)
sivoais has joined #ocaml
<_habnabit> what would negative indices me?
<_habnabit> an
<pippijn> I can wrap it and translate indices with an offset
<pippijn> _habnabit: for example if you plot a graph, you'll have negative indices
<_habnabit> oh, sure
<thelema> pippijn: for that, you'll want to translate.
<thelema> it's not the right solution to use negative indices
<_habnabit> I thought you meant something more sensible, like how in python negative indices count from the right end instead of the left
<pippijn> thelema: it's a game map and I get updates from the server
<pippijn> it sends me negative indices, because the player starts at (0,0) and can walk in both directions
<pippijn> so yes, I have to translate
<pippijn> but I thought that maybe there is already an array module that does this
<thelema> do you have a fixed size of your world?
<pippijn> no
<pippijn> it's super large
<thelema> do you have a fixed-size viewport of your world on the client side?
<pippijn> yes
<pippijn> no
smerz has quit [Remote host closed the connection]
<pippijn> actually not
<pippijn> but it's technically bounded
<pippijn> by window size
<thelema> the server can know this and send data based on client window
<pippijn> it doesn't
<pippijn> I'm not writing the server
<thelema> oh. hmmm.
<thelema> good luck. back to work for me.
<pippijn> as far as the server is concerned, there is no window
<thelema> so you'll have variable translation from unsigned server coordinates to your client window?
<thelema> drat, I failed to go back to work
<pippijn> signed server coordinates
<pippijn> relative to map entry point
<pippijn> anyway, go back to work, I'll go implement what's in my head
<mrvn> If the worl is huge and you only see a small part at the moment then you should use an quadtree
<mrvn> You can make blocks of 64x64 tiles at the lowest level and then quad tree above that.
oriba has quit [Quit: oriba]
iago has quit [Quit: Leaving]
The_third_bug has quit [Ping timeout: 248 seconds]
The_third_bug has joined #ocaml
tautologico has joined #ocaml
hexreel has joined #ocaml
lihaitao has joined #ocaml
lihaitao has quit [Quit: Ex-Chat]
lht_ has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
<thelema> pippijn: looks like fun
<thelema> a roguelike?
<pippijn> yes
The_third_bug has quit [Ping timeout: 265 seconds]
The_third_bug has joined #ocaml
tmaedaZ is now known as tmaeda
<pippijn> thelema: http://paste.xinu.at/oimKe/
tautologico has quit [Quit: tautologico]
The_third_bug has quit [Ping timeout: 246 seconds]
The_third_bug has joined #ocaml
absalon has joined #ocaml
Tobu has joined #ocaml
The_third_bug has quit [Ping timeout: 252 seconds]
The_third_bug has joined #ocaml
The_third_bug has quit [Ping timeout: 260 seconds]
The_third_bug has joined #ocaml
ulfdoz has joined #ocaml
hexreel has quit [Quit: leaving]
The_third_bug has quit [Ping timeout: 246 seconds]
<zaltekk> is there a way to "append" to a tuple?
<pippijn> you have to unpack it, first
<pippijn> there is no generic "tuple with any number of types" type
The_third_bug has joined #ocaml
<zaltekk> so i'd unpack it to a list, append it, and pack it back to a tuple?
<pippijn> that's not very useful
<pippijn> let append3 (e1, e2, e3) e4 = (e1, e2, e3, e4)
<zaltekk> hmm
<zaltekk> tbh i'm not sure why my instructor wants this function to return a tuple
<zaltekk> because it has 10 elements
The_third_bug has quit [Ping timeout: 252 seconds]
<pippijn> I rarely have tuples with 10 elements (I think I never had one)
<pippijn> zaltekk: all of the same type?
<zaltekk> yeah, they're all floats
<pippijn> then I don't know, either
<pippijn> maybe so you can be sure you always have 10
<pippijn> tople of 10 floats is a different type than tuple of 11 floats
<pippijn> tuple*
<zaltekk> right
<zaltekk> it's just building that tuple that is giving me a hard time
<pippijn> why are you building it?
<pippijn> can't you just create it all at once?
<zaltekk> i need to find the 5 minimum elements in a list of floats and return a tuple of (val1, list_pos1, val2, list_pos2, ...
<zaltekk> i would just return a list, but this defined requirement
<pippijn> I can't stand professors who give stupid arbitrary requirements
<olasd> returning a list position as a float sounds... bad
<zaltekk> well, the 1st requirement is only using functional constructs, which seems valid to me
<zaltekk> but he gave us function signatures and descriptions for a handful of functions
<zaltekk> the problem with creating the 10-tuple all at once is I have to remove the minimum items from the list to search for the next minimum item
<zaltekk> it was highly recommended to do it this way rather than sorting the list first because the list will be extremely long
<zaltekk> might give up on that, though, as it's straining me to be able to write it
The_third_bug has joined #ocaml
absalon has quit [Quit: Ex-Chat]
ulfdoz has quit [Read error: Operation timed out]
lht_ has quit [Quit: Ex-Chat]
lihaitao has joined #ocaml
dnm__ is now known as dnm
Tobu has quit [Ping timeout: 272 seconds]
The_third_bug has quit [Ping timeout: 265 seconds]
emmanuelux has quit [Read error: Connection reset by peer]
The_third_bug has joined #ocaml
wagle has quit [Remote host closed the connection]
struktured has quit [Ping timeout: 248 seconds]
larhat has joined #ocaml
wagle has joined #ocaml
wagle has quit [Read error: Connection reset by peer]
The_third_bug has quit [Ping timeout: 264 seconds]
wagle has joined #ocaml
The_third_bug has joined #ocaml
ftrvxmtrx has quit [Quit: Leaving]
eni has joined #ocaml
pango is now known as pangoafk
Cyanure has joined #ocaml
ftrvxmtrx has joined #ocaml
Tobu has joined #ocaml
Cyanure has quit [Remote host closed the connection]
bnwr_ is now known as bnwr
djcoin has joined #ocaml
thomasga has joined #ocaml
mika1 has joined #ocaml
cago has joined #ocaml
yroeht has quit [Ping timeout: 272 seconds]
<mrvn> zaltekk: do it with lists and only create the tuple at the very end.
yroeht has joined #ocaml
roha has joined #ocaml
<mrvn> zaltekk: removing the smalest from the list each time might not be ideal though. That changes the position of all elements after it for the next run and you have to adjust that in the result.
rzys has joined #ocaml
larhat has quit [Quit: Leaving.]
hexreel has joined #ocaml
Cyanure has joined #ocaml
ankit9 has joined #ocaml
Snark has joined #ocaml
testcocoon has quit [Quit: Coyote finally caught me]
testcocoon has joined #ocaml
libertas has joined #ocaml
Tobu has quit [Ping timeout: 260 seconds]
andreypopp has joined #ocaml
Tobu has joined #ocaml
tufisi has joined #ocaml
ivan\ has quit [Ping timeout: 276 seconds]
ivan\ has joined #ocaml
larhat has joined #ocaml
lihaitao has quit [Ping timeout: 245 seconds]
Xizor has joined #ocaml
eni has quit [Quit: Leaving]
sgnb has quit [Ping timeout: 264 seconds]
sgnb has joined #ocaml
avsm has quit [Quit: Leaving.]
avsm has joined #ocaml
avsm1 has joined #ocaml
avsm has quit [Read error: Connection reset by peer]
Hussaind has joined #ocaml
hexreel_ has joined #ocaml
krktz has joined #ocaml
bnwr_ has joined #ocaml
Snark has quit [*.net *.split]
hexreel has quit [*.net *.split]
rzys has quit [*.net *.split]
yroeht has quit [*.net *.split]
krktz_ has quit [*.net *.split]
bnwr has quit [*.net *.split]
bnwr_ is now known as bnwr
Xizor has quit []
munga has joined #ocaml
struktured has joined #ocaml
struktured has quit [Read error: Connection reset by peer]
struktured has joined #ocaml
Xizor has joined #ocaml
Tianon has quit [Ping timeout: 260 seconds]
Snark has joined #ocaml
rzys has joined #ocaml
Tianon has joined #ocaml
Tianon has quit [Changing host]
Tianon has joined #ocaml
yroeht has joined #ocaml
zuymanto has joined #ocaml
rzys has quit [Ping timeout: 246 seconds]
roha has quit [Ping timeout: 244 seconds]
zuymanto has left #ocaml []
zuymanto has joined #ocaml
Kakadu has joined #ocaml
<Kakadu> a little bit offtoptic. We can I read about two approaches of backtracking in parser-combinators?
ankit9 has quit [Quit: Leaving]
Zedrikov has joined #ocaml
Submarine has joined #ocaml
Submarine has quit [Changing host]
Submarine has joined #ocaml
Hussaind is now known as Hussain_Away
Hussain_Away is now known as Hussaind
_andre has joined #ocaml
ankit9 has joined #ocaml
jamii has joined #ocaml
ankit9_ has joined #ocaml
ankit9 has quit [Client Quit]
Zedrikov has quit [Quit: Bye all, see you next time!]
rzys has joined #ocaml
roha has joined #ocaml
rwmjones has quit [Ping timeout: 265 seconds]
letrec has joined #ocaml
rwmjones has joined #ocaml
<pippijn> my first C interface, yay
<pippijn> http://paste.xinu.at/szeh/ one function
<adrien> it's bad
<pippijn> adrien: better ideas?
<adrien> I haven't looked at it
<pippijn> to get the display width of a wide character
<adrien> but it has to have at least a dozen issues: GC, corruption, ...
<pippijn> or uni char
<pippijn> adrien: no.. it's a pure int function
<pippijn> does ocaml or batteries have a way to calculate the display width of a code point?
<adrien> what's the ocaml prototype?
<pippijn> int -> int
<adrien> why does it take an int?
<pippijn> because that's what I can get from the abstract type BatUChar.t
<pippijn> BatCamomile.UChar.t
<adrien> 30/31 bits are enough?
<pippijn> for unicode, 31 bits are enough
<adrien> also, on 64bit, with negative ints, you're going to get crap I think
<rixed> pippijn: I don't think batteries have this since batteries does not use C internaly.
<adrien> erf, this things are annoying :-)
<rixed> adrien: why crap with negative ints?
<adrien> probbaly not; not that way round
<adrien> I don't want to think about integer promotion anymore ='(
<rixed> adrien: most of the time integer promotions does the right thing. In this case I think it does.
<adrien> in this case, it probably don't happen
<adrien> since it'd move from 64/32 to 32
<adrien> and for the return, I don't think wcwidth can return anything bigger than 256
<mrvn> you might have to cast (uint32_t)Int_val(c)
<mrvn> or better (wchar_t)Int_val(c)
<mrvn> This could be something for extlib.
<rixed> wchar_t is not necessarily positive, though. I hope camomille (or BatUChar) uses the same "signedness" than the underlying C ...
<rixed> Or you might face a wchar_t that's unsigned, a BatUChar that's signed, and end up calling wcwidth with an invalid wchar_t... :-/
<pippijn> rixed: is it relevant?
<pippijn> rixed: unicode ends at 10FFFD
<pippijn> and even that is just "plane 16 private use"
<pippijn> E01EF is the last code point that is possibly fed into wcwidth here
<adrien> you'll find it less funny when one of these bit from your ints ends up at the position for the GC bit
<pippijn> the only problem is if wchar_t is not able to represent all unicode values (like on windows), it won't work
<rixed> adrien: this is not possible after a Val_int, isn't it?
<adrien> rixed: after Val_int, no, but I had a char last time and there was no Val_char
<adrien> and you need to cast to "unsigned char" before doing anything otherwise the ocaml "int" gets a bit far far far away
<adrien> because it casts from C signed char to C long
<adrien> I don't remember exactly but integer promotion of signed chars was the issue
<pippijn> my second C interface..
<pippijn> now with strings
<pippijn> for setlocale
struktured has quit [Ping timeout: 260 seconds]
<pippijn> An external function with more than 5 arguments requires a second stub functionfor nativ e-code compilation
<pippijn> An external function with more than 5 arguments requires a second stub function for native-code compilation
<pippijn> ah, got it
<mrvn> Best to avoid that.
smondet has joined #ocaml
<pippijn> what tag should I add to link to an external library?
<pippijn> I tried "testsuite/test.native": use_libncurses
ankit9_ has quit [Quit: Leaving]
sander_ has joined #ocaml
emmanuelux has joined #ocaml
Submarine has quit [Quit: Leaving]
avsm1 has quit [Quit: Leaving.]
<mrvn> pippijn: in _oasis: BuildDepends: extunix, extunix.bigarray, oUnit (>= 1.0.3)
<mrvn> Anyone know some good algorithm for path finding in largish maps?
Cyanure has quit [Remote host closed the connection]
<f[x]> gps!
<mrvn> f[x]: that doesn't work well with U shaped regions.
<Hodapp> hm, gradient descent?
<mrvn> I'm thinking of using A* for short distances.
<mrvn> Not sure if that is performant enough when traversing from one end to the other.
<mrvn> The map is static for stretches of time. So something that computes some helper stuff once and reuses that for different pathfindings would be good.
roha has quit [Ping timeout: 252 seconds]
rzys has quit [Ping timeout: 272 seconds]
Hussaind has quit [Remote host closed the connection]
rzys has joined #ocaml
roha has joined #ocaml
* thelema tries to look up the awesome pathfinding algorithm he had seen
<thelema> Jump Point Search
<thelema> mrvn: ^^
<mrvn> thelema: looks good
<thelema> I can't say it's trivial to implement, but it seemed like a good algorithm at the time
<mrvn> Not sure what RSR would be with hext tiles. Finding triangular regions?
tmaeda is now known as tmaedaZ
<thelema> could be triangular, could be hexagonal, could be other
cago has quit [Quit: Leaving.]
mika1 has quit [Quit: Leaving.]
<mrvn> I don't think RSR will work. Seems to be rather expensive and would have to be done each time a tree is planed or cut down or a building added or removed. I think I also want to consider the steepness between tiles in the movement cost. Going uphill is slower. That totaly destroys RSR I think.
Kakadu has quit [Quit: Page closed]
<mrvn> lets see if I can understand the JPS part
<thelema> I guess you could only RSR some big open regions (deserts?)
iago has joined #ocaml
<mrvn> JPS doesn't make any sense to me if diagonal is allowed: http://harablog.files.wordpress.com/2011/09/jps_recursediagonally.png, the whole rectange between x and y is searched recursively, each time with an expensive test if a jump point was reached. I might as well just let A* visit each field.
<thelema> I think it's using a simpler lookup to identify if there's a clear path to the destination along the dotted lines
<thelema> straight path
ulfdoz has joined #ocaml
<mrvn> oh wait, with A* all the field along the border of the rectange would end up in the queue. With JPS only w and y end up there.
ulfdoz_ has joined #ocaml
ulfdoz has quit [Read error: Operation timed out]
ulfdoz_ is now known as ulfdoz
<mrvn> I think one drawback of JPS would be that it picks path that hit the corners of obstacles. If 100 units move they would all hit the same tile and choke.
brendan has quit [Quit: leaving]
<mrvn> On Idea I have is to put a sparse grid of waypoints over the map, say 20 tiles distant. Then compute a distance map from each waypoint to every tile on the map. That way I have the shortest path from anywhere to each waypoint given. To go somewhere I find the closest waypoint to the goal and go there. When I'm 20 tiles from the waypoint I search for the path to the goal.
avsm has joined #ocaml
avsm has quit [Client Quit]
avsm has joined #ocaml
avsm has quit [Read error: Connection reset by peer]
letrec has quit [Ping timeout: 252 seconds]
<mrvn> Another is to again have waypoints. Then compute the shortest paths between neighbouring waypoints and store the distance (so 6 ints per point). For a path A-B then find the shortest path of waypoints A-W1-W2-W3-W4-B. Then recursively find the optimal path to the next waypoint until the unit is close and then skip ahead to the next waypoint. So first part is A-W2.
BiDOrD_ has joined #ocaml
BiDOrD has quit [Ping timeout: 265 seconds]
ulfdoz_ has joined #ocaml
ulfdoz has quit [Remote host closed the connection]
ulfdoz_ is now known as ulfdoz
ftrvxmtrx has quit [Quit: Leaving]
<mrvn> Each waypoint can also keep a distance map for close around it so finding an optimal path to the next waypoint means just picking a tile that is nearer.
hto has quit [Read error: Connection reset by peer]
ftrvxmtrx has joined #ocaml
djcoin has quit [Quit: WeeChat 0.3.2]
andreypopp has quit [Quit: Computer has gone to sleep.]
ftrvxmtrx_ has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 245 seconds]
<mrvn> Grml. I have a type "unit" for, well, units. But now I need a let f : unit -> unit = function unit -> () :( Whats another name for "unit"?
larhat has quit [Quit: Leaving.]
<Qrntz> mrvn, «void»?
<mrvn> Qrntz: Not (), for a unit like Settler, Forrester, Wood cutter, Hunter, Soldier, ...
munga has quit [Ping timeout: 244 seconds]
pangoafk is now known as pango
<Qrntz> mrvn, oh, you confused me there.
<Qrntz> can't think of something that doesn't sound artificial
<Qrntz> e. g. «agent»
<mrvn> Lets see if I can stuff it into a submodule. Unit.t will work.
emmanuelux has quit [Read error: Connection reset by peer]
brendan has joined #ocaml
emmanuel__ has joined #ocaml
ftrvxmtrx_ has quit [Ping timeout: 248 seconds]
hexreel_ is now known as hexreel
hexreel has quit [Quit: leaving]
hexreel has joined #ocaml
hexreel has left #ocaml []
ftrvxmtrx has joined #ocaml
Tobu has quit [Ping timeout: 272 seconds]
fraggle_laptop has joined #ocaml
rzys has quit [Ping timeout: 265 seconds]
roha has quit [Ping timeout: 265 seconds]
Tobu has joined #ocaml
<reynir> Qrntz: troop, perhaps
<reynir> entity
<reynir> ^ is more general, though
<reynir> err, mrvn I mena
<Qrntz> indeed
oriba has joined #ocaml
bzzbzz has quit [Quit: leaving]
Snark has quit [Quit: Quitte]
roha has joined #ocaml
rzys has joined #ocaml
bzzbzz has joined #ocaml
<thomasga> what's the simplest way to change $docdir in oasis ?
<gildor_> --docdir
<thomasga> I should regenerate setup.ml then ?
<gildor_> ./configure --docdir
<gildor_> not at all
<gildor_> it is stored in setup.data and this file is generated when calling ocaml setup.ml -configure
<thomasga> ha I see. So ocaml setup.ml -configure —docdir $foo ?
<gildor_> you should regenerate setup.ml only when you change something in _oasis
<gildor_> thomasga: exactly
<gildor_> I usually do ocaml setup.ml -configure --prefix $bar
<gildor_> ($prefix is embedded in $docdir)
<thomasga> but then do I need to regenerate the Makefile generated by oasis ?
<thelema> odb uses prefix to set a base for its installations
<gildor_> thomasga: do you have change something in _oasis ?
<thomasga> ha well, there is a CONFIGUREFLAGS
<gildor_> indeed make CONFIGUREFLAGS=...
<thomasga> coolm thanks!
<gildor_> if you want to make it permanent, you can edit the Makefile and put it before the OASIS_START/OASIS_STOP
<thomasga> ok
<gildor_> thomasga: in fact I come here because I was concerned about what you said yesterday about log(n²) of ocamlfind on large installed package base
<gildor_> thomasga: can you confirm this ?
<mrvn> gildor_: O(log(n^2)) == O(log(n))
<gildor_> thomasga: I thought about it and I think it is an easy fix for findlib, but don't really realize how much time you'll gain on a typical ocaml project
<thomasga> I had a quick look at the parsing of META files and that's what I understood of the code. I didn't run any benchs for this (but I observed performance degradation when using packages with lot of dependencies)
<gildor_> mrvn: sorry, O(n^2)
<thomasga> but that's not really n^2
<gildor_> lof of dependencies ? (10, 20?)
<thelema> gildor_: is it an unreasonable fix for oasis to call ocamlfind once?
<thomasga> just n*m where m is the lenght of the dependency chain
<thomasga> but anyway, yes, that would be better to call ocamlfind once
<gildor_> thelema: the fix will be deeply buried into myocamlbuild.ml
<thomasga> (because you don't want to have the overhead on any compiler call)
<thelema> thomasga: if ocamlfind fixes itself internally, it's better to be lazy and call ocamlfind many times
<thomasga> well I don't really like that ...
<gildor_> thelema, thomasga: indeed, I was thinking about using lazy to avoid parsing files ;-)
<adrien> thomasga: is ocamlfind parsing the _same_ META file several times? or doing the META file search and parsing several times?
<thelema> gildor_: in ocamlfind?
<thomasga> search + parsing several time, but I had only a quick look so maybe I've missed something
<gildor_> thelema: you can fix the generated myocamlbuild.ml to evaluate the link/compile parameters and replace them directly rather than calling ocamlfind
<thomasga> gildor_: btw, as you are here, is there a way to get the list of installed files ? In setup.log the files given to ocamlfind are not logged
<thelema> gildor_: this will require understanding ocamlfind's predicate system
<gildor_> thelema: i.e. no more override of ocamlc/ocamlopt in myocamlbuild but a rule that replace tag [compile; pkg_foo] (call (ocamlfind query foo -I-format))
<thelema> gildor_: yes, although you'll probably have to query each package multiple times
<gildor_> ocamlfind predicate system, not a big deal, believe me
<thomasga> well, you can still cache that call
<thelema> can you query multiple packages at once? Otherwise, you're also dep-sorting packages
<gildor_> thomasga: AFAIR, there is a list of library installed and a list of file built for a library
<thomasga> ha yes, right
<thomasga> well, I guess that'll we be fine
<gildor_> thomasga: everything that starts with "built_" in setup.log will be installed
<thomasga> ok
<thomasga> executable as well ?
<gildor_> yes
<thomasga> even if they have "Install: false" ? :-)
<gildor_> thomasga: no of course
<thomasga> well, so that's not easy to make the difference when parsing setup.log ...
<mrvn> gildor_: any more thoughts on splitting generated and custom code in setup.log, _tags and myocamlbuild.ml?
<gildor_> mrvn: right now I focus on oasis v0.3, this kind of change won't make into it, so for now, no followup
<gildor_> mrvn: have you tried 'oasis setup --setup-update light' ?
<mrvn> setup: unknown option `--setup-update'.
<gildor_> are you using 0.3.0~rc4 ?
<gildor_> (the one out since yesterday)
<mrvn> gildor_: not even close
<gildor_> ah ok, so you won't have this option
<gildor_> basically --setup-update light give you a 20 lines long setup.ml + no oasis generated files in your source code (except Makefile and configure)
<mrvn> gildor_: For the *.ml files it would be enough to add a line specified in the _oasis file or something.
<mrvn> gildor_: but doesn't that setup.ml then generate the real one when called?
<gildor_> it generates all files required by ocamlbuild and remove them at the end of compilation
<gildor_> (I know you don't like that)
<mrvn> generates them where? _build?
roha has quit [Ping timeout: 252 seconds]
rzys has quit [Ping timeout: 265 seconds]
<mrvn> gildor_: can one add something to the _oasis file that is run after "oasis setup"?
<gildor_> mrvn: no it generates them in the source
<gildor_> gildor_: are you talking about 0.2.0 or 0.3.0 version of oasis ?
<mrvn> gildor_: what if I ctrl-c the build? Does it still clean up?
<mrvn> I only have 0.2.0 here
<mrvn> Lots of Pre/Post*Command but no PostSetupCommand
<gildor_> ctrl-c during the ocamlbuild should be ok
<gildor_> mrvn: indeed no PostSetupCommand ;-)
<adrien> thomasga: if ocamlfind does the search and parsing several times, then that's probably the first thing to change; there's no reason to check for packages several times and storing the parsed data should be quite easy
<mrvn> gildor_: would it be possible to add those in 0.3.0?
<gildor_> for 0.3.0 it is too late
<gildor_> adrien: AFAIK, it loads it only once
<gildor_> at init
<gildor_> mrvn: fill a feature request to remind me
<mrvn> gildor_: so when is 0.4.0 planned? Any chance to add a $cp command, too?
<adrien> hmmm, ok; then the quadratic behaviour is surprising
<gildor_> mrvn: would like to say a date, but it is not that simple
<mrvn> I'm thinking: PreSetupCommand: $cp _tags.in _tags
<gildor_> mrvn: let say that my workflow for the coming months is "release oasis v0.3 -> relase oasis-db v0.1 (stable/prod) -> upgrade the forge -> setup continuous integration for oasis/oasis-db -> oasis v0.4"
<gildor_> which can also be my workflow for the next year ;-)
ulfdoz has quit [Quit: opengl screewwwwed!]
* gildor_ time to go home
<thelema> gildor_: I hope the forge maintenance isn't taking too much of your time that'd be better spent on oasis
<gildor_> thelema: no worries, I have spent much of my time on oasis lately
<mrvn> gildor_: I just gate commits like this: https://forge.ocamlcore.org/scm/browser.php?group_id=175
<mrvn> hate even
<thelema> gildor_: I noticed, and appreciate the progress
<thomasga> any hope to have one aday a real AST in oasis after parsing the _oasis file ? :-)
<thelema> gildor_: I hope we can get oasis-db to grow
<gildor_> thelema: what I really did on the forge in the last couple of months is to start analyzing traffic and understand how crawler index it
<mrvn> thomasga: write patch. :)
<thelema> I still need to patch netstring so it installs nicely under odb
<thomasga> haha
<gildor_> thomasga: you had a realy AST after parsing oasis, it is defined in src/oasis/OASISAst.ml
<mrvn> gildor_: You forgot "release extunix 0.0.4" in your workflow.
<gildor_> mrvn: I also forgot "release ocaml-gettext, release ocaml-fileutils, patch unison to include i18n, patch unison to synchronize with Google Driver, patch unison to use a proxy..."
<mrvn> bah, who wants those
larhat has joined #ocaml
iago has quit [Ping timeout: 260 seconds]
<mrvn> f[x]: On the subject of merging in the BA stuff: What if the ExtUnixBA module includes ExtUnix before adding its own functions? Then module U = ExtUnix.Specific becomes module U = ExtUnixBA.Specific if you want to use Bigarray stuff. That would preserve your simple syntax to use it and still only add Bigarray when asked for.
ulfdoz has joined #ocaml
ftrvxmtrx has quit [Ping timeout: 265 seconds]
rzys has joined #ocaml
roha has joined #ocaml
ulfdoz has quit [Ping timeout: 265 seconds]
ftrvxmtrx has joined #ocaml
Submarine has joined #ocaml
thomasga has quit [Quit: Leaving.]
<IbnFirnas> Does anyone have any suggestions how to work around the current broken state of GODI, post type-conv -> type_conv rename?
thomasga has joined #ocaml
thomasga has quit [Client Quit]
<IbnFirnas> I'm trying to sed 's/type-conv/type_conv/g' on files in /opt/godi but they just get reset when I try to reinstall oasis
Submarine has quit [Remote host closed the connection]
<adrien> hmmmmmmm, that doesn't sound good
<adrien> also, oasis is packaged in godi?
<IbnFirnas> yep
<adrien> hmmm, ok
<adrien> anyway, you shouldn't sed files in /opt/godi, that's way too much
<adrien> if you want something "easier", it's probably best to change back the name of type-conv
<adrien> one thing to change instead of everything else
tufisi has quit [Ping timeout: 246 seconds]
<IbnFirnas> I did not imagine that it is the normal way, but I'm getting desperate :)
<IbnFirnas> hmmm, good thought
_andre has quit [Quit: leaving]
Tobu has quit [Ping timeout: 272 seconds]
<IbnFirnas> sigh... nope, no go :(
<adrien> what error exactly do you get?
Tobu has joined #ocaml
<adrien> godi not finding the dependencies or the compilation failing?
<IbnFirnas> compilation
<IbnFirnas> some packages refer to type_conv and some to type-conv
<IbnFirnas> configs are re-downloaded each time, so my edits go away...
<IbnFirnas> I wonder if I can make godi use the cached configs...
<adrien> if it's at compilation, find the META file for type-conv, edit it, change the name
<adrien> probably in a folder named type-conv or type_conv
<adrien> find /opt/godi -name META | grep type.conv
<IbnFirnas> the META contains type-conv at this point, but the real problem is that different dep pkgs refer to it by different name
<IbnFirnas> so updated to type_conv, but some are still using type-conv
<IbnFirnas> soME
<adrien> easy solution is to cp the type_conv directory to "type-conv"
<adrien> so you have two same packages, but with the two names
<IbnFirnas> Ah ha! I shall try that!
jamii has quit [Quit: Leaving]
eni has joined #ocaml
letrec has joined #ocaml
letrec has quit [Ping timeout: 260 seconds]
smondet has quit [Remote host closed the connection]
eni has quit [Ping timeout: 244 seconds]
Tobu has quit [Ping timeout: 260 seconds]
zuymanto has quit [Quit: zuymanto]
zuymanto has joined #ocaml
sander_ has quit [Quit: Leaving]
larhat has quit [Quit: Leaving.]
zuymanto has quit [Quit: zuymanto]
libertas has quit [Ping timeout: 245 seconds]
Tobu has joined #ocaml
fraggle_laptop has quit [Remote host closed the connection]
roha has quit [Ping timeout: 245 seconds]
rzys has quit [Ping timeout: 265 seconds]
ivan\ has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
ivan\ has joined #ocaml