gl has quit [Read error: 110 (Connection timed out)]
graydon has quit ["xchat exiting.."]
asqui has quit [Connection timed out]
mattam has joined #ocaml
whee has quit ["Leaving"]
Kinners has joined #ocaml
asqui has joined #ocaml
zack has joined #ocaml
two-face has joined #ocaml
<two-face>
hi there
<zack>
hi
gl has joined #ocaml
TachYon26 has joined #ocaml
<two-face>
zack: i'm preparing a new cameleon, it take some time because i have to patch
<zack>
two-face: ack, any problem with libdir transition there?
<two-face>
zack: i don't think so
<two-face>
zack: i can no longer grab the daily snapshot, since it depends on ocaml cvs
<zack>
two-face: .... :-(
<zack>
two-face: I suppose you have already asked maxence about this ...
<two-face>
zack: yes :)
<two-face>
zack: and he told me he has no choice
<zack>
ok, BTW, I'm curious: where does this dependency come from?
<two-face>
zack: the debugger mainly
<zack>
ocamldebug?
<zack>
or epeire?
<two-face>
zack: epeire is based on ocamldebug
<zack>
ok, do you know which changes are going on with ocamldebug in ocaml 3.07?
TachYon26 has quit ["bez ki³y nie ma zaliczenia (z prawd studentek AM)"]
<two-face>
zack: not at all, and we don't even know when 3.07 is going to be released
<zack>
two-face: ok, thanks, regarding release date ... I don't know buf from Xavier's mails it seems to me not to near in the future
<two-face>
zack: yes, 6 months i think :)
<zack>
with a 3.08 a few days later? :-DDD
<two-face>
zack: i think you have some precognition powers:)
<zack>
two-face: not at all, I only remember from somewhere that history is usually looping ;)
<two-face>
zack: :-)
<two-face>
zack: we've already told them about .1 .2 and so one
<zack>
well, ocaml team position regarding releases is anyway reasonable: each release requires a full library rebuilding ...
<two-face>
yes, but bugfixes for the same release do not require such stuff
* Kinners
writes his first useful bit of ocaml code, and is happy
Begbie has quit [Read error: 110 (Connection timed out)]
gl has quit [Read error: 104 (Connection reset by peer)]
gl has joined #ocaml
mattam has quit [Read error: 113 (No route to host)]
<two-face>
BBL
two-face has quit ["Client Exiting"]
mattam has joined #ocaml
zack has quit [Remote closed the connection]
<Kinners>
what's the best way to turn [a;b;c] into b, c ?
<sam_>
match lst with [a; b; c] -> (b, c) perhaps
<Kinners>
ah yes that's good
j_bravo has joined #ocaml
j_bravo has left #ocaml []
lament has quit ["mental mantle"]
Kinners has quit ["zzzz"]
sofayam has joined #ocaml
<sofayam>
any book translators out there ?
<sam_>
no, just us ocaml hackers
gl has quit [Read error: 104 (Connection reset by peer)]
gl has joined #ocaml
Torquemada has quit ["Lost terminal"]
merriam has quit [SendQ exceeded]
Torquemada has joined #ocaml
systems has joined #ocaml
gl is now known as gehel
<aleksi>
I'm with imperative background, and I've read the english translation for 4 chapters now
<aleksi>
it's a bit hard to understand how purely functional datastructures, with nonmutable memory regions could be efficient for anything but the small pieces
<aleksi>
so I feel, that I'd balance my code regarding datastructures into functional side for very small or mainly list-like things, and everything else I'd do in imperative style
<aleksi>
am I way off the mark, would twist me more to the functional side? (I'd like to go there :)
systems has quit [Read error: 110 (Connection timed out)]
__mattam__ has joined #ocaml
mattam has quit [Read error: 54 (Connection reset by peer)]
gehel has quit [Read error: 54 (Connection reset by peer)]
mattam has joined #ocaml
gehel has joined #ocaml
<sam_>
aleksi, well, personally i don't buy into this "my paradigm is better than yours" stuff.. in my opinion the strength of 'functional programming' comes more from higher order functions, closures, pattern matching, etc than from purely functional data
<sam_>
not to say i don't like purely functional data.. i do, but i agree, that sometimes you need mutable data for performance reasons (or that mutable data just deals with the problem easier).. though, i do use mutable data a _lot_ less than when i first got introduced to functional programming (comefrom imperative/oop programming world too)
<sam_>
i think finding a good balance between them just needs some time
__mattam__ has quit [Read error: 110 (Connection timed out)]
Begbie has joined #ocaml
Begbie has quit ["leaving"]
jao has joined #ocaml
asquii has joined #ocaml
asqui has quit [Connection timed out]
asquii is now known as asqui
<aleksi>
sam, ok
<aleksi>
so what's your suggestion for the balance I should try to find to the beginning
<aleksi>
maybe policy, like try to do everything in functional datastructures, unless there's no way to do it, or that there's no way to get it fast enough
<aleksi>
keep interfaces so clean, so that the datastructure could be changed whenever you feel
<sam_>
i go for functional data for almost all data.. and for the cases where i use imperative data, it's usually that i find it more convenient than the performance increase.. i find the performance with functional data just fine for most cases.. and for the cases i don't, such as heavy graphics of sound processing.. i'm not sure you should be using ocaml in the first place. even with mutable data, you'd have tough time getting it to C speeds
<aleksi>
sam, I see
<aleksi>
actually one of the reasons I turned for Ocaml was speed
<sam_>
oh, and while i keep mostly all globally moving data (as in, data that functions return, take as parameters etc) functional, i use 'ref's inside functions often, so the 'imperativeness' does not show outside the function
<aleksi>
so now I might consider again whether to combine C with Haskell instead of Ocaml
<aleksi>
sam, that's a nice trick to use
<aleksi>
kind of using closures to close imperativeness inside a function
sofayam has quit ["ChatZilla 0.8.11 [Mozilla rv:1.2.1/20021130]"]
<sam_>
well, depends on what your needs from a language are.. i use ocaml, cause it's 'high level', but still 'fast'.. now as fast as c, but far beyong scripting language speeds like python
<sam_>
s/now/not
<aleksi>
sam, I guess I'm heading on that level too
<aleksi>
nowadays I use Ruby as a "scripting" language (actually my main *programming* language)
<aleksi>
and it's very nice because it already has many functional features, like higher order functions, and closures, even very limited form of pattern matching
<aleksi>
but it's a bit too slow for some things
<aleksi>
and I hope to replace it with another at least equally high level language
<sam_>
haven't looked much into ruby, but i don't think i'd switch to a language without a static (ml-type) type system anymore.. and also, i kind of dislike using interpreted languages (i'm a speed freak :-)
<aleksi>
I find stuffing all kind of data into a array (or list). Like right now I have a list of Date, couple of ints and float. The size of the record may vary quite a lot.
<aleksi>
How do you cope with this kind of "freeform" datastructures with strict typing of ML.
<aleksi>
(Which I like on paper very much! Haven't written any programs yet, so I don't know how much of a pain it will be, especially with uninformative warnings and errors.)
<sam_>
in ocaml, you can do a sum type that handles all the cases.. but the 'ml-type' type system does not prevent you from having a 'dynamic' type, e.g. GCaml has one.. it's just one of the many features i'd wish ocaml did have too, but doesn't currently
<sam_>
that is, sum type as in "type foo = Date of date | Intpair of (int * int) | Float of float'
<sam_>
anyway, leaving to see Two Towers now.. later
<aleksi>
yes, thanks, see ya
matkor has joined #ocaml
<matkor>
Good evening. ;)
Qui_Gon has joined #ocaml
<Qui_Gon>
hello
<Qui_Gon>
is anyone using camllight on linux ?
gehel has quit [Connection timed out]
Qui_Gon has quit [Read error: 60 (Operation timed out)]