orbitz has quit [Read error: Connection reset by peer]
orbitz has joined #ocaml
jakedouglas has joined #ocaml
jakedouglas has quit [Ping timeout: 240 seconds]
jakedouglas has joined #ocaml
joewilliams_away is now known as joewilliams
seafood has joined #ocaml
joewilliams is now known as joewilliams_away
afreq has quit [Remote host closed the connection]
despa has joined #ocaml
mihamina has quit [Quit: Leaving.]
dskippy has quit [Ping timeout: 240 seconds]
dskippy has joined #ocaml
ulfdoz has joined #ocaml
jakedouglas1 has joined #ocaml
jakedouglas has quit [Ping timeout: 240 seconds]
|marius| has joined #ocaml
philtor has joined #ocaml
philtor has quit [Ping timeout: 248 seconds]
rwmjones has quit [Ping timeout: 245 seconds]
rwmjones has joined #ocaml
|marius| has quit [Remote host closed the connection]
<Associat0r>
can someone tell me the rationale of why lablgtk uses a layered system of polymorphic variants and classes ?
<thelema>
manageability - if every type was distinct...
<thelema>
it'd be a *lot* of types
<thelema>
similarly for classes. sometimes it's annoying trying to figure out what methods a particular object has because of the long inheritance chains
<thelema>
lablgtk is practically the reason ocaml has objects and polymorphic variants (I dunno how historically true this is)
coucou747 has joined #ocaml
<Associat0r>
a lot of people think objects are a mistake, do you agree with it?
<thelema>
they have their uses. Often they're used incorrectly
<thelema>
this said, I rarely use them
<dskippy>
thelema: I am definitely with you on that.
<Associat0r>
but the way they are used in lablgtk is that valid usage?
<dskippy>
thelema: It's amazing how many good, professional software engineers favor using class-based objects but don't really do OO and probably don't realize that.
<Associat0r>
also what if lablgtk didn't rely on gtk, would they still use OO?
<thelema>
yes, the object oriented bindings to gtk are definitely valid usage (despite the complexity of both)
<Associat0r>
btw they do use Ocaml's object inheritance in labgtk right?
<thelema>
dskippy: there's not just one meaning of OO
<thelema>
Associat0r: yes, lots
<thelema>
dskippy: but I get your point and agree with it in principle
<dskippy>
thelema: I suppose that's true.
<Associat0r>
it's still a little vague to me why they used both polyvars and objects is there a site where they fully explain the rationale?
<thelema>
everyone using java uses class based objects. They don't all use object oriented design.
<thelema>
Associat0r: not to my knowledge. Email Jacques Garrigue - he's very friendly about explaining lablgtk, which is his baby (as is polymorphic variants)
<thelema>
(and labeled functions)
<Associat0r>
thanks for the advice
<Associat0r>
btw what would you do if you had to design a GUI lib totally from scratch not relying on anything external?
ulfdoz has quit [Ping timeout: 248 seconds]
<Associat0r>
what would the design look like?
<thelema>
I'd spend a couple years becoming proficient at GUI lib use and go from there
<dskippy>
Associat0r: I would definitely go OO on a GUI toolkit. GUI toolkits are some of the best examples of times when OO really shines.
<thelema>
sorry, I don't know the right way to design a gui toolkit
<Associat0r>
dskippy: and would you use any polyvars even when there was no interop?
<dskippy>
Associat0r: I'm afraid I'm familiar with the term polyvars.
<Associat0r>
polymorphic variants
<thelema>
polymorphic variants : variants :: objects : records
<thelema>
(in as much as they're structurally typed as opposed to nominally typed)
<dskippy>
Associat0r: Reading about them now. Can't say I could really give an educated opinion on it tonight though.
<dskippy>
I am trying to install libsndfile bindings. I got a tar.gz with not META file. I installed it with ocamlfind. Seemed like it worked. It can find the library now. Problem is when I tried to compile something I get "gcc: sndfile_stub.o: No such file or directory" That file is in the directory with all the other installed files. Where is gcc wanting it to be?
<thelema>
dskippy: you'll need a proper meta file
<dskippy>
thelema: I made one.
<dskippy>
thelema: It wouldn't install without one.
<dskippy>
thelema: Not really even sure how I'm supposed to use a library without ocamlfind since I'm very new to OCaml. But it seemed like the wise thing to do to try to install the shared library.
<thelema>
hmm, did you install the sndfile stubs?
<thelema>
ocamlfind install takes a list of files - did you forget the stubs?
jakedouglas1 has quit [Quit: Leaving.]
<dskippy>
thelema: I installed them.
<thelema>
are they .o or .a?
<dskippy>
To be specific I have a /usr/local/lib/ocaml/3.11.1/sndfile/sndfile_stub.o file.
ftrvxmtrx has quit [Read error: Connection reset by peer]
ftrvxmtrx has joined #ocaml
ccasin has quit [Quit: Leaving]
|marius| has joined #ocaml
|marius| has quit [Remote host closed the connection]
|marius| has joined #ocaml
ftrvxmtrx has quit [Read error: Connection reset by peer]
SEcki_ has joined #ocaml
ftrvxmtrx has joined #ocaml
SEcki has quit [Ping timeout: 265 seconds]
coucou747 has joined #ocaml
Anarchos has joined #ocaml
<flux>
wish the qt bindings came a reality
<flux>
while it's possible to have a front-end program written in C++ and have it communicate with the backend in ocaml and work that way, it works only if the backend program does something very isolated
_andre has quit [Quit: Lost terminal]
_mpu has left #ocaml []
Snark has quit [Quit: Ex-Chat]
sepp2k has quit [Quit: Leaving.]
avsm has joined #ocaml
coucou747 has quit [Read error: Connection reset by peer]