flux changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 4.00.1 http://bit.ly/UHeZyT | http://www.ocaml.org | Public logs at http://tunes.org/~nef/logs/ocaml/
fasta_ has joined #ocaml
fasta has quit [Read error: Connection reset by peer]
darkf has joined #ocaml
mathieui has quit [Ping timeout: 245 seconds]
dwmw2 is now known as dwmw2_gone
mattrepl has quit [Quit: mattrepl]
mathieui has joined #ocaml
mattrepl has joined #ocaml
mattrepl has quit [Quit: mattrepl]
ahokaomaeha has joined #ocaml
mattrepl has joined #ocaml
darinmorrison has joined #ocaml
mattrepl has quit [Client Quit]
mfp has quit [Ping timeout: 272 seconds]
pkrnj has joined #ocaml
madroach has quit [Ping timeout: 248 seconds]
madroach has joined #ocaml
mfp has joined #ocaml
ahokaomaeha has quit [Quit: When I come back, please tell me in what new ways you have decided to be completely wrong.]
leoncamel has joined #ocaml
mcsquiggedy has quit [Quit: Leaving]
emmanuelux has quit [Remote host closed the connection]
rixed has quit [*.net *.split]
bobry has quit [*.net *.split]
areece has quit [*.net *.split]
noj has quit [*.net *.split]
rixed has joined #ocaml
bobry has joined #ocaml
areece has joined #ocaml
noj has joined #ocaml
tac-tics has joined #ocaml
yacks has joined #ocaml
mattrepl has joined #ocaml
mattrepl has quit [Client Quit]
mattrepl has joined #ocaml
cdidd has joined #ocaml
darinmorrison has quit []
mattrepl has quit [Quit: mattrepl]
<flux> gnuvince, I guess it can be useful for example with .. | None -> .. | Some { contents = true } -> ..
cdidd has quit [Ping timeout: 240 seconds]
tianon has quit [Read error: Connection reset by peer]
pkrnj has quit [Quit: Textual IRC Client: www.textualapp.com]
weie has joined #ocaml
tianon has joined #ocaml
tianon has quit [Changing host]
tianon has joined #ocaml
cdidd has joined #ocaml
<gnuvince> flux: I guess, although I'd probably prefer to have a second match statement.
<gnuvince> matching on contents seems to be a little frail if Xavier ever decides that payload is a better record field name ;)
<flux> I seriously doubt that it's going to change..
<flux> and even if it did, the compiler tells you where to fix it ;)
<flux> related, I think it's pretty cool that ocaml now has (in trunk?) type-directed constructor resolution
<flux> so you can share field names between records as long as you tell the type to the compiler
Cyanure has joined #ocaml
tac-tics has quit [Ping timeout: 245 seconds]
<tac> flux: that's a really awesome feature
<tac> It's a constant source of frustration for me in Haskell
<tac> But in Agda, it's not a problem.
BiDOrD_ has joined #ocaml
BiDOrD has quit [Ping timeout: 260 seconds]
answer_42 has joined #ocaml
Cyanure has quit [Remote host closed the connection]
adotbrown has quit [Ping timeout: 244 seconds]
osa1 has joined #ocaml
weie_ has joined #ocaml
weie has quit [Ping timeout: 252 seconds]
answer_42 has quit [Remote host closed the connection]
kaustuv has left #ocaml []
Yoric has joined #ocaml
hkBst has joined #ocaml
hkBst has quit [Changing host]
hkBst has joined #ocaml
yacks has quit [Ping timeout: 264 seconds]
adotbrown has joined #ocaml
yacks has joined #ocaml
ttamttam has joined #ocaml
Yoric has quit [Ping timeout: 256 seconds]
ttamttam has left #ocaml []
cago has joined #ocaml
ontologiae has joined #ocaml
ontologiae has quit [Ping timeout: 255 seconds]
mackwic_ has joined #ocaml
ottbot has joined #ocaml
Kakadu has joined #ocaml
tac has quit [Quit: Page closed]
ttamttam has joined #ocaml
UncleVasya has joined #ocaml
mika1 has joined #ocaml
thomasga has joined #ocaml
cago has quit [Ping timeout: 248 seconds]
adotbrown has quit [Ping timeout: 264 seconds]
mk270 has left #ocaml []
anderse has joined #ocaml
thomasga has quit [Ping timeout: 248 seconds]
ontologiae has joined #ocaml
ttamttam has quit [Remote host closed the connection]
ttamttam has joined #ocaml
ttamttam has quit [Remote host closed the connection]
cago has joined #ocaml
thelema has quit [Ping timeout: 264 seconds]
mye has joined #ocaml
thelema has joined #ocaml
mika1 has quit [Quit: Leaving.]
Yoric has joined #ocaml
mika1 has joined #ocaml
mackwic_ has quit [Ping timeout: 248 seconds]
def-lkb has quit [Remote host closed the connection]
def-lkb has joined #ocaml
Yoric1 has joined #ocaml
Yoric has quit [Ping timeout: 248 seconds]
answer_42 has joined #ocaml
mye_ has joined #ocaml
mye has quit [Ping timeout: 252 seconds]
mye_ is now known as mye
mcclurmc has quit [Quit: Leaving]
Yoric1 has quit [Quit: Instantbird 1.4a1pre -- http://www.instantbird.com]
Yoric has joined #ocaml
dwmw2_gone is now known as dwmw2
cago has quit [Ping timeout: 256 seconds]
cago has joined #ocaml
tane has joined #ocaml
adotbrown has joined #ocaml
_andre has joined #ocaml
<companion_cube> is there a way, with Format, to have some prefix printed at the beginning of lines?
<companion_cube> for instance, when pretty-printing a value with a comment token at the beginning
<flux> I think you can make a custom Format function with (maybe, just guessing from experience with Printf) with Format.ksprintf
<pippijn> formatting is such a hack in ocaml :(
<pippijn> I like cyclone's approach with automatic boxing into an ADT
<orbitz> cyclone, the C derivative?
<pippijn> yes
adotbrown has quit [Ping timeout: 246 seconds]
<orbitz> they extended it wtih ADTs? I always just associated it with safer pointers
<pippijn> it has ADTs, pattern matching (really good one), local type inference, various pointer types (non-null/nullable/arithmeticable/...), compile time checking of static assertions using control and data flow, preconditions, postconditions, type invariants, ...
<pippijn> it has a *lot*
<pippijn> it's a pretty awesome language
mika1 has quit [Quit: Leaving.]
mika1 has joined #ocaml
<pippijn> orbitz: just making pointers more cumbersome would never get any acceptance
<pippijn> orbitz: sadly, cyclone didn't get much acceptance, at all :(
<pippijn> I actually forked it and made it work on modern systems, about a year and a bit ago
<pippijn> but the compiler code is quite bad
<pippijn> very high module interdependency
<flux> should rewrite it in ocaml ;-)
<pippijn> it's written in cyclone
<pippijn> which is much cooler
<pippijn> being self-hosting is great
<flux> sure
<pippijn> rewriting that thing to do what it can do now is a lot of work
leoncamel has quit [Quit: WeeChat 0.3.9.2]
<flux> but, it would be a more believeable language if it had two implementations!
<flux> ocaml only has one :(
<pippijn> I've considered it
<pippijn> actually I'm still considering it
<pippijn> it's always in the back of my head
<pippijn> I'd have a more global form of type inference, though
<pippijn> the one cyclone currently implements is "let foo = blah;" and "let foo; func(foo);"
<orbitz> pippijn: We can hope for a brave future with Clay maybe
<orbitz> bah i hate calling that type inference
<pippijn> it is type inference
<pippijn> let foo = blah; is trivial
ontologiae has quit [Ping timeout: 264 seconds]
thomasga has joined #ocaml
leoncamel has joined #ocaml
ontologiae has joined #ocaml
fantasticsid has joined #ocaml
cago1 has joined #ocaml
cago has quit [Read error: Connection reset by peer]
mcclurmc has joined #ocaml
beckerb has quit [Quit: Konversation terminated!]
beckerb has joined #ocaml
fasta_ is now known as fasta
cago1 has quit [Ping timeout: 276 seconds]
cago has joined #ocaml
lusory has quit [Quit: leaving]
lusory has joined #ocaml
chambart has joined #ocaml
osa1_ has joined #ocaml
osa1 has quit [Read error: Connection reset by peer]
fantasticsid has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
yacks has quit [Quit: Leaving]
travisbrady has joined #ocaml
Fullma has joined #ocaml
nicoo has quit [Ping timeout: 248 seconds]
nicoo has joined #ocaml
nicoo_ has joined #ocaml
q66 has joined #ocaml
ttamttam has joined #ocaml
nicoo_ has quit [Quit: Read error: Connection reset by Hadopi]
darkf has quit [Quit: Leaving]
ttamttam has left #ocaml []
djcoin has joined #ocaml
hkBst has quit [Quit: Konversation terminated!]
mattrepl has joined #ocaml
gnuvince has quit [Quit: brb]
gnuvince has joined #ocaml
cago has quit [Quit: Leaving.]
Kakadu has quit []
cago has joined #ocaml
tac has joined #ocaml
mye has quit [Quit: mye]
tianon has quit [Quit: "I'm a very important man. I've got a tower!"]
tianon has joined #ocaml
cago has left #ocaml []
mika1 has quit [Quit: Leaving.]
smondet has joined #ocaml
UncleVasya has quit [Quit: UncleVasya]
beckerb has quit [Quit: Konversation terminated!]
Kakadu has joined #ocaml
tianon is now known as AdmWiggin
AdmWiggin is now known as tianon
weie_ has quit [Read error: Connection reset by peer]
weie has joined #ocaml
cods has quit [Changing host]
cods has joined #ocaml
Yoric has quit [Ping timeout: 240 seconds]
Cyanure has joined #ocaml
travisbrady has quit [Quit: travisbrady]
yacks has joined #ocaml
thomasga has quit [Quit: Leaving.]
ollehar has joined #ocaml
<ollehar> any vim users here?
<rks_> yes, me
<rks_> why?
<ollehar> I have a problem. when typing $make project in bash, it compiles. when mapping from vim <Esc>:!make project<Enter>, it sais no rule to make project.
<rks_> are you sure you started vim in the same directory which you run make from?
<ollehar> yes
<rks_> well then, I can't help you :'
<ollehar> ok, thanks anyway
<rks_> one question though
<rks_> why use « :!make » and not just « :make » ?
<ollehar> hm I don't know
<ollehar> is it the same?
<rks_> kinda
<ollehar> woa, when I write ":make" only it compiles fine...
<rks_> it runs make, but vim gets a list of errors
<rks_> (possibly empty)
<rks_> and allows you to jump to them quickly
<rks_> ":h make" for more information :p
<ollehar> cool, even for ocaml?
<rks_> I think so
<rks_> (but I can't promise anything, maybe someone else will confirm)
<ollehar> ok, thanks for your help!
<rks_> well, I didn't help much, but you're welcome :p
mcclurmc has quit [Ping timeout: 264 seconds]
mattrepl has quit [Quit: mattrepl]
ontologiae has quit [Ping timeout: 248 seconds]
travisbrady has joined #ocaml
yacks has quit [Quit: Leaving]
ulfdoz has joined #ocaml
mye has joined #ocaml
ahokaomaeha has joined #ocaml
mcclurmc has joined #ocaml
_andre has quit [Read error: No route to host]
_andre has joined #ocaml
Yoric has joined #ocaml
toolslive has joined #ocaml
pkrnj has joined #ocaml
<toolslive> hi, I just reinstalled opam and I'm fighting my way through the collateral...
<toolslive> the installation of one of my packages started failing with:
<toolslive> "E: Malformed log file"
<toolslive> googling pointed me towards oasis but my package does not use oasis to get built at all.
mattrepl has joined #ocaml
<thelema> yes, that's an oasis error
<thelema> what's the command that's being run that results in this error?
<toolslive> ah wait. I'm looking at the opam description, but that just points to the github repo
<toolslive> and the package there does use oasis.
<toolslive> so I guess I have to pursuade the maintainer to regenerate his _oasis file then?
<thelema> or tweak the opam description to add 'oasis setup' to the install commands
oriba has joined #ocaml
<thelema> and install oasis
mattrepl has quit [Read error: Connection reset by peer]
mattrepl_ has joined #ocaml
mattrepl_ has quit [Write error: Connection reset by peer]
mattrepl has joined #ocaml
mattrepl has quit [Remote host closed the connection]
mattrepl has joined #ocaml
ulfdoz has quit [Ping timeout: 255 seconds]
<toolslive> ow. I don't need the package in my dev repo anymore since someone cloned my fork and put it in the official repo as well.
<toolslive> being able to throw away your workarounds gives a good feeling. anyway, thx for the input
<toolslive> clarification: your OWN workarounds ;)
ottbot has quit [Ping timeout: 276 seconds]
<toolslive> Since I'm here now, I have another question as well.
<toolslive> I made a monad functor to be able to not only run my code with Lwt, but also synchronized. ( with identity >>= and return)
<toolslive> I have seen others (in mirage for example) have done the same. The question is. has anybody been able to fidle in async as well?
<toolslive> the purpose is of course to be able to switch easily ;)
answer_42 has quit [Ping timeout: 276 seconds]
<thelema> toolslive: there's some important semantic differences between lwt and async; people have done what you're suggesting, but I don't think it turned out as well as hoped
<thelema> iirc, there's some of avsm's code that has this
<toolslive> iirc baarskeerder had it first and anil copied that approach the (sync & lwt) but I don't think he managed to fit in async
<toolslive> indeed they are way different.
<toolslive> can anyone clarify as the reasons they are so different, interface wise, as they both merely want to be a concurrency monad.
stevej has joined #ocaml
tac has left #ocaml []
ulfdoz has joined #ocaml
maufred has joined #ocaml
maufred has quit [Client Quit]
djcoin has quit [Quit: WeeChat 0.3.9.2]
<gnuvince> How much space does a bool array take up? Is it 1 bit per element + overhead of the array headers, or 1 pointer per element?
<zorun> afaik, bool are not boxed
<zorun> so they are stored directly in the array
<zorun> they probably use 8 bits of memory, though
<thelema> yes, bool are primitive values.
<thelema> all values take one word (32 or 64 bits)
<zorun> do they?
<thelema> yes
<thelema> well, there's a special case for float arrays
<thelema> but no special case for booleans
<zorun> okay
<thelema> gnuvince: if you need a packed bool array, try BatBitSet
<gnuvince> thelema: I actually wanted to try and implement a Bitset myself, that's why I was asking.
<thelema> gnuvince: put whatever you come up with into this benchmark: https://github.com/ocaml-batteries-team/batteries-included/blob/master/benchsuite/bitset.ml
<companion_cube> hey, I have benchmarked a bit, and looks like my sequence type (https://github.com/c-cube/sequence) is faster than ExtLib.Enum
<thelema> companion_cube: I've been thinking about the sequence type; how does it compare to Batteries.Seq?
<companion_cube> looks like Batteries.Seq is a lazy list?
<thelema> not quite; it's quite subtle, the difference
<companion_cube> Sequence is actually a wrapper around the iter function
<companion_cube> so it's less powerful than Enum, but shares purpose
<thelema> meaning that the thing that sequence gets you is a full traversal through some sequence
<companion_cube> yes
<thelema> *finite* sequence
<companion_cube> well, it can be infinite, if you "cut" it
<companion_cube> Sequence.take makes a finite sequence out of an infinite one
<thelema> sure.
<companion_cube> oh, Batteries.Seq is more of a type 'a t = ('a, unit -> 'a t)
<companion_cube> so it's also a consumable thing?
_andre has quit [Quit: leaving]
<thelema> no, it's not consumable like enum; the "head" is always kept.
<thelema> with enum, when you take an element, you can't take it again (modulo tricks)
cdidd has quit [Remote host closed the connection]
<thelema> but seq is immutable, no internal state to the "get" function
<thelema> meaning that it works more like a list
<companion_cube> so what's the difference between seq and list?
<thelema> it's like a lazy list, but the intermediate nodes can be GCed
mye has quit [Quit: mye]
<thelema> while with a lazy list, if you keep the head, you have to keep all evaluated nodes
ollehar has quit [Quit: ollehar]
Enjolras has joined #ocaml
<companion_cube> oh, ok, it's a lazy list you can traverse as many times as needed
<thelema> but without the memoization of the middle of the list
<companion_cube> so you can define things like the lazy list of primes or lazy list of fibonacci numbers, without memoizing it
<companion_cube> cool :)
<thelema> i.e. if you read the first 1M entries of a lazy list and keep the head pointer, you're keeping all 1M entries
<thelema> but with seq, you can have the tail of the seq and the very head without having to keep the intermediate entries
<thelema> in many common scenarios, the head is kept
<companion_cube> sure
<thelema> usually on accident, because it doesn't leave scope early enough
<thelema> which is why Enum is engineered as it is, so that the head can be GC'ed
<thelema> your sequences seem very similar to this seq, except... except 'tl' isn't efficient.
<companion_cube> there is no "tl" :D
<companion_cube> well, you have drop 1 instead of tl
<companion_cube> which is lazy, it just means that you will drop the first element when you iterate
<companion_cube> thelema: if you're curious, you can take a look at the equivalent of Enum.force in the master branch
<companion_cube> it's also a mutable list, but unrolled
<thelema> Sequence.persistent
<thelema> yes, this is very similar to Enum
<thelema> I like your use of an unrolled list
<thelema> although Batteries.Vect might be better for 'get'
<companion_cube> I found this on wikipedia
<companion_cube> yep
<companion_cube> but get isn't actually used there :D
<companion_cube> I think it's better than Vect for this use, because you don't have to resize/copy
<thelema> it looks like you use get once, just to get the head of the list
<companion_cube> you just build a list, but in a more memory- and time-efficient
<thelema> yes, it's better
<companion_cube> oh, right
<companion_cube> overall, on a simple example (take an int list and force/persistent it), it's twice as fast as ExtLib
<companion_cube> on a 10000000-elements list
ottbot has joined #ocaml
* thelema is curious about the scaling curve; any chance of using bench to make one? (https://github.com/thelema/bench)
<thelema> companion_cube: maybe a better test is summing 1..n
<thelema> making a very large int list in memory will have severe cache effects
<thelema> Enum will probably lose this as well, because of the overhead of mutation
<companion_cube> I have both tests :)
<companion_cube> it's in bench.ml in the master branch of Sequence
<companion_cube> (on github)
<thelema> I mean without the list
<companion_cube> but the gap between Enum and Sequence is smaller for the sum
<companion_cube> oh
<thelema> maybe you're just comparing your unrolled list to enum's non-unrolled list
<thelema> Of course we'd appreciate improvements to Enum
<companion_cube> no, I create a big list, and compare Enum.fold and Sequence.fold on List.enum l and Sequence.of_list l
<thelema> (for the force test)
<companion_cube> you think I can adapt the unrolled list to Enum?
<companion_cube> (in Batteries or in ExtLib?)
osa1_ has quit [Ping timeout: 246 seconds]
<thelema> yes, I'd accept it in Batteries
<thelema> assuming force performance goes up and it passes tests
<thelema> grr, need more tests for enum
mye has joined #ocaml
<hcarty> def-lkb: I'm having an odd issue with merlin on a CentOS 6 installation. The system Python version is 2.6 which doesn't include one of the classes used by merlin.py.
<thelema> it would replace BatEnum.MicroLazyList
<thelema> hcarty: wrong channel, I think
<thelema> err, merlin - the new editor plugin?
<hcarty> thelema: Nope! :-) Well, maybe. But this is for the merlin vim/emacs helper.
osa1_ has joined #ocaml
<hcarty> thelema: Yes
<thelema> I didn't realize python was involved.
<thelema> shame
<companion_cube> python is involved for the vim plugin, I think :)
<hcarty> def-lkb: To work around this I tried to build a new Python version (using pythonbrew) and a new vim binary pointing to the updated Python.
<companion_cube> thelema: good! let me write this in Batteries then :)
<hcarty> companion_cube: Indeed :-)
<hcarty> def-lkb: merlin now half-works. I can see types (\t, \n, \p), :Use packages and .merlin project files.
<hcarty> def-lkb: But omnicomplete always says 'Pattern not found'
mattrepl has quit [Quit: mattrepl]
<hcarty> def-lkb: Finally, this same vim configuration works on an Ubuntu 12.04 machine with (native) vim 7.3 and Python 2.7. Any suggestions for where to start troubleshooting?
<companion_cube> there should be an opam bot here...
<hcarty> def-lkb: Finally finally - thanks for merlin! On my Ubuntu box where it works, it's amazing.
<hcarty> thelema: The python code is for the vim <-> OCaml interactions as companion_cube guessed. I'm will to put up with a bit of python for a better OCaml world :-)
<hcarty> s/will/willing/
<thelema> hcarty: I'm putting up with elisp for the same goal, so I guess it's all good
<companion_cube> thelema: ok, I'm going to try to rewrite MicroLazyList with unrolled lists
<invariant> thelema, elisp has an extremely interactive debugger.
<invariant> thelema, how can you possibly not like elisp?
<thelema> invariant: need more type safety
<invariant> thelema, for what purpose?
<invariant> thelema, it's not like you are going to land an airbus with it.
<thelema> to keep me from making as many mistakes
<invariant> You learn from your mistakes and there isn't much safety in doing things with text.
<invariant> If you have an off by one error, you would have also gotten it in OCaml.
ottbot has quit [Ping timeout: 252 seconds]
mattrepl has joined #ocaml
<thizanne> invariant: so safe and working programs are only to be used when there are lives in danger ?
<invariant> thizanne, I keep forgetting that there are programmers who make mistakes.
<invariant> thizanne, sorry, *all of you* need to use those type systems ;)
<thizanne> I personnally meet human programmers all day, so I don't forget it
osa1_ has quit [Ping timeout: 276 seconds]
weie has quit [Quit: Leaving...]
mye has quit [Quit: mye]
gustav_ has joined #ocaml
tac has joined #ocaml
mcsquiggedy has joined #ocaml
ulfdoz has quit [Ping timeout: 255 seconds]
travisbrady has quit [Quit: travisbrady]
travisbrady has joined #ocaml
tcpc has joined #ocaml
Kakadu has quit []
<companion_cube> thelema: I don't understand why BatEnum.take is implemented this way
<companion_cube> shouldn't it just be a wrapper around the enum, that counts how many elements have been consumed so far?
<thelema> as opposed to without the rev?
<thelema> I think it's supposed to be eager
<companion_cube> oh
<thelema> so that you can take 10, and then take another 10
<thelema> and not get the same 10, or an intermixed 10 depending on consumption
<companion_cube> so, if I do the unrolled list thing, I can also rewrite this to use it, I assume
<companion_cube> oh, I see!
<thelema> yes
<tcpc> hi
<thelema> tcpc: hi
<companion_cube> maybe I can also add an Enum.rev the,
<companion_cube> then*
<thelema> definitely need tests for that one
<companion_cube> sure
<companion_cube> I'll do it afterwards, if modifying what is already implemented works well
<thelema> if you have time, tests for other functions would be great
mcsquiggedy has quit [Ping timeout: 255 seconds]
<invariant> Are any of the Jane Street employees also in this channel ever?
<thelema> invariant: afaik, no
<invariant> thelema, are they too awesome for that?
<invariant> Or just busy raping counter parties, of cours.e
<invariant> I think they call it "providing service":)
_so has joined #ocaml
LukeSun has joined #ocaml
<invariant> What shell does merlin's ./configure expect? It seems to be wanting to print some colors, but they do not function.
<rks_> hmm invariant, good question
<rks_> I think we (merlin devs) are all using zsh
<invariant> rks_, I also use zsh, yet it doesn't work.
<rks_> but it should work with other shells (i.e. bash) as well
<invariant> rks_, it calls /bin/sh
<invariant> rks_, which is certainly not zsh on most systems.
<rks_> right
<rks_> lrwxrwxrwx 1 root root 15 27 févr. 03:37 /bin/sh -> ../usr/bin/bash
<invariant> rks_, that was rhetorical.
<invariant> I will read the README file first :)
<rks_> what was rhetorical? you didn't ask any question
<invariant> rks_, just because you don't know it, doesn't mean it doesn't exist: http://www.urbandictionary.com/define.php?term=Rhetorical%20Statement
<rks_> well invariant, that's why I have you
<rks_> so you can teach me :)
<invariant> rks_, Comment vous disez ceci en Francais?
<rks_> invariant: I am wondering actually
<invariant> rks_, C'est evident? ;)
<invariant> rks_, nah, that's not what I mean.
<rks_> ?
<vpm> The closest equivalent I can think of is "ça n'appellait pas de réponse".
<rks_> yes vpm but, there's no name for such a statement, right?
<rks_> (that's what I am wondering)
tac has left #ocaml []
<invariant> vpm, that's way too nice.
<invariant> The nice thing about the English variant is that it encodes a kind of smartassness.
emmanuelux has joined #ocaml
<invariant> rks_, I am starting to wonder whether there is any common shell in which this works.
ottbot has joined #ocaml
<rks_> well, it seems to work with bash
<vpm> invariant: oh OK, thanks :-)
<rks_> since that's what my sh points to
<invariant> rks_, are you saying that it displays colors?
<invariant> rks_, which terminal emulator?
<rks_> yes it does
<rks_> it works with both urxvt and xfce-terminal
adotbrown has joined #ocaml
<invariant> rks_, it doesn't for me in those environments.
<invariant> Anyway, if you want to use color, you can better setup the environment really, really well before doing so.
<rks_> well invariant
<invariant> Or just steal the cmake code.
<rks_> it's open source
<rks_> contribute :)
<invariant> rks_, tput setaf 2 creates green which works in a lot more environments.
<invariant> Meaning that I don't know of any environment in which it doesn't work.
<thizanne> merlin works with me, and I didn't configure anything special
<invariant> thizanne, it likely also works for me.
<invariant> thizanne, this is just talking about the configure scripts.
<invariant> script
<thizanne> yes I can read
<thizanne> maybe I should have said "the configure script works and prints correctly stuff"
<invariant> I have no doubt that it works in some environments.
<invariant> thizanne, do echo $TERM.
<thizanne> rxvt-unicode-256color
<invariant> Well, I don't know what it is then, but I am going to go with that it is simply wrong/non-standard.
<invariant> Because other stuff does work.
<invariant> (which is deployed more widely than merlin)
<thizanne> "I can't get merlin to work, other people can, so they are wrong"
<thizanne> I like this way of thinking
<invariant> thizanne, the logic is that it doesn't work until it works for everyone.
<invariant> thizanne, you must now the forall symbol, right?
<invariant> know*
<invariant> If you think it is correct, please point at some standard which says that it should work everywhere?
<thizanne> I'm pretty sure there is not a single project working then
<invariant> I would be more than happy to report the problem to whoever developed it.
anderse has quit [Quit: anderse]
<invariant> thizanne, Emacs counts as something which works everywhere, imho.
<rks_> invariant: that's your opinion
<thizanne> I'm sure I can misconfigure my environment to make it not compiling
<rks_> some could say it doesn't work, everywhere
<invariant> rks_, I am not seeing anyone saying that with arguments.
<rks_> (or anywhere* rather)
<invariant> rks_, anyway, the burden of proof is on the author of that configure.
<invariant> (as you cannot prove a negative)
<invariant> Or well, I suppose you could, but the proof would be too long.
<rks_> invariant: I never said it did work
<thizanne> invariant: so far the only one complaining is you
<rks_> i said it worked *for me*
<rks_> and THEN
<rks_> i said « contribute »
<invariant> thizanne, I am not complaining.
<invariant> rks_, I did, when I said how to properly solve the problem.
<rks_> invariant: I meant, « send a patch :) »
<rks_> anyway, invariant
<rks_> let us know if you experience any other discomfort :)
<invariant> rks_, otherwise nothing but praises sofar, since it built in 11 seconds without an error.
<rks_> ok :)
<invariant> rks_, well, I do hate the generic OCaml part where prefix doesn't mean the same thing as in all other configure scripts.
<invariant> rks_, when I say that the prefix is foo, I don't want it to go anywhere near /usr/local/bin.
<invariant> I don't understand how anyone designing a configure scripts can possibly think it is a good idea to break tradition.
<rks_> what ?
<invariant> It seems rather malicious to me or extremely incompentent.
<invariant> incompetent
Yoric has quit [Ping timeout: 240 seconds]
<toolslive> never assume malice where incompetence suffices (Napoleon)
<invariant> rks_, ah, I see the problem already.
smondet has quit [Ping timeout: 255 seconds]
<rks_> invariant: are you saying the configure script ignored your prefix?
<invariant> rks_, it's just that the script contains no error conditions when there is unexpected input (like I provided foolishly).
<invariant> rks_, I am saying that I made a mistake, which I now corrected, and which the script could have caught.
<invariant> rks_, but it was entirely my fault otherwise.
<rks_> got it
<def-lkb> Hi
<def-lkb> hcarty: Sorry I wasn't there
<def-lkb> The python code indeed makes use of the Counter class only available on python2.7+… This is a problem on some systems, I will try to find an alternative.
chambart has quit [Ping timeout: 248 seconds]
<def-lkb> invariant: what is your TERMinal ?
<invariant> def-lkb, currently set to screen-256color
<def-lkb> ok thx, strange that colors don't work as expected
<def-lkb> but you're right, we should use tput…
<invariant> def-lkb, c'est evident ;)
<rks_> :D
<invariant> Touche
<invariant> I don't do accents, sorry.
<invariant> Well, I can do é
<invariant> Next to restaurant, touche must be my favorite word.
thomasga has joined #ocaml
asmanur has joined #ocaml
fraggle_ has quit [Remote host closed the connection]
Cyanure has quit [Remote host closed the connection]
toolslive has left #ocaml []
thomasga has quit [Quit: Leaving.]
tane has quit [Quit: Verlassend]
ottbot has quit [Ping timeout: 272 seconds]
mcsquiggedy has joined #ocaml
<companion_cube> thelema: would you help me writing the benchmarks for the new implementation?
mcsquiggedy has left #ocaml []
<companion_cube> I'm going to do a pull request
ontologiae has joined #ocaml
<companion_cube> thelema: am I supposed to keep the old implementation, for comparison purpose?
ontologiae has quit [Ping timeout: 255 seconds]
chambart has joined #ocaml
travisbrady has quit [Quit: travisbrady]
mattrepl has quit [Quit: mattrepl]
<invariant> def-lkb, I found a bug in merlin: (< start merlin-lock-point) merlin-lock-point can be nil, resulting in a a comparison between 1 and nil which is illegal.
<invariant> def-lkb, line 411
<def-lkb> I don't know much about emacs… Can you open a bug report?
<invariant> def-lkb, no, you can just copy-paste that yourself into github. GNU Emacs 24.3.50.1, FYI.
<invariant> It seems epidemic that people cannot write working Emacs Lisp modes, but well, let's blame the lack of a type system.
<invariant> First there was typerex which had hundreds of issues, and nor merlin, which seemed to be more promising, but well...
<invariant> now
<invariant> (defvar merlin-lock-point nil ; this is already just waiting for a failure to happen.
<def-lkb> you are welcome to write mode that works
<invariant> Why not just use 0?
<def-lkb> an emacs mode*
<invariant> Position up to which merlin knows about"
<invariant> Well, 0 is trivially true and would probably work.
Ptival has quit [Ping timeout: 248 seconds]
<invariant> Introducing nil is just as wrong in Emacs Lisp as it would be in OCaml to represent this.
Ptival has joined #ocaml
vbmithr has quit [Read error: Operation timed out]
vbmithr has joined #ocaml
<invariant> Fixing that problem points at yet another issue...
<def-lkb> I am listening…
<invariant> (equal (file-name-extension (buffer-file-name)) "ml")
<invariant> Calls file-name-extension(nil) and file-name-nondirectory(nil)
<invariant> It's supposed to be a string.
<invariant> It seems that there are extremely basic problems with this mode. Has anyone tested this?
<def-lkb> Can tell, I didn't I use vim, only one guy contributed to the emacs mode.
<rks_> can't*
q66 has quit [Remote host closed the connection]
emmanuelux has quit [Remote host closed the connection]
yacks has joined #ocaml
ollehar has joined #ocaml
fraggle_ has joined #ocaml
oriba has quit [Quit: oriba]
travisbrady has joined #ocaml
darkf has joined #ocaml