mfurr changed the topic of #ocaml to: OCaml 3.08.2 available! | Archive of Caml Weekly News: http://sardes.inrialpes.fr/~aschmitt/cwn/ | A free book: http://cristal.inria.fr/~remy/cours/appsem/ | Mailing List: http://caml.inria.fr/bin/wilma/caml-list/ | Cookbook: http://pleac.sourceforge.net/
cjohnson has quit [Read error: 110 (Connection timed out)]
Skal has quit ["Client exiting"]
CosmicRay has quit ["Leaving"]
Sonarman has joined #ocaml
cjohnson has joined #ocaml
vezenchio has quit ["I live in a yurt on the steppes of Sheepfuckistan. That's why."]
cjohnson has quit ["Leaving"]
cognominal has quit [Remote closed the connection]
cognominal has joined #ocaml
tintin has quit [Read error: 60 (Operation timed out)]
tintin has joined #ocaml
Sonarman has quit ["leaving"]
mlh has quit [Client Quit]
Snark has joined #ocaml
mrvn_ has joined #ocaml
__DL__ has joined #ocaml
mrvn has quit [Read error: 145 (Connection timed out)]
juhammed has quit [Read error: 60 (Operation timed out)]
zzorn has joined #ocaml
dan2 has quit [Excess Flood]
dan2 has joined #ocaml
Herrchen has joined #ocaml
zzorn is now known as zzorn_away
nlv11757__ has joined #ocaml
pango has quit [Remote closed the connection]
Submarine has joined #ocaml
Svrog has joined #ocaml
dan2 has quit [Client Quit]
dan2 has joined #ocaml
pango has joined #ocaml
gim has quit []
smimou has joined #ocaml
Msandin has joined #ocaml
gim has joined #ocaml
Msandin_ has joined #ocaml
smimram has joined #ocaml
smimou has quit [Read error: 60 (Operation timed out)]
Msandin has quit [Read error: 110 (Connection timed out)]
Svrog has quit []
Msandin_ has quit [Read error: 145 (Connection timed out)]
Snark has quit [No route to host]
Snark has joined #ocaml
kHebSkik has joined #ocaml
Skal has joined #ocaml
Ag_47 has joined #ocaml
Msandin has joined #ocaml
<Msandin> Oh, my thingy now produces parsers as well as printers, oh the joy=)
<nlv11757__> :) should have programmed Haskell where you get them almost for free ;)
<Msandin> Well, when I'm done with this I _will_ get them for free for any datatype in the future:)
<Msandin> Tywith can now do essentially what "deriving read" does:)
Msandin has quit [Read error: 60 (Operation timed out)]
Msandin has joined #ocaml
* Msandin wonders if he got a response, ah well:-)
Submarine has quit ["Leaving"]
<Snark> Msandin: you didn't, at least not on the channel
<Msandin> Snark: Thanks
<Snark> np
Skal has quit [zelazny.freenode.net irc.freenode.net]
<nlv11757__> Msandin, to mimic deriving is always being a step behind with respect to Haskell :P
<Msandin> Hum? I just think deriving is useful, so I decided it would be neat to have in OCaml as well:)
<nlv11757__> my point is that Haskell is just full of neat things :D
<mflux> except performance ;)
<mflux> which is sort of odd; one would expect there could be all kinds of neat optimizations in a pure functional language
<Msandin> The format module is... makeing me quesy or something, I want to: get formated output if a particular width in a string, and it's not obvious how to do it
<Msandin> mflux: it does do all sort of neat things, but the problem is hard, and they're still working on it=)
<nlv11757__> there is nothing wrong with haskell performance
<nlv11757__> thats an old fashioned argument
<mflux> because machines are fast enough?
<nlv11757__> because compilers are smarter
<nlv11757__> allowing people to express naturally, but still obtain performance
<Msandin> nlv: well, at times there are problems for sure, the main problem isn't performance per se, but rather predictability of performance, both in time and space, reasoning about lazy languages can be hairy...
<mflux> well, there are plenty of whitepapers on haskell performance, and increasing it.. one in particular, about fast array access, said that the author expected only 100-fold performance decrease in the haskell-version compared to the c-version, but got a 10-fold :P
<mflux> of course, it's only one example, and sometimes 10x performance might not matter
<mflux> but sometimes it does, a lot
* Msandin mainly wishes OCaml had type classes, haskell syntax, better support for laziness, and a decent collection of HOFs like the Haskell prelude
<nlv11757__> tons of bedtimestories showing the other way around
<nlv11757__> doesnt mean anything
Ag_47 has left #ocaml []
<mflux> so there must be plenty of evidence the other way round then..
Skal has joined #ocaml
<mflux> I haven't really seen anyone (any haskeller that is) to claim that haskell has high performance, only that most often the performance isn't #1, but the code is
<mflux> of course, there is a point
<mflux> but you say that not only haskell is powerfull in expression, it is also excellent in performance?
<nlv11757__> no
<mflux> it also seems to be a common view that high-performing haskell code doesn't anymore look that elegant
<nlv11757__> im not saying anything
<nlv11757__> im saying people are using C and other garbage too often by using performance as an excuse where it is totally unnecessary
<mflux> true
<Msandin> no argument there
<mflux> but ocaml isn't really garbage, and its performance is maybe between the mentioned languages
<mflux> so ocaml could be a lot neater, but it's a tradeoff - but no longer on security
<mflux> unless you use String.unsafe_get ;)
<Herrchen> why does one want type classes if functors are available?
<nlv11757__> ocaml syntax realllllly annoys me
<Msandin> But it is true that C has a fairly simple performance model, OCaml's is slightly hairier, but Haskell, relying on clever compilers, takes that "prize" by a margin...
<Herrchen> does one really need more than one concept for doing the same stuff?
<mellum> Herrchen: ask the Perl people :)
<mflux> I would guess the greatest advantage is in syntax
<mflux> let a, b, c = 1, 2l, 3L
<nlv11757__> sugar is good once and a while
<mflux> now dealing with those numbers is a b*tch :)
<vincenz> especially given that it can clean up your match statements as you define new datatypes
<mflux> btw, there's an 'open in'-syntax extension in humps, it can be useful at times
<mflux> (too bad tuareg-mode doesn't bay ball with it)
<mflux> s/bay/play/
<Msandin> Herrchen: Type classes are much more heavy weight in usage than type classes, and in practise, that matters, I can't do Tywith (deriving for Ocaml) without modules turning into functors behind peoples backs and all kinds of nastiness, it could work, but nobody would ever use it..
<Msandin> first type classes=functors, obviously
<Herrchen> there are always pros and cons, but I personally don't think it is worth the effort to include many concepts for doing the same stuff - just my personal opinion ...
<Herrchen> I never understood, why one wants objects in caml (or ml in general) anyway - having closures is enough for me -- but I think this all belongs to "matter of taste" -- I simply would apprieciate a very simplistic language
<Msandin> Herr: I agree, and so I should revise my statement slightly: I miss type classes and I'd like a OCaml-like language which includes them... and by extension probably not functors...
<Herrchen> ah ok -- I would prefer type classes, too :)
<Msandin> Well then:)
<Herrchen> bbl
<nlv11757__> yeah, i guess polymorphic lambda calculus is all one needs :P
<nlv11757__> you should read Types and Programming Languages from Pierce, it's fun to see that he builds up all these features with a really simple language
<Msandin> Knowing wherefrom it all comes is interesting and useful=)
<Msandin> Bah, I have designed stream parser combinators just for this, doesn't seem like a great idea to be honest...:/
<nlv11757__> :) what doesnt? stream parser in general? :P
<Msandin> To design a stream parser library for this purpose:-)
<Msandin> especially as the stream patterns of camlp4 would probably have been a greater idea...
cjohnson has joined #ocaml
CosmicRay has joined #ocaml
tintin has quit [Remote closed the connection]
Msandin has quit [Read error: 110 (Connection timed out)]
Msandin has joined #ocaml
cjohnson has quit ["Leaving"]
karryall has joined #ocaml
juhammed has joined #ocaml
gim has quit [Read error: 110 (Connection timed out)]
gim has joined #ocaml
Msandin has quit [Read error: 110 (Connection timed out)]
nlv11757__ has left #ocaml []
zzorn_away is now known as zzorn
cjohnson has joined #ocaml
Submarine has joined #ocaml
<vincenz> oo has it's uses
<det> does not!
<vincenz> you're right!
<vincenz> I see the errors in my ways now
* vincenz snicker
<det> So, what prompted that rediculous statement?
<vincenz> get one ... give one
<det> I dont understand
<vincenz> does not!
<vincenz> and then I replied
<det> ahh
<det> I meant the original statement :)
<vincenz> oh
<vincenz> discussion earlier in history
<det> What do you find usefull about "OO" (note, a very ill defined term)
<vincenz> 14:09 < Herrchen> I never understood, why one wants objects in caml
<vincenz> I find them useful, a combination of oo and functors allows me to do mixin-style coding
<det> Hrmm, do you have an example?
<vincenz> just a sec
<vincenz> ScopesMachine.Mixin(
<vincenz> BlocksMachine.Mixin(
<vincenz> AccessesMachine.Mixin(
<vincenz> StateMachine.Machine))))
<vincenz> module Machine = to that
<vincenz> new Machine.machine
<vincenz> I can easily leave something out by leaving out a layer
<Smerdyakov> That shows why functors are useful, not why OO is useful.
<vincenz> I rewrote it all to use modules only
<vincenz> it's slightly uglier
<Smerdyakov> That doesn't mean that all modules based solutions are uglier.
<det> vincenz, Wouldn't an OO solution use inheritence instead of functor application?
<vincenz> I use inheritance inside
<vincenz> compare it to templates if you will
<vincenz> used in this manner
<vincenz> template <class S>
<vincenz> class X : public S {..};
<vincenz> module Mixin = functor(Super : StateMachine.Mixin ) -> struct class machine = object inherit Super.machine as super
skylan has quit [Read error: 145 (Connection timed out)]
karryall has quit ["ERC Version 5.0.1 $Revision: 1.726.2.3 $ (IRC client for Emacs)"]
Smerdyakov has quit ["go fly"]
Gueben has joined #ocaml
vezenchio has joined #ocaml
Herrchen has quit ["bye"]
pango has quit ["Leaving"]
Submarine has quit ["Leaving"]
_JusSx_ has joined #ocaml
cjohnson has quit [Read error: 110 (Connection timed out)]
pango has joined #ocaml
monochrom has joined #ocaml
Snark has quit ["Leaving"]
zzorn is now known as zzorn_afk
gim has quit [Remote closed the connection]
gim has joined #ocaml
joey_ has quit [Read error: 60 (Operation timed out)]
cjohnson has joined #ocaml
cjohnson has quit ["Leaving"]
Gueben has quit [Remote closed the connection]
zzorn_afk has quit ["They are coming to take me away, ha ha"]
vodka-goo has joined #ocaml
Erzbergwerkzwerg has joined #ocaml
mfurr has joined #ocaml
CosmicRay has left #ocaml []
mlh has joined #ocaml
vezenchio has quit ["I live in a yurt on the steppes of Sheepfuckistan. That's why."]
vezenchio has joined #ocaml
_JusSx_ has quit ["leaving"]
cjohnson has joined #ocaml
skylan has joined #ocaml
cjohnson has quit [Read error: 60 (Operation timed out)]