Yurik changed the topic of #ocaml to: http://icfpcontest.cse.ogi.edu/ -- OCaml wins | http://www.ocaml.org/ | http://caml.inria.fr/oreilly-book/ | http://icfp2002.cs.brown.edu/ | SWIG now supports OCaml| Early releases of OCamlBDB and OCamlGettext are available
malc has joined #ocaml
malc has quit ["no reason"]
Kinners has joined #ocaml
sproctor has quit ["I like core dumps"]
systems has joined #ocaml
Kinners has left #ocaml []
systems has quit [Read error: 60 (Operation timed out)]
lament has joined #ocaml
redcrosse has joined #ocaml
foxen has quit [Connection reset by peer]
foxster has joined #ocaml
mattam has quit [Read error: 110 (Connection timed out)]
lament has quit ["Did you know that God's name is ERIS, and that He is a girl?"]
<pattern> what do you guys think of f# ?
<Riastradh> F#?
<pattern> "F# is a mixed functional/imperative programming language based on the design of the functional language Caml and the .NET language C#."
<pattern> and here's a short discussion of it, on the lambda blog -> http://lambda.weblogs.com/discuss/msgReader$3380
<pattern> ...not that i'd want to get within a hundred meters of anything that was associated with microsoft
<pattern> but i'm curious if anyone knows what the real story is, behind all the hype
skylan has quit ["Reconnecting"]
skylan has joined #ocaml
<redcrosse> pattern: i've played around with f# a bit
<redcrosse> anything specific you wanted to know?
<pattern> just hoping to get a general ocaml lover's oppinion of f#
<pattern> does it suck? is it great? and why? in general terms...
<redcrosse> hmm. it's interesting if you need to .net
<redcrosse> to use .net
<redcrosse> they've written some additions to the clr to support some functional paradigm things
<redcrosse> but it's still developing
<redcrosse> there seemed to be some initial interest (based on the mailing list traffic), but it's died down to nothing
<pattern> interesting
<redcrosse> yeah, it's neat if you, like I said, need to use the .net framework
<redcrosse> i believe the same guys did the coming generics implementation for c# too
redcrosse has quit ["using sirc version 2.211+KSIRC/1.2.4"]
<pattern> i don't need to use .net
<pattern> but i was interested to hear if microsoft could get anything right ;)
lament has joined #ocaml
asquii has joined #ocaml
asqui has quit [Read error: 60 (Operation timed out)]
asquii is now known as asqui
lament has quit ["Did you know that God's name is ERIS, and that He is a girl?"]
Zadeh has joined #ocaml
TachYon76 has joined #ocaml
TachYon76 has quit [Remote closed the connection]
TachYon76 has joined #ocaml
TachYon76 has quit [Remote closed the connection]
xxd has quit [Remote closed the connection]
foxen has joined #ocaml
foxen has quit [Read error: 60 (Operation timed out)]
foxster has quit [Read error: 110 (Connection timed out)]
async has quit [Remote closed the connection]
async_ has joined #ocaml
foxster has joined #ocaml
mattam has joined #ocaml
async_ has quit [leguin.freenode.net irc.freenode.net]
asqui has quit [leguin.freenode.net irc.freenode.net]
skylan has quit [leguin.freenode.net irc.freenode.net]
polin8 has quit [leguin.freenode.net irc.freenode.net]
mrvn has quit [leguin.freenode.net irc.freenode.net]
Riastradh has quit [leguin.freenode.net irc.freenode.net]
rox has quit [leguin.freenode.net irc.freenode.net]
mellum has quit [leguin.freenode.net irc.freenode.net]
whee has quit [leguin.freenode.net irc.freenode.net]
smkl has quit [leguin.freenode.net irc.freenode.net]
gl has quit [leguin.freenode.net irc.freenode.net]
xkb has quit [leguin.freenode.net irc.freenode.net]
xtrm has quit [leguin.freenode.net irc.freenode.net]
emu has quit [leguin.freenode.net irc.freenode.net]
async_ has joined #ocaml
asqui has joined #ocaml
skylan has joined #ocaml
polin8 has joined #ocaml
rox has joined #ocaml
Riastradh has joined #ocaml
mrvn has joined #ocaml
mellum has joined #ocaml
emu has joined #ocaml
whee has joined #ocaml
smkl has joined #ocaml
xkb has joined #ocaml
xtrm has joined #ocaml
gl has joined #ocaml
asqui has quit [Excess Flood]
pattern is now known as pattern_
asqui has joined #ocaml
pattern_ has quit ["..."]
pattern_ has joined #ocaml
<pattern_> oh, here's a bigger, more up-to-date list of ocaml apps -> http://caml.inria.fr/humps/caml.html
<pattern_> and now i'm off to sleep
Yurik has joined #ocaml
mellum has quit [Read error: 110 (Connection timed out)]
mellum has joined #ocaml
Yurik has quit ["÷ÙÛÅÌ ÉÚ XChat"]
Yurik has joined #ocaml
<Yurik> re
Yurik has quit [Read error: 54 (Connection reset by peer)]
Yurik has joined #ocaml
Yurik has quit ["÷ÙÛÅÌ ÉÚ XChat"]
redcrosse has joined #ocaml
skylan has quit [Read error: 54 (Connection reset by peer)]
skylan has joined #ocaml
phubuh has joined #ocaml
steele has quit [Read error: 104 (Connection reset by peer)]
steele has joined #ocaml
mrvn_ has joined #ocaml
mrvn has quit [Read error: 60 (Operation timed out)]
coolduck has joined #ocaml
steele has quit ["ircII EPIC4-1.1.2 -- Are we there yet?"]
Kinners has joined #ocaml
<Kinners> is there a ghostscript previewer written in ocaml?
<mellum> I don't think so.
<emu> caml view
<mellum> Really? A complete postscript interpreter?
<emu> i'm j/k
<emu> it sounds funny though
<Kinners> hmm, I must have been thinking of WhizzyTex
<phubuh> whizzytex can use advi, which is a DVI viewer written in o'caml.
<Kinners> right, I visited the page a while back, and it lodged in my brain as a ghostscript previewer for some reason
<phubuh> heh
<phubuh> test
<Kinners> 1 2 check check 1 2 :)
coolduck has quit ["Client Exiting"]
palomer has joined #ocaml
xxd has joined #ocaml
<phubuh> why does this give a stack overflow when called on a very simple
<phubuh> list?:
<phubuh> gah, darn auto-fill!
<phubuh> let show_of_string str =
<phubuh> let elts = Str.split (Str.regexp "\\|") str in
<phubuh> match elts with
<phubuh> | i :: name :: desc :: tl -> ((interval_of_string i), name, desc)
<phubuh> | _ -> raise (Invalid_show str)
<Riastradh> Is interval_of_string tail recursive?
<phubuh> nope.
<Riastradh> That might explain it, then.
<Riastradh> Er, is it recursive at all?
<phubuh> oops, I read that as "Is interval_of_string recursive?"
<Riastradh> Ah, ok, never mind.
<Riastradh> Are Str.split and Str.regexp recursive, and if so, are they tail recursive?
<phubuh> i'd guess they are recursive, but i don't know. Str is the string manipulation library that comes with ocaml
<palomer> whats the ocaml emacs mode called?
<Riastradh> Most likely 'caml-mode' or something.
<phubuh> tuareg-mode
<palomer> tried caml-mode
<palomer> what extension should my files have?
<Riastradh> .ml for source files, .mli for interface files.
<phubuh> one doesn't ship with emacs, get tuareg-mode from http://www-rocq.inria.fr/~acohen/tuareg/
<palomer> ohmy, I guess it's just not part of portage yet
<Riastradh> Is the Tuareg mode better than the Caml mode?
<Riastradh> That is, vastly superiour, not just 'better.'
<phubuh> i love emacs with tuareg. it can run an inferior o'caml toplevel, and it syntax highlights it, and you can use regular emacs buffer editing to edit input to it.
<Riastradh> Er...you can do the same with the Caml mode.
<palomer> and how do I associate an extension with an elisp file?
<phubuh> oh. then i suppose tuareg is just 'better' :-)
<Riastradh> .el for source, .elc for bytecode.
<phubuh> (setq auto-mode-alist (cons '("\\.ml\\w?" . tuareg-mode) auto-mode-alist))
<phubuh> (autoload 'tuareg-mode "tuareg" "Major mode for editing Caml code" t)
<phubuh> (autoload 'camldebug "camldebug" "Run the Caml debugger" t)
<palomer> erm
<palomer> ahh thx
<phubuh> you might need to do something like (add-to-list 'load-path "~/.elisp/tuareg") where ~/.elisp/tuareg is the directory where tuareg is unpacked
Kinners has left #ocaml []
<palomer> I unpacked it directly in elisp
<palomer> nhouldn it be (autoload 'tuareg-mode "tuareg.el" "Major mode for editing Caml code" t)?
<Riastradh> Nope.
<palomer> done.
det has joined #ocaml
<palomer> hrm
<palomer> would it be wise to have emacs automatically end a line with a ;; if needed?
<mrvn_> palomer: It does
<mrvn_> .oO( since its never needed )
<asqui> Whats the difference betwee "and" and "&&", "or" and "||" in caml light?
<asqui> (if any)
<asqui> And are these called boolean *operators* or boolean *functions*, within the context of caml?
<mrvn_> and is for lets and && for logical. & and && and || and or are the same. (in ocaml)
<Riastradh> & isn't bitwise-and?
<asqui> for "lets" ?
<Riastradh> let x = "x" and y = "y" in z
<mrvn_> let a = 15 and b = 16;
<asqui> ah
<mrvn_> # (&);;
<mrvn_> - : bool -> bool -> bool = <fun>
<mrvn_> # (&&);;
<mrvn_> - : bool -> bool -> bool = <fun>
<Riastradh> Humph, -is- there a bitwise and in OCaml?
<whee> Riastradh: yes
<asqui> And is it correct to refer to them as operators or functions?
<Riastradh> What is it in OCaml?
<whee> land
<Riastradh> Gack, it's a syntax and not a function?
<whee> asqui: they're functions, except applied infix by default
<whee> Riastradh: refer to it as (land) if you want it as a function
<Riastradh> Oh, I see.
* Riastradh grumbles at infixy stuff.
<whee> it's just like + or * or any other infix operator, you use parens when you want to refer to the function
Hellfried has joined #ocaml
<asqui> whee: In poor old caml-light you have to use "prefix foo" :\
<asqui> okay so "&&" is boolean AND, "||" and "or" are boolean OR, "not" is boolean NOT. Is that the exhaustive list?
<whee> cherk the pervasives docs
<Riastradh> Is there no boolean xor built in?
<whee> Riastradh: <>
<Riastradh> OK, asqui, add that one.
<whee> not, &&, ||
<whee> <> is really not = but it has the same behavior as a xor would
<asqui> errr...
<whee> then there's != for not ==
<asqui> how is "not =" equivalent to XOR?
<whee> asqui: it is.
<asqui> oh yeah it is... *cough*
<whee> heh
<asqui> whats a concise way fo saying "are short-circuitable"?
<emu> so long as you accept 0 as false and not 0 as true =)
<whee> not = is the same as boolean xor, integers don't come into the picture
<whee> assuming not = in this case is bool -> bool -> bool
<emu> ah, boolean xor
<emu> oops, didn't read that
<whee> there's lxor for handling numbers
<emu> where's my fregeian quantifiers, dammit
<palomer> fortran.net is far superior to anything
* emu runs
* palomer cashes up to emu and kicks him in the cobol
* emu lisps his way out
<palomer> s/cashes/caches
* palomer uses his basic instinct to bash him again
* emu sets forth malbolge
<emu> the world has ended
* palomer hops on his caml and runs away
<asqui> I dont suppose there is any way to achieve the functionality of the "implies" logical connective using caml builtins?
<asqui> ie 1 1 0; 1 0 0; 0 1 1; 0 0 1; truth-table
<asqui> oh wait...
<mellum> not a || a and b?
<mellum> erm, s,and,&&,
<asqui> thats just "not B or A"...
<asqui> B or NOT A...
<palomer> hrm, I'm following a tutorial and they don't say what the . operator does, anyone have any idea?
<mellum> I don't think there is one
<palomer> +.
<mellum> Oh. That adds floats.
<whee> heh
<whee> asqui: whip out a k-map, easy way to figure that out
<whee> or use some algorithm that I've never learned entirely :)