flux changed the topic of #ocaml to: Yes, inria.fr is back up! | Discussions about the OCaml programming language | http://caml.inria.fr/ | 3.11.0beta1 available from http://caml.inria.fr/pub/distrib/ocaml-3.11/ | Or grab OCaml 3.10.2 from http://caml.inria.fr/ocaml/release.html
jeremiah has joined #ocaml
vixey has quit ["Leaving"]
hkBst has quit [Read error: 104 (Connection reset by peer)]
yziquel has joined #ocaml
Associat0r has joined #ocaml
_zack has quit ["Leaving."]
Axle has joined #ocaml
InkBottle has quit [Read error: 110 (Connection timed out)]
mbishop has quit [Remote closed the connection]
slash_ has quit [Client Quit]
Iskr has quit ["Leaving"]
hsuh has joined #ocaml
mbishop has joined #ocaml
Axle has left #ocaml []
ulfdoz has joined #ocaml
longh has quit [Read error: 104 (Connection reset by peer)]
mbishop has quit ["leaving"]
amo_de_muerte has joined #ocaml
maxote has quit [Read error: 110 (Connection timed out)]
hsuh has quit [Remote closed the connection]
amo_de_muerte is now known as maxote
hsuh has joined #ocaml
yziquel has quit [Read error: 104 (Connection reset by peer)]
<thelema> palomer: wow. the long-running gtk program eventually died in an interesting way.
<thelema> test2: ../../src/xcb_lock.c:33: _XCBUnlockDisplay: Assertion `xcb_get_request_sent(dpy->xcb->connection) == dpy->request' failed.
hsuh has quit [Remote closed the connection]
hsuh has joined #ocaml
ulfdoz has quit ["deprecated"]
_Jedai_ has joined #ocaml
Jedai has quit [Read error: 60 (Operation timed out)]
Jedai has joined #ocaml
|Jedai| has quit [Read error: 110 (Connection timed out)]
fatalerrorx has joined #ocaml
fatalerrorx has left #ocaml []
jeremiah has quit [Read error: 104 (Connection reset by peer)]
jeddhaberstro has joined #ocaml
jeddhaberstro has quit [Remote closed the connection]
jeremiah has joined #ocaml
BarackOboto has joined #ocaml
BarackOboto has quit [Remote closed the connection]
fatalerrox has joined #ocaml
hsuh has quit [Remote closed the connection]
fatalerrox is now known as fatalerrorx
fatalerrorx has quit []
fatalerrorx has joined #ocaml
johnnowak has joined #ocaml
fatalerrorx has quit []
Submarine has joined #ocaml
maxote has left #ocaml []
maxote has joined #ocaml
ygrek has joined #ocaml
<palomer> thelema, whoa
<palomer> thelema, I think I'm going to file another bug report
<palomer> this one will be titled "program takes up more and more memory and then dies"
<palomer> as opposed to "memory leak"
<palomer> thelema, did you change the code in any way?
* palomer is off to bed
blue_prawn has joined #ocaml
<blue_prawn> good morning all
johnnowak has quit []
GustNG has joined #ocaml
marmotine has joined #ocaml
fatalerrorx has joined #ocaml
bohanlon` has joined #ocaml
bohanlon has quit [Read error: 104 (Connection reset by peer)]
jeremiah has quit [Read error: 104 (Connection reset by peer)]
Camarade_Tux_ has joined #ocaml
Camarade_Tux has quit [Read error: 110 (Connection timed out)]
_zack has joined #ocaml
Camarade_Tux_ is now known as Camarade_Tux
filp has joined #ocaml
ulfdoz has joined #ocaml
Linktim has joined #ocaml
jeremiah has joined #ocaml
fatalerrorx has quit []
Linktim_ has joined #ocaml
yziquel has joined #ocaml
<yziquel> Hello. I just managed to install godi on my virtual machine. Well, perhaps: should godi_console say "This is the GODI bootstrap console - no interactive mode available" ???
<yziquel> when typing "godi_console" inside a cygwin terminal?
tomh has joined #ocaml
<yziquel> haven't used godi a lot before...
tomh has quit [Client Quit]
Linktim has quit [Read error: 113 (No route to host)]
Linktim_ has quit [Read error: 110 (Connection timed out)]
<flux> yziquel, it sounds like you didn't rub stage 2 of the installation
<flux> or perhaps godi/win32 doesn't support it
<flux> run, not rub :)
longh has joined #ocaml
yziquel has quit [Read error: 54 (Connection reset by peer)]
jeremiah has quit [Read error: 104 (Connection reset by peer)]
jeremiah has joined #ocaml
vixey has joined #ocaml
jeremiah has quit [Read error: 104 (Connection reset by peer)]
tsuyoshi has quit ["Lost terminal"]
tsuyoshi has joined #ocaml
damg has quit [Remote closed the connection]
jeremiah has joined #ocaml
jeremiah has quit [Connection reset by peer]
<vixey> inria's svn is down :/
jeremiah has joined #ocaml
<thelema> vixey: inria has svn? I only know of cvs
<vixey> yaeh
jeremiah has quit [Connection reset by peer]
_Jedai_ has quit ["KVIrc 3.4.0 Virgo http://www.kvirc.net/"]
mishok13 has joined #ocaml
<thelema> vixey: if you like, there's a git mirror of ocaml's cvs on github.
Demitar has quit [Remote closed the connection]
jeremiah has joined #ocaml
<thelema> err, not on github, on repo.or.cz
yziquel has joined #ocaml
yziquel has quit [Client Quit]
yziquel has joined #ocaml
hsuh has joined #ocaml
yziquel has left #ocaml []
mishok13 has quit [Read error: 60 (Operation timed out)]
tomh has joined #ocaml
jeremiah has quit [Read error: 104 (Connection reset by peer)]
mishok13 has joined #ocaml
yziquel has joined #ocaml
jeremiah has joined #ocaml
Amorphous has quit [Read error: 110 (Connection timed out)]
Amorphous has joined #ocaml
_zack has quit ["Leaving."]
<mfp> http://www.reddit.com/r/programming/comments/7ap4b/mlpost_an_ocaml_interface_to_metapost/ -> I suppose the main gain is the type system + the use of HoFs instead of macros?
<flux> I'm guessing it might also be a more sane language, if MetaPost is based on Knuth's METAFONT ;-). (no ide areally what that looks like)
<flux> apparently MetaPost is sort of a tool for other tools, although you could use it directly: http://plan9.bell-labs.com/who/hobby/mpapplic.html
bohanlon` is now known as bohanlon
code17 has joined #ocaml
Linktim has joined #ocaml
ttamttam has joined #ocaml
<mfp> flux: that's a strange link you got... http://plan9.bell-labs.com/who/hobby/MetaPost.html > "MetaPost is a powerful graphics language based on Knuth's METAFONT, but with PostScript output and facilities for including typeset text."
<flux> what do you mean by strange?
<flux> that's exactly the quote I drew my conclusions from :)
<mfp> well "is sort of a tool for other tools" sounds like a diff thing
<flux> the link I have was a list of other applications that made use of MetaPost
<flux> wouldn't that match the definition of a tool used by other tools?
<mfp> ah sorry, I misread that as a tool to use other tools
ttamttam has left #ocaml []
Yoric[DT] has joined #ocaml
Associat0r has quit [Client Quit]
<Yoric[DT]> hi
Iskr has joined #ocaml
pango has quit [Remote closed the connection]
<thelema> hi Yoric[DT]
<thelema> we've converted to git (if you hadn't noticed)
<Yoric[DT]> \o/
<Yoric[DT]> No, I haven't noticed, I'm just back from holidays and my 500+ e-mails aren't downloaded yet :)
<thelema> heh.
<thelema> not too much on the development end - I'm still working on flushing out ropes.
<Yoric[DT]> flushing or fleshing?
<thelema> you're right, fleshing. I want to flush them sometimes, though.
pango has joined #ocaml
<Yoric[DT]> :)
<Yoric[DT]> On my side, I've been working on a types-and-effects type system for OCaml.
<Yoric[DT]> Not something which can be neatly integrated into Batteries, though :)
<thelema> contrary to some thought, there are some things that don't go into batteries.
longh has quit [Read error: 104 (Connection reset by peer)]
_zack has joined #ocaml
yziquel has quit [Read error: 110 (Connection timed out)]
Axioplase has joined #ocaml
Linktim has quit [Read error: 104 (Connection reset by peer)]
Linktim has joined #ocaml
* thelema tries the latest ocaml cvs vs. batteries
<thelema> and fails to compile ocaml.
thelema has quit ["finishing ubuntu upgrade"]
<blue_prawn> do you know if there is yet a DB implemented in ocaml ?
<Yoric[DT]> In OCaml?
<Yoric[DT]> Or for OCaml?
<Yoric[DT]> (and yes, I actually know of one implemented in OCaml, but it's proprietary)
<blue_prawn> proprietary and open source ?
<Yoric[DT]> No, proprietary and closed source.
<Yoric[DT]> They promise to liberate it eventually, but not before two years.
<blue_prawn> who is this "they" ?
<Yoric[DT]> MLState
<blue_prawn> i've started to make a small toy naive one
thelema has joined #ocaml
<Smerdyakov> What's wrong with PostgreSQL?
<blue_prawn> I don't understand?
<Smerdyakov> Why are you implementing "a DB"?
<blue_prawn> I'm a beginner, and I took it as an exercise
<blue_prawn> and programming is one of my hobbies, so I have to find subjects
<blue_prawn> but I guess my toy db is very naive
<blue_prawn> I would be pleased if I find a teacher or an experienced programmer to give me comments about it
hkBst has joined #ocaml
<thelema> blue_prawn: ocaml could use bindings to memcached
<blue_prawn> just found this:
hkBst has quit [Remote closed the connection]
hkBst has joined #ocaml
<thelema> well... never mind, then.
<blue_prawn> but the link until the archive doesn't work
<Smerdyakov> blue_prawn, to me, it helps to choose projects with actual independent value.
<blue_prawn> Smerdyakov: sorry I'm not sure to understand what you mean, could you re-formulate the same sentence in a different way ? (sorry for my bad english)
<flux> interfacing with memcached from ocaml indeed does look like something that would better be implemented as a native ocaml library instead of writing bindings to some c library - the protocol is that simple, and a good implementation would likely make use of callback functions
<Smerdyakov> blue_prawn, I don't think it makes sense to choose "learning projects" that you wouldn't work on for purposes beyond education.
<blue_prawn> ha ok
<blue_prawn> but I will use my toy db for my personal use
<blue_prawn> perhaps also for my website
Kerris4 has quit [Read error: 104 (Connection reset by peer)]
<flux> if one wants experience in writing databases in ocaml, there don't seem to be much other options than to write your own :)
<flux> (writing databases instead of merely writing code to interface with one)
<_zack> thelema: I'm looking for my way into batteries code, where should I put the wrapper around camlzip? src/core/baselib/ or rather src/core/camlzip/ ?
<_zack> I think my case is quite new, since it is the first really external library to be integrated ...
<Smerdyakov> blue_prawn, why would you want to do that?
<Smerdyakov> blue_prawn, instead of using Postgres?
<blue_prawn> for example for my website, if I want a PG DB I have to pay
<_zack> blue_prawn: don't they have sqlite installed?
<thelema> _zack: core/camlzip
<_zack> thelema: ack, so each external lib would have its own entry there
<blue_prawn> yes surely, but even then, this was a subject I was interested to work on
<thelema> well, I don't think it goes in extlib.
<_zack> thelema: that's for sure
<_zack> but I was more generally wondering about the general policy
<Smerdyakov> blue_prawn, the cost of getting hosting with real tools installed is so low that I don't accept your reason as a good one.
<thelema> I have different inclinations on the organization of batteries than Yoric[DT], who has set up the current organization
<Yoric[DT]> mmmh?
<Yoric[DT]> Ah.
<_zack> Yoric[DT]: read above, my question to thelema
<Yoric[DT]> Yep, just seen.
<Yoric[DT]> I'd put it in src/core/camlzip/.
<_zack> Yoric[DT]: I thought DT was for "detached" or something, that's why I didn't ping you as well :/
<Yoric[DT]> :)
<blue_prawn> Smerdyakov: it's my personnal website, not a professional one
<Yoric[DT]> DT is because I'm not the only Yoric around here.
<thelema> DT is David Teller, no?
<Smerdyakov> blue_prawn, why is that relevant?
<Yoric[DT]> (well, the other one may be spelt Yorik or something such, but it's still confusing)
<Yoric[DT]> thelema: indeed
<_zack> thelema: I guess so
<Smerdyakov> blue_prawn, $5/mo. is more than enough to get everything you need.
<_zack> Yoric[DT]: but you used to be just "Yoric", don't you?
code17 has quit ["Leaving."]
<Yoric[DT]> Yes.
<Yoric[DT]> Well, there's no deep and profound reason on this.
<Smerdyakov> blue_prawn, that's the price now for HCoop (http://hcoop.net/). We will probably raise dues soon, but it will still be trivial for anyone with income.
<Yoric[DT]> s/on/for/
<thelema> anyway, about batteries...
<blue_prawn> Smerdyakov: yes, but the problems stays the same: programming is a hobby for me, so I have to find subjects
<_zack> Yoric[DT]: actually, I was curious and checked, the "Yoric" nickname on freenode was last seen more than 1 year ago, usually it's enough to ask for taking over a nick
<thelema> I'd prefer code that depends on something external to the project go in /src/<projectname>
<Yoric[DT]> ok
<Yoric[DT]> Sorry, afk.
<_zack> thelema: or maybe src/contrib/ ?
<thelema> I don't find much value in core/
<Smerdyakov> blue_prawn, work only on projects that you wish existed, even if someone else built them. That's my advice.
<_zack> but I see your point, something like camlzip it's definitely not "core"
<thelema> I guess the unicode ropes are kinda an exception, as we intend them to be a major data structure (nearly replacing string)
<_zack> nevertheless, a tons of dirs under src/ won't be good either
<thelema> so we want it part of the core.
<_zack> so src/contrib/ or src/libs/ can be better suited
<thelema> only one dir per subproject
<thelema> maybe /src/libs/camlzip
<_zack> thelema: but still, it is a more detailed classification than, say, "syntax"
<thelema> that sounds good to me.
<_zack> so I don't think they should be at the same level
<_zack> src/libs/ is fine with me
* thelema is very pragmatic about directories -- too many makes things hard to find just as too few does.
<_zack> while we are at batteries, any reason why the nothread/ stuff uses the Inner module indirection, while thread/ doesn't?
<thelema> that's a yoric question.
<_zack> Yoric[DT]: ^^^
<Iskr> sorry
<Iskr> i can't really stand OCaml syntax
<Iskr> have you got any suggestions to make me appreciate it?
<flux> yes
<flux> write more code in it :)
<Iskr> or can you point me to a better tutorial than http://www.ocaml-tutorial.org
<flux> the ocaml documentation
<blue_prawn> or make your own revised syntax
<flux> the site links to that, among other resources
* thelema twists Iskr's arm to make him appreciate OCaml syntax
Submarine has quit [Read error: 110 (Connection timed out)]
<Iskr> ahaha
<Raevel> i really like it, im so sick of c-style
<flux> iskr, which tihngs in particular strike to as uncoming?
<thelema> you could try reading some simple code written in it. The ocaml standard libraries helped me.
<Iskr> i don't know it doesn't make much sense to me
<flux> iskr, please say it's the ;;'s, because they are completely unnecessary ;-)
<Iskr> haskell and erlang syntax seem better
<Iskr> (to me)
<thelema> better for what?
<Iskr> for my understanding
<thelema> well, english seems better for my understanding than greek, but that's only because I don't know greek.
<Iskr> i don't know neither haskell or erlang
Jedai has quit ["KVIrc 3.2.4 Anomalies http://www.kvirc.net/"]
<thelema> okay, can you explain what construct appears confusing?
<Iskr> i think i was just using the wrong tutorial
Jedai has joined #ocaml
<Iskr> the manual is more clear
tomh has quit ["http://www.mibbit.com ajax IRC Client"]
tomh has joined #ocaml
<Yoric[DT]> _zack: it's a matter of documentation.
<Yoric[DT]> We get a nicer ocamldoc output without Inner.
<_zack> so Inner should be expanded as well, right?
blue_prawn has quit ["Client exiting"]
<Iskr> i think i'm also looking at a very badly written code
longh has joined #ocaml
<thelema> Iskr: what code are you looking at
<thelema> yes, they have some anti-patterns in their code.
<Iskr> you already knew it?
<thelema> no, I just downloaded the code and am browsing
<Iskr> ah ok
<Iskr> you have been very quick
<Iskr> moreover we were trying to compile it on a bsd server
<Iskr> and it givers some errors
<thelema> really? the same code should compile on bsd and linux
<Iskr> yes
<Iskr> but we can't use the same makefile
<thelema> ah... that would cause problems...
<Iskr> doing 'by hand'
<Iskr> we got this error
<Iskr> let me paste it
<flux> easier to install gnu make perhaps?
<thelema> compilation with ocaml is unnecessarily complex
<thelema> at least before ocamlbuild
<Iskr> on ocamlopt.opt -c -inline 23 -unsafe parser.mli -o parser.cmi
<Iskr> File "parser.mli", line 36, characters 48-59:
<thelema> drop the "-inline"
<thelema> drop the "unsafe"
<Iskr> Unbound type constructor Absyn0.decl
<thelema> heh. I get the same error on my computer
<Iskr> is it a bsd?
<thelema> using ocamlbuild to take care of dependencies, etc.
<thelema> no, I run ubuntu
<Iskr> ah ok
<Iskr> (but i mean you are not using the makefile provided)
<thelema> no, I'm not.
<Iskr> ok
<Iskr> (che -inline and -unsafe drop didn't work)
<thelema> that was a general suggestion, not a compilation fix
gal_bolle has quit [Remote closed the connection]
<Iskr> right
<thelema> well, parser.mli depends on absyn.ml
<Iskr> yes
<thelema> # workaround for ocamlyacc "open" lack
<thelema> @mv parser.mli _parser.mli
<thelema> @echo -e "open Absyn\n" >parser.mli
<thelema> @rm -f _parser.mli
<thelema> @cat <_parser.mli >>parser.mli
<thelema> oops, reverse those last two lines
<Iskr> right
<Iskr> i think we are getting it
pango has quit [Remote closed the connection]
<Iskr> let's see if it works now...
<Iskr> it works!
<Iskr> thank you
pango has joined #ocaml
<thelema> you're welcome.
<_zack> thelema, Yoric[DT]: so, how should libraries in src/libs/ refer to stuff in batteries (e.g., System.IO), via the final module path or via the implementation module path?
<thelema> implementation module path
<thelema> final path is only for external code
GustNG has quit ["Leaving."]
<thelema> (at least that's my initial reaction)
<_zack> k
<thelema> any reason I haven't thought for the other way?
GustNG has joined #ocaml
<_zack> thelema: well, in a sense, the "external" library we are gonna integrate just need glue code, which is likely to be implementable even using the external API...
<_zack> but the principle of using inside batteries only the implementation path is a sane one
<thelema> I think of batteries as having a bunch of libraries stuck together, with a nice mask of code that gives a satisfactory presentation to the mess behind the scenes
threeve has joined #ocaml
<_zack> thelema: tell me, why I don't feel happy about being behind the scenes? :)
<thelema> you're not behind the scenes, just your ugly code. :P
<_zack> i'll ask him to write himself them!
<thelema> j/k
pango has quit [Remote closed the connection]
pango has joined #ocaml
GustNG1 has joined #ocaml
ttamttam has joined #ocaml
GustNG has quit [Read error: 60 (Operation timed out)]
aspirant1 has joined #ocaml
ttamttam has left #ocaml []
<aspirant1> bu ne
Iskr has left #ocaml []
<thelema> aspirant1: I agree.
<aspirant1> nasıl yani
<aspirant1> ?
<thelema> sorry, I don't really understand you.
<aspirant1> thanks thelema
aspirant1 has quit ["Ex-Chat"]
Linktim has quit [Read error: 104 (Connection reset by peer)]
Linktim has joined #ocaml
marmotine has quit [Remote closed the connection]
Linktim_ has joined #ocaml
marmotine has joined #ocaml
marmotine has quit [Remote closed the connection]
GustNG1 has quit ["Leaving."]
Linktim has quit [Read error: 110 (Connection timed out)]
Linktim has joined #ocaml
Linktim_ has quit [Read error: 110 (Connection timed out)]
jeremiah has quit [Read error: 104 (Connection reset by peer)]
ygrek has quit [Remote closed the connection]
Linktim has quit [Read error: 110 (Connection timed out)]
jeremiah has joined #ocaml
ulfdoz has quit ["deprecated"]
Yoric[DT] has quit ["Ex-Chat"]
jeremiah has quit [Read error: 104 (Connection reset by peer)]
GustNG has joined #ocaml
Kerris4 has joined #ocaml
jeremiah has joined #ocaml
jeremiah has quit [Read error: 104 (Connection reset by peer)]
GustNG has quit [Read error: 110 (Connection timed out)]
Linktim has joined #ocaml
jeremiah has joined #ocaml
filp has quit ["Bye"]
jeremiah has quit [Read error: 104 (Connection reset by peer)]
Linktim has quit [Read error: 110 (Connection timed out)]
<flux> 10% performance increase by going from using strings to using self-made substring module, another 10% by going from non-mutable iterators to mutable to further reduce allocation rate
<flux> (the task at hand: parsing mailbox files)
<flux> I'm guessing I won't be able to squeeze it much further, as 12% is taken by scanning for newlines (!), 35% by memory management (!!), unless I found another smart way to reduce the allocation rate
<flux> find, even
<Camarade_Tux> flux, how fast are your currently processing mails ?
<flux> around 20M/s on a 1.3GHz Pentium
jeremiah has joined #ocaml
dobblego has quit [Remote closed the connection]
<flux> or in other terms: if each post is around 8 KB long, around 2600 per second
jeremiah has quit [Read error: 104 (Connection reset by peer)]
dobblego has joined #ocaml
<Camarade_Tux> I'm wondering when you'll stop optimizing it :p
<flux> I think I'm about done now :)
dobblego has quit [Client Quit]
<flux> I'm actually wondering if I should even use the latest version, as it does use mutation quite a lot..
<flux> I'm bound to do some allocations per line as I use Enum in the parser
<flux> but perhaps there is a limit to optimizations :)
Associat0r has joined #ocaml
<Camarade_Tux> I think there is one but I don't think you've reached it :p
jeremiah has joined #ocaml