flux changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | 3.11.0 out now! Get yours from http://caml.inria.fr/ocaml/release.html
negacthulhu has joined #ocaml
xcthulhu has quit [Read error: 104 (Connection reset by peer)]
r0bby has quit [Read error: 60 (Operation timed out)]
r0bby has joined #ocaml
patronus_ has quit [Read error: 60 (Operation timed out)]
patronus has joined #ocaml
<xerxes_> HI! Is there an ocaml-api for gnome?
<Alpounet> only for gtk
<Alpounet> not the whole gnome project ...
<xerxes_> aw...ok
<Alpounet> "lablgtk2", for GTK 2.x
<xerxes_> yeah...i know....but I want to pimp the desktop
<Alpounet> yeah
<Alpounet> you can do it yourself
<Alpounet> using the C FFI
<Alpounet> but it would be ... long and hard.
<xerxes_> exactly
<xerxes_> and i must myself care for valid input from the ffi
<xerxes_> is there some input checker for ffi in th eocaml world?
<Alpounet> input checke ?
<Alpounet> checker*
<Alpounet> can you explain ?
zbrown has joined #ocaml
<xerxes_> Well, some sort of checking the value range you would expect from that function
<xerxes_> im afraid of no-type-checking or so...
<Alpounet> well
<Alpounet> the range checking has to be done by the C API
<Alpounet> the OCaml layer just has to forward calls to the C API
<xerxes_> hope gnome has something like that already build in
<mrvn> Does Val_int(x) check for overflow?
<mrvn> And what does it do then?
<zbrown> Is there a good book published on working with ocaml? I've got Practical OCaml but I find it... lacking at best.
<mrvn> I always use the ocaml docs as reference material.
<palomer> Alpounet, allo!
<Alpounet> yeah.
<xerxes_> that should help, zbrown
<xerxes_> I have a general question, what is the difference between python and ocaml in the language part?
<mrvn> python is imperative, ocaml is functional (mostly).
<xerxes_> I think python is also functional
<mrvn> python has only runtime types and ocaml compile time types, strict types at that
<xerxes_> ok thats a point
* wli would not regard Python as functional owing to the situation regarding higher-order functions.
<mrvn> And somewhat like 90% of bugs are type errors.
<xerxes_> ok...then I stick with ocaml....if there are only as good libraries as in python
<mrvn> In ocaml once the code compiles it eigther work right or does something completly insane usualy.
<mrvn> xerxes_: python is a script language, ocaml not. Different fields of use.
Amorphous has quit [Read error: 110 (Connection timed out)]
<xerxes_> isnt ocaml also scriptable?
<mrvn> xerxes_: with enough effort everything is
<xerxes_> thought lindows back in the days was scripted in ocaml
<zbrown> xerxes_: batteries helps with some of those deficiencies
<mrvn> > Printf.printf "I am a bot\n";;
* wli generally gets into a situation very quickly where the validity of the output and/or responses to stimuli are what there is to debug vs. type errors and/or memory management errors persisting throughout the programming process and taking a while to overcome.
<mrvn> .oO( We used to have a bot here for a while )
<xerxes_> batteries? Is it a library or what?
<zbrown> xerxes_: ya
<xerxes_> interessting
<mrvn> wli: yeah, algorithmical correctness versus the code doesn't crash.
<wli> It saves a tremendous amount of mental/intellectual overhead.
<xerxes_> batteries looks pretty promising...
Amorphous has joined #ocaml
<mrvn> That's why I say if it compiles it works. :) I think out the algorithm and if I thought it right then it will work once it compiles usualy.
<zbrown> xerxes_: its something thats been a long time coming (and needed)
<xerxes_> Has anyone benchmarked ocaml 3.11 compiled with gcc 4.4?
<mrvn> xerxes_: only installed gcc-4.4 today.
<xerxes_> Speed is a high factor of my judgement
<wli> It depends. If it's an easy enough problem then that holds. Otherwise I end up debugging output/response vs. runtime manipulations _and_ output/response.
<zbrown> xerxes_: whats your target application?
<xerxes_> well, i want to try a multiagent system...better would be a system that comiles a multiagent system :D
<zbrown> I suspect a multi-agent system is more ideal in erlang
<xerxes_> can you explain why?
* wli isn't even sure what a multiagent system is.
<mrvn> xerxes_: and no multi-core support in ocaml.
<zbrown> xerxes_: erlang is a highly concurrent language, scales threads/actors to huge numbers
<xerxes_> wli: think of mobile processes
<mrvn> xerxes_: if you have a heterogen network (all the same arch) then you can pass around closures.
* wli could've sworn he did something vaguely concurrent (albeit rather simple) in ocaml a while back, like forking or some such.
<mrvn> wli: you can have threads. They just don't run concurrent for those parts that are in ocaml.
<mrvn> i.e. only one thread can run ocaml code at any one time.
<wli> It sounds like a limitation I wouldn't have had trouble with.
m3ga has joined #ocaml
<mrvn> The only ocaml code I have that uses 100% cpu is a fractal program and that has an inner loop in C.
<zbrown> xerxes_: essentially erlang was written with concurrency and fault tolerance in mind
<zbrown> xerxes_: the only other language I'd consider for what you're describing is probably Scala (or Java but its inelegant)
<zbrown> xerxes_: granted you could probably get a nice simulation using Clojure
<zbrown> really any substantial language on the JVM woudl work well as the JVM has a very good threading model
<mrvn> Passing agents accross the network is a serious security consideration though.
<zbrown> true
<zbrown> I mean it depends on your network topo
<zbrown> is the system running on trusted network or do you need to do the necessary security models
<Alpounet> Haskell'd be nice too
<mrvn> I always wanted to write an agent based gui toolkit though. You write an agent for a file dialog, send it to the display and it runs there handling exposure and mouse cliks and such locally.
<Alpounet> btw, OCaml'd have been good if my JSSP project were selected :-(
xerxes_ has quit [Read error: 113 (No route to host)]
<mrvn> With the agent being themeable.
<zbrown> Alpounet: ya... though haskell hurts more than the other languages to work with
<zbrown> lol
<zbrown> hmmmm now to decide.... ocaml via MacPorts or via Godi...
<zbrown> so many decisions :-|
* zbrown thinks godi might be better
<mrvn> apt-get install ocaml
<Alpounet> on Mac ?
<zbrown> Alpounet: ya
<mrvn> debian for ppc, x86 or amd64.
<zbrown> :) I like my mac, I'll stick with it
<Alpounet> heh
<Alpounet> But I think he'd like to keep going on with his mac
<Alpounet> and his Mac OS X
xerxes_ has joined #ocaml
<zbrown> hmmm Godi is behind
<zbrown> its only 3.10
<palomer> I know!
<Alpounet> there's a trick
Ched has quit [Read error: 110 (Connection timed out)]
<Alpounet> for getting it to 3.11
<zbrown> Alpounet: oh?
Ched has joined #ocaml
<zbrown> sweet
<Alpounet> must go
<Alpounet> good night/evening/morning all
<zbrown> Alpounet: thanks much
<xerxes_> bye
<zbrown> xerxes_: did you catch my comments on other considerations for your multi-agent system?
<xerxes_> yes, the concurrency is a point thats important i think
<mrvn> xerxes_: do your agent need a lot of cpu?
<xerxes_> well, it depends on the application...I want the agents as small as possible for my study to get a high amount of them
<zbrown> xerxes_: If it were me, I would go with Clojure, Scala or Erlang
<Alpounet> or Haskell
<zbrown> probably with Erlang as my first consideration
<zbrown> Alpounet: ya or haskell
<mrvn> Alpounet: Is haskell multi-core?
<zbrown> though like I said, Haskell will hurt the most
<zbrown> mrvn: ya, Data Parallel Haskell
<Alpounet> mrvn, yeah, quite good at it :)
<Alpounet> good night
Alpounet has quit ["Quitte"]
<zbrown> I've done a distributed agent system in Erlang and Scala, Erlang was nice
<palomer> haskell's a pain unless you've written the program before in another language before
<xerxes_> I have some experience with MAS on Java, agents with high communication skills and not ...i cant decide
<xerxes_> haskell is not my favourity choise because of the crappy module system
<zbrown> xerxes_: If it were me I'd implement it in Erlang, Scala, Clojure, then <whatever> as my choice of language
<xerxes_> dont know any of these
<palomer> xerxes_, xerxes_ of lojban fame?
<xerxes_> what is lojban fame?
<zbrown> xerxes_: :) erlang's not that hard to learn, its hard to get used to the easy RPC but once you've got it down its simple
<palomer> xerxes_, were you interested in lojban before?
<zbrown> palomer: apparently not then
<palomer> guess not:/
<zbrown> xerxes_: either way, if you're shopping for languages, then obviously you're willing to learns omething :)
<zbrown> xerxes_: Erlang is good for what you describe, Scala will be a more marketable skill long term because of prevalence of JVM, Clojure is good as well due to JVM
<xerxes_> hihi...that should be true....I know c, pascal, modula-3, some java, some python...
<xerxes_> but ocaml looks so rocking pretty to me
<mrvn> xerxes_: so assembler, useless, more useless, more ugly and some script language.
<xerxes_> jepp
<zbrown> :)
<zbrown> I unno, I intend to use ocaml for some work with compilers/interpreters
<zbrown> most eveyrthing else I do is in Ruby lately
<zbrown> also been doing lisp/scheme-ish things
<xerxes_> ruby is sooooo slow
<xerxes_> in these days
<zbrown> xerxes_: not really for what I do
<zbrown> I use JRuby so its fast enough
<zbrown> xerxes_: nevermind I'll take expressive syntax over speed any day
<xerxes_> does anyone know, if I can use java functions in scala?
<zbrown> xerxes_: yes, you can
<zbrown> you can interface with pretty much any java lib through scala with little or no effort
<mrvn> If you want touse java functions how about using java?
<xerxes_> cool....is scala also functional?
<xerxes_> mrvn: I like my targed application as functional as possible...i think it safes me a lot of headache
<zbrown> xerxes_: yes, scala is functional
<xerxes_> yipie
<zbrown> it mixes functional and imperative styles
<zbrown> it also has Smalltalk-like Actor objects
<xerxes_> ok...bye you ocaml bastards ;)
<zbrown> xerxes_: the fun thing about Scala is unlike ocaml and haskell it can infer types on inherited classes :)
<xerxes_> that is not possible with ocaml?
<zbrown> nope
<zbrown> ocaml's 'object system' is well... largely unused
<mrvn> you can have class types
<zbrown> it gets used
<palomer> err, I use ocaml's object system quite heavily
<palomer> and the types of the classes I use are all infered
<xerxes_> I thought also functional and oo is the golden path to enlightmend
<zbrown> palomer: hmmm I need to find the paper agin, maybe I've become delusional due to exams and no sleep
<zbrown> xerxes_: meh its all just syntax :)
<zbrown> variations on a model
<xerxes_> yes, but some syntax is pain in the ass for me
<xerxes_> i dont want to go through all states just because i use an imperative language
<zbrown> indeed
<zbrown> I really have lost my mind :-|
<zbrown> I hate when that happens.
<xerxes_> hmmm....I have an idea, what about implementing ocaml on the jvm?
<xerxes_> showstopper or rocker?
<zbrown> xerxes_: http://ocamljava.x9c.fr/
<xerxes_> awww...ok i look at scala
<zbrown> xerxes_: I'd go with scala personally
<zbrown> not that I don't like ocaml, scala is just already a robust language
<zbrown> on the jvm that is
m3ga has quit ["disappearing into the sunset"]
<xerxes_> ok...so it seems im going to learn scala and perhaps later ocaml for zen issues
m3ga has joined #ocaml
<zbrown> xerxes_: Programming Scala would be a good book to invest in :)
<xerxes_> As I said, funcionality and speed was my highest concern, but there seem to be much more factors to make my superduper-MAS...
<zbrown> xerxes_: there always are :).
<xerxes_> ok i need to go to bed...thank you for your fingerpointing and enlighting me
xerxes_ has left #ocaml []
r0bby has quit [Client Quit]
r0bby has joined #ocaml
palomer has quit ["Leaving"]
seafood has joined #ocaml
seafood__ has quit [Read error: 145 (Connection timed out)]
slash_ has joined #ocaml
m3ga has quit ["disappearing into the sunset"]
Associat0r has quit []
seafood has quit []
komar_ has joined #ocaml
seafood has joined #ocaml
xerxes_ has joined #ocaml
<xerxes_> hmm...i think i dont like scala so much
<xerxes_> the type inference is very weak
<xerxes_> so i pray to the ocaml gods to implement multicore threads
<mrvn> create X processes and send closures around.
seafood has quit []
<xerxes_> i dont know anything about closures
<mrvn> xerxes_: functions
<xerxes_> hm
<mrvn> do your agents modify a global database?
<xerxes_> no, they hang around different database systems
<mrvn> so you have various external SQL databases?
<xerxes_> im not even sure if it is sql
<mrvn> doesn't most cpu time go to the databases then? You can run one agent while the others are waiting for their DBs.
<xerxes_> well, i think like this: Type in 'world order' on your mobile phone, let the job do a computing cloud ( connecting databases and so on) and present the information on the mobile phone
<mrvn> then you have one ocaml process on every node of the cloud all running in parallel. Isn't that enough?
<xerxes_> the agents and their job move from my mobile phone to the cloud and back again
<xerxes_> no i need interprocess communication at a high level
<mrvn> if marshaling isn't enough then you need to write some more.
<xerxes_> so one process can talk to the other 'here is just crap in the database'
<mrvn> But the limit to a single ocaml running thread at any one time really isn't a limiting factor there.
<xerxes_> and that should not go to the mobile phone
<xerxes_> well, perhaps for the cloud, if the architecture is multicore...i dont know in advance
<mrvn> xerxes_: then the db and the ocaml process will run in parallel.
<mrvn> And the DB can probably make 3 cores busy while ocaml runs on the 4th or so.
<xerxes_> not really, if you think as my command moving the whole cia into the cloud one process isnt adequate I think
maskd has quit [Read error: 60 (Operation timed out)]
<xerxes_> And its not a 1-1 relation of agent and database
<xerxes_> possibly a database gives me good actual information so it atracts a whole crowd of agents
<xerxes_> that crowd of agents must then share one process
<mrvn> For your communication you can have type agent = unit -> string option let echo_agent text () = Some ("echoing " ^ text) and send Marshal.to_string (echo_agent "test test") [Marshal.Closures] over the network.
<mrvn> You can run many agents in parallel on every node. They just can't really run at the same time in the ocaml part. They will time share.
<xerxes_> well, that would be a possibility if i only use pure ocaml, but every agent can in principle run on a different platform other than ocaml
<xerxes_> for that I need high level communication
<mrvn> And if it really needs more cores run 2 servers on a node and a little proxy that distributes incoming agents between the 2.
<mrvn> If you have different platforms then you can't have custom agents. You have to predefine some agents and a protocol to select which agent should be run and what args to use.
<mrvn> or stick with bytecode.
maskd has joined #ocaml
<xerxes_> hm
<mrvn> In bytecode you can define a toplevel and send the source for the agents across the network.
<mrvn> And you can restrict the toplevel to only allow save operations. Deny file access for example.
<xerxes_> ok...the solution you offer reminds me alot of jocaml
<xerxes_> but the simple scalability issue and the high level communication is still a lack
<mrvn> A few days ago we had a ocaml bot in here. You could just type '> ocaml code;;' and it would run it. That is basically what your agents need.
<xerxes_> interessting
<xerxes_> moving just the ocaml source for the agent job sounds promising
<mrvn> You can even move the source once and then just call it again and again with different args.
<xerxes_> ok i think i try that...that is a possible solution i havent thought about
<xerxes_> so every agent is simply just a sort of restricted toploop
<xerxes_> makes sence to me
<mrvn> the agents run in a restricted toploop.
<mrvn> you can run multiple in the same toplevel. They can share variables and such.
<mrvn> Or you fork a new one for every agent if you like.
<xerxes_> interesting
<xerxes_> aw there is an ocaml version with xml appendix, right?
<xerxes_> ok ...i make up my mind and come back tomorrow...thanx alot mate
jamii has joined #ocaml
smimou has quit [Read error: 104 (Connection reset by peer)]
smimou has joined #ocaml
ulfdoz has joined #ocaml
s4tan has joined #ocaml
slash_ has quit [Read error: 110 (Connection timed out)]
OChameau has joined #ocaml
Camarade_Tux has joined #ocaml
Camarade_Tux has quit [Read error: 104 (Connection reset by peer)]
Camarade_Tux has joined #ocaml
angerman has joined #ocaml
OChameau has quit [Read error: 110 (Connection timed out)]
hkBst has joined #ocaml
robocop has joined #ocaml
<robocop> Hello. I've got this error with ocamlyacc : http://paste.pocoo.org/show/116230/
<robocop> Where do you think it might come?
verte has joined #ocaml
<robocop> I never seen this error...
<robocop> How, I understand, token is a type of the implementation of ocamlyacc...
<robocop> so, I can't use it.
<robocop> sorry for the question.
kaustuv_ has quit [Read error: 113 (No route to host)]
itewsh has joined #ocaml
Alpounet has joined #ocaml
jeanbon has joined #ocaml
<gildor> a bientot
<Alpounet> ?
<robocop> mauvais fenêtre je crois :D
<gildor> yes, browsing the channel and recall the wrong line in irssi
<robocop> helper.ml is a reserved name of file in ocaml ?
<robocop> ha, no...
itewsh has quit [Read error: 110 (Connection timed out)]
itewsh has joined #ocaml
xerxes_ has quit [Read error: 60 (Operation timed out)]
sanguinev has quit [Remote closed the connection]
itewsh has quit [Connection timed out]
itewsh has joined #ocaml
sanguinev has joined #ocaml
maxote has quit [Read error: 60 (Operation timed out)]
itewsh has quit [Connection timed out]
itewsh has joined #ocaml
Kerris7 has joined #ocaml
sOpen has quit [Read error: 145 (Connection timed out)]
maxote has joined #ocaml
jonafan_ has joined #ocaml
itewsh has quit [Connection timed out]
itewsh has joined #ocaml
Yoric[DT] has joined #ocaml
robocop has quit ["Leaving."]
jonafan has quit [Read error: 110 (Connection timed out)]
robocop has joined #ocaml
<Yoric[DT]> hi
_andre has joined #ocaml
<zbrown> hi
jeanb-- has joined #ocaml
jeanbon has quit [Nick collision from services.]
jeanb-- is now known as jeanbon
itewsh has quit [Connection timed out]
komar_ has quit [Read error: 60 (Operation timed out)]
itewsh has joined #ocaml
rjack has joined #ocaml
sporkmonger has quit []
komar_ has joined #ocaml
jeanbon has quit [Nick collision from services.]
jeanb-- has joined #ocaml
jeanb-- is now known as jeanbon
smimram has joined #ocaml
smimou has quit [Read error: 104 (Connection reset by peer)]
sporkmonger has joined #ocaml
sporkmonger_ has joined #ocaml
<Camarade_Tux> gnulib's documentation is generated through a shell script, I'm on msys and it has been running for about an hour and should run for another hour again, I'll probably never complain again about batteries' documentation generation ;)
verte_ has joined #ocaml
verte has quit [Read error: 60 (Operation timed out)]
sporkmonger has quit [Read error: 110 (Connection timed out)]
ztfw has joined #ocaml
vithos has quit [Read error: 110 (Connection timed out)]
<thelema> Camarade_Tux: heh. And I thought we were the worst.
sporkmonger has joined #ocaml
<Camarade_Tux> well, in 30 minutes, it has done additional 20% of the documentation (that isn't even documentation, that's only a listing of the functions along with some context)
sporkmonger_ has quit [Read error: 145 (Connection timed out)]
bombshelter13_ has joined #ocaml
itewsh has quit [Read error: 60 (Operation timed out)]
itewsh has joined #ocaml
mihamina has left #ocaml []
r0bby has quit [wolfe.freenode.net irc.freenode.net]
patronus has quit [wolfe.freenode.net irc.freenode.net]
nimred has quit [wolfe.freenode.net irc.freenode.net]
Demitar has quit [wolfe.freenode.net irc.freenode.net]
nimred has joined #ocaml
r0bby has joined #ocaml
verte_ is now known as verte
Demitar has joined #ocaml
sgnb has quit [Read error: 104 (Connection reset by peer)]
sgnb has joined #ocaml
patronus has joined #ocaml
itewsh has quit [Connection timed out]
itewsh has joined #ocaml
Kerris7 has quit ["Don't even think about saying Candlejack or else you wi"]
xerxes has joined #ocaml
itewsh has quit [Connection timed out]
itewsh has joined #ocaml
zbrown has left #ocaml []
itewsh has quit [Read error: 110 (Connection timed out)]
itewsh has joined #ocaml
willb has joined #ocaml
ulfdoz_ has joined #ocaml
ulfdoz__ has joined #ocaml
ulfdoz_ has quit [Read error: 145 (Connection timed out)]
ulfdoz has quit [Read error: 101 (Network is unreachable)]
ulfdoz__ is now known as ulfdoz
itewsh has quit [Read error: 110 (Connection timed out)]
itewsh has joined #ocaml
monadic_kid has joined #ocaml
verte has quit ["~~~ Crash in JIT!"]
ztfw` has joined #ocaml
monadic_kid is now known as applicative_kid
ztfw has quit [Read error: 60 (Operation timed out)]
Kerris7 has joined #ocaml
ulfdoz_ has joined #ocaml
itewsh has quit [Read error: 110 (Connection timed out)]
slash_ has joined #ocaml
itewsh has joined #ocaml
Ariens_Hyperion has joined #ocaml
ulfdoz has quit [Read error: 110 (Connection timed out)]
ulfdoz_ is now known as ulfdoz
xevz has quit [Read error: 60 (Operation timed out)]
thelema has quit [Read error: 110 (Connection timed out)]
itewsh has quit [Read error: 145 (Connection timed out)]
itewsh has joined #ocaml
angerman has quit []
itewsh has quit [Client Quit]
applicative_kid is now known as pointless_applic
pointless_applic is now known as pointless_kid
kaustuv has quit ["c48fdde5811c40d03791a0177c0acffe"]
xevz has joined #ocaml
psnively has joined #ocaml
Elrood has joined #ocaml
Ariens_Hyperion has quit []
<hcarty> Does Batteries.Print.printf support anything to format a float value like "%.2f" does using Pervasives.Printf.printf?
sporkmonger_ has joined #ocaml
<hcarty> The docs are unclear, and I haven't found any float examples
robocop has quit [Remote closed the connection]
<Yoric[DT]> hcarty: I believe it does but I haven't checked myself.
vithos has joined #ocaml
<hcarty> Yoric[DT]: According to the docs p"%.2f" should work, but it errors out here: Error: Failure: "invalid start of printing directive"
<Yoric[DT]> what about "%(.2f)"?
<hcarty> Error: Failure: "identifier expected"
<hcarty> And {} gives Error: Parse error: illegal begin of ctyp
<Yoric[DT]> :/
<Yoric[DT]> Sorry, I don't know.
<hcarty> Ok, thanks. I'll post to the Batteries list
<Yoric[DT]> Yeah.
<Yoric[DT]> I'll try and be more available on the ml now that my wife has returned her PhD.
s4tan has quit []
<hcarty> She is finished?
ztfw` has quit [Remote closed the connection]
ztfw` has joined #ocaml
<Yoric[DT]> The PhD thesis is finished.
<Yoric[DT]> The viva is in June.
<hcarty> Congratulations to her, that's wonderful
sporkmonger has quit [Read error: 110 (Connection timed out)]
Associat0r has joined #ocaml
willb1 has joined #ocaml
pointless_kid has quit ["Leaving"]
thelema has joined #ocaml
tombom has joined #ocaml
sporkmonger has joined #ocaml
<Alpounet> brb
Alpounet has quit ["Quitte"]
gnuvince has joined #ocaml
rjack has quit ["leaving"]
Alpounet has joined #ocaml
sporkmonger_ has quit [Read error: 110 (Connection timed out)]
<Yoric[DT]> hcarty: thanks, I'll forward :)
xevz has quit ["Server change."]
xevz has joined #ocaml
Yoric[DT] has quit ["Ex-Chat"]
gnuvince has left #ocaml []
jeanb-- has joined #ocaml
jeanbon has quit [Nick collision from services.]
jeanb-- is now known as jeanbon
jackie_ has joined #ocaml
<hcarty> thelema: What do you think of this patch to the Batteries example myocamlbuild.ml: http://ocaml.pastebin.com/m7feb8fd5
jamii has quit [Read error: 110 (Connection timed out)]
<hcarty> thelema: It adds support for creating foo.inferred.mli from foo.ml (ocamlbuild foo.inferred.mli)
sOpen has joined #ocaml
<hcarty> The diff comes from a different repository, but the myocamlbuild.ml come directly from Batteries
jackie_ has quit [Remote closed the connection]
psnively has quit []
angerman has joined #ocaml
vithos has quit [Connection timed out]
vithos has joined #ocaml
jeanb-- has joined #ocaml
jeanbon has quit [Nick collision from services.]
jeanb-- is now known as jeanbon
tailot has joined #ocaml
Elrood has quit ["When two people dream the same dream, it ceases to be an illusion. KVIrc 3.4.2 Shiny http://www.kvirc.net"]
sOpen has quit [Read error: 110 (Connection timed out)]
ulfdoz_ has joined #ocaml
Yoric[DT] has joined #ocaml
tailot has left #ocaml []
<hcarty> Yoric[DT]: A Batteries example myocamlbuild.ml patch to allow creating foo.inferred.mli from foo.mli from foo.ml using ocamlbuild : http://ocaml.pastebin.com/m7feb8fd5
<hcarty> Yoric[DT]: Thoughts? Do you think that this is a worthwhile addition?
<Yoric[DT]> How does it work?
<mrvn> hcarty: can you declare types rivatesomehow so the infered.mli shows them abstract or not at all?
ulfdoz__ has joined #ocaml
<mrvn> s/rivate/private /
<hcarty> Yoric[DT]: ocamlbuild foo.inferred.mli
<hcarty> It's ocamlbuild's support for "ocaml -i"
<Yoric[DT]> Now, what I mean is: what does it do, exactly?
<Yoric[DT]> Ah, ok.
<Yoric[DT]> I thought ocamlbuild could do this out-of-the-box?
<mrvn> hcarty: why go through foo.mli?
<hcarty> But without the above changes, the findlib and camlp4 goodies will not be applied. So if any non-stdlib packages or syntax is used then it won't work.
<hcarty> mrvn: I don't understand the question?
<Yoric[DT]> Are you sure?
<mrvn> hcarty: you said foo.inferred.mli from foo.mli from foo.ml?
<mrvn> why the middle step?
<hcarty> mrvn: Oops!
<hcarty> Sorry, that was a mistype
<hcarty> foo.inferred.mli from foo.ml
<mrvn> hcarty: not foo.inferred.mli from foo.mli or foo.ml?
<hcarty> where "ocamlbuild foo.inferred.mli" = "ocaml -i foo.ml"
<hcarty> Yoric[DT]: Yes, I've tried
<hcarty> Both with Batteries and with non-Batteries myocamlbuild.ml files
<hcarty> mrvn: No special processing is done beyond the inferred interface. So I don't know that it would make sense to create a .inferred.mli from a .mli since there is nothing to infer
<mrvn> hcarty: But if someone does create inferred.mli and there happens to be an .mli then it should reuse that.
ulfdoz_ has quit [Read error: 145 (Connection timed out)]
ulfdoz_ has joined #ocaml
<hcarty> mrvn: Does "ocamlc -i foo.ml" reuse foo.mli?
<hcarty> mrvn: I think that's what "ocamlbuild foo.inferred.mli" uses to create the .mli
<hcarty> mrvn: I agree that such a tool would be useful. automli may do something along those lines
ulfdoz has quit [Read error: 110 (Connection timed out)]
ulfdoz_ is now known as ulfdoz
<hcarty> And my mistake... I wrote "ocaml -i" rather than "ocamlc -i" for most of the examples above
sOpen has joined #ocaml
ulfdoz__ has quit [Read error: 101 (Network is unreachable)]
Associ8or has joined #ocaml
tombom has quit [Read error: 110 (Connection timed out)]
monadic_kid has joined #ocaml
_andre has quit ["leaving"]
sOpen has quit [Read error: 60 (Operation timed out)]
Associat0r has quit [Connection timed out]
komar_ has quit [Read error: 54 (Connection reset by peer)]
angerman has quit []
Alpounet has quit ["Ex-Chat"]
sporkmonger has quit [Read error: 110 (Connection timed out)]
Associ8or has quit []
atarashi has joined #ocaml
jeanbon has quit [Read error: 110 (Connection timed out)]
atarashi has left #ocaml []
rjack has joined #ocaml
Ariens_Hyperion has joined #ocaml
monadic_kid is now known as applicative_kid
Camarade_Tux has quit ["Quitte"]
bombshelter13_ has quit []
<hcarty> Yoric[DT]: Do you think the myocamlbuild.ml change is worth adding to Batteries? Or would you prefer that I send it to the mailing list for comments?
<Yoric[DT]> I believe that it can be useful.
<Yoric[DT]> Still, given my current state of tiredness, you should rather post it to the mailing-list.
<hcarty> Yoric[DT]: Will do, thanks. Probably tomorrow though, as I am off for the evening.
* Yoric[DT] will need some serious sleep-catching in the next few days.
ambient has joined #ocaml
hkBst has quit [Read error: 104 (Connection reset by peer)]
ztfw`` has joined #ocaml
willb has quit [Read error: 110 (Connection timed out)]
ztfw` has quit [Read error: 110 (Connection timed out)]
rjack has quit ["leaving"]
Yoric[DT] has quit ["Ex-Chat"]
Ariens_Hyperion has quit [Read error: 60 (Operation timed out)]
sOpen has joined #ocaml