<drWorm>
how do you execute a shell command and grab the output as a string? i see Sys.command only returns the exit code
<ayrnieu>
Unix.open_process_in
<drWorm>
ah, thanks
pattern has joined #ocaml
<ayrnieu>
That works like popen. The 'Unix' section of the O'Caml library reference describes that and similar functions.
<drWorm>
i see, very useful
<ayrnieu>
you may want Unix.open_process_full, for instance, which gives you the process's stdin/stdout/stderr
<drWorm>
nah, i have simple needs
IorekByrnison has joined #ocaml
<IorekByrnison>
hi all
<IorekByrnison>
too much spam on caml-list
<pattern>
anyone read the "Elements of ML Programming" by jeffrey ullman?
<IorekByrnison>
not me... I have Paulson's "ML for the working programmer"
<wuuru>
wassup?
<pattern>
how is that, iorek?
<IorekByrnison>
it's pretty good... I heard most people use this one or the ullman's book for an introduction to SML
<pattern>
i am guessing from the title that it has a very practical orientation, right?
<IorekByrnison>
yes
<IorekByrnison>
and the title it's because it is mostly written for people who already know how to program
tomasso has quit [Read error: 104 (Connection reset by peer)]
<wuuru>
why read a book when you know how to program~
<wuuru>
:)
<IorekByrnison>
how to program, but not in ML
<IorekByrnison>
most working programmers don't even have a clue about functional programming anyway
<wuuru>
well, ocaml and sml standard libraries are too different anyway for the book with so generic title to be practical for ocaml
<wuuru>
imho
<IorekByrnison>
yes, and it is about SML, covering its libraries instead
<IorekByrnison>
but it's a good book on functional programming principles, so many things can be applied to ocaml
* wuuru
once read introduction to functional programming based on miranda
<Smerdyakov>
Read introduction to English based on REALITY!
<Smerdyakov>
;D ;D ;D
<wuuru>
Smerdyakov: what's wrong? :)
<Smerdyakov>
You're missing little function words.
<Smerdyakov>
* wuuru once read _an_ introduction to functional programming based on miranda_._
<wuuru>
for example?
<wuuru>
Smerdyakov: this was a book title
<wuuru>
with no quoted though
<wuuru>
quotes
<Smerdyakov>
<wuuru> well, _the_ ocaml and sml standard libraries are too different anyway for _a_ book with so generic _a_ title to be practical for ocaml
<wuuru>
ah~
<wuuru>
:)
<wuuru>
correct using of the articles is always a problem because Russian lacks them :)
<IorekByrnison>
wuuru: so you're russian ?
<wuuru>
so it seem
<wuuru>
so it seems
<IorekByrnison>
:)
<Smerdyakov>
I knew Russia was a poor country, but I never suspected _this_!
<pattern>
i stared with cosineau and mauny's Functional Approach to Programming... it used caml
<IorekByrnison>
caml light
<pattern>
yeah
<pattern>
same thing :)
<wuuru>
Smerdyakov: is your know Russian better than my english?:)
<IorekByrnison>
I read that too
<pattern>
i only got half way through
<wuuru>
Smerdyakov: is your Russian better than my english?:)
<Smerdyakov>
wuuru, no. I know Russian zero. Mostly only words found in English translations of famous Russian novelists.
<wuuru>
)
<Smerdyakov>
Like, I know about those samovars.
<pattern>
then got caught up with something else... now i'm going to give it another shot and wanted to try to go at the same concepts from a differnt book, so that's why i went with ullman's book
<Smerdyakov>
Everyone in 19th century Russia has samovars.
<pattern>
i've drank from samovars
<IorekByrnison>
pattern: I guess ullman's book must be good
<pattern>
iorek, i don't know... it looked decent when i browsed through it at the bookstore
<pattern>
but it uses ml/sml, not ocaml or even caml light
<wuuru>
Smerdyakov: I knew USA was an illiterate country, but I never suspected _this_ :)
<pattern>
but it should be similar enough for the basics
<IorekByrnison>
yes
<IorekByrnison>
only ocaml has a lot of weird things thrown in (weird from the sml perspective) :)
<pattern>
like what?
<IorekByrnison>
like OO and labels
<pattern>
yeah, but oo isn't a functional programming fundamental
<IorekByrnison>
no, of course
<Smerdyakov>
IorekByrnison, we would usually say "no, of course not."
tomasso has joined #ocaml
<pattern>
i don't mind leaving stuff like that for after i've gotten a good grasp of the functional paradigm
<pattern>
anyway, the consensus on this channel seems to be that you don't really need ocaml's oo features
<Smerdyakov>
Useful in limited situations; usually not worth using.
<IorekByrnison>
not really, unless you plan on using GTK :)
vect has quit [Read error: 60 (Operation timed out)]
<IorekByrnison>
LablGTK uses oo and labels everywhere
<pattern>
oh... that reminds me... has anyone used SWIG to interface ocaml with c?
<pattern>
i took a brief look at it and it seems seriously hairy, despite supposedly being a way of making interfacing ocaml with c "easy"
<IorekByrnison>
never tried it
<pattern>
hmm... forklift looks interesting
<pattern>
seems to have a goal of improving on the likes of swig
tomasso has quit [Read error: 54 (Connection reset by peer)]
IorekByrnison has left #ocaml []
Iorek_away has joined #ocaml
Iorek_away is now known as IorekByrnison
vect has joined #ocaml
IorekByrnison has left #ocaml []
cjohnson has quit ["Got to be good lookin' 'cause he's so hard to see."]
pattern has quit [Read error: 110 (Connection timed out)]
Etaoin has joined #ocaml
pattern has joined #ocaml
pattern has quit [Read error: 110 (Connection timed out)]
dax has quit [Read error: 110 (Connection timed out)]
pattern has joined #ocaml
dax has joined #ocaml
oliveira has joined #ocaml
dax has quit [Read error: 60 (Operation timed out)]
pattern has quit [Read error: 110 (Connection timed out)]
pattern has joined #ocaml
oliveira has quit ["Leaving"]
dax has joined #ocaml
pattern has quit [Read error: 60 (Operation timed out)]
shawn has joined #ocaml
The-Fixer has quit ["Goodbye"]
_JusSx_ has joined #ocaml
<_JusSx_>
wuuru : heya
<wuuru>
_JusSx_: :)
<_JusSx_>
HAPPY NEW YEAR
<_JusSx_>
what time is in Moscow?
<_JusSx_>
6 am
<_JusSx_>
?
<simon->
2pm
shawn has quit [Read error: 104 (Connection reset by peer)]
lam has quit [Read error: 110 (Connection timed out)]
<_JusSx_>
simon- where are u from?
<simon->
utc+1
<_JusSx_>
france?
<simon->
denmark
<simon->
oh wow, you're in italy and you don't know to which side moscow is on? :-)
<_JusSx_>
well i know. but if u tell something wrong ppl want say the right thing
<simon->
oh :-)
jdmarshall has quit [Remote closed the connection]
pattern has joined #ocaml
pattern has quit [Read error: 60 (Operation timed out)]
dax has quit [Read error: 110 (Connection timed out)]
dax has joined #ocaml
pattern has joined #ocaml
pattern has quit [Read error: 110 (Connection timed out)]
owll has joined #ocaml
owll has quit [Remote closed the connection]
lam has joined #ocaml
pattern has joined #ocaml
<drWorm>
what's a good way to inform the type system of the type of values in a Hashtbl? I make the hashtable, but when i use it later on, with 'Hashtbl.add unix_user_cache uid <underline>result</underline>', i get "This expression has type unix_user but is here used with type 'a / The type constructor unix_user would escape its scope"
<Smerdyakov>
let tbl : (int, int) Hashtbl.t = Hashtbl.create 1
<Smerdyakov>
If explicitly specifying the type doesn't help, you need to reconsider the scoping of your defined types!
<drWorm>
ehm, it helped, i'd never come up with that myself, thanks :)
<Smerdyakov>
Well, that is the generic way to specify types for bindings.
<drWorm>
i've seen it someplace, but i'm pretty new to ocaml
dax has quit [Read error: 60 (Operation timed out)]
dax has joined #ocaml
mattam_ has joined #ocaml
cmeme has quit [Remote closed the connection]
mattam has quit [Read error: 110 (Connection timed out)]
<_JusSx_>
Shut up Bitch
<_JusSx_>
Shut up Bitch
cmeme has joined #ocaml
cjohnson has joined #ocaml
The-Fixer has joined #ocaml
<_JusSx_>
cjohnson : hi
<cjohnson>
howdy
<_JusSx_>
cjohnson : do u use BitchX?
<cjohnson>
nope
<cjohnson>
i use xchat
<_JusSx_>
ok
Iorek_away has joined #ocaml
Iorek_away is now known as IorekByrnison
Defcon7 has quit [Read error: 60 (Operation timed out)]
Defcon7 has joined #ocaml
mattam_ is now known as mattam
pattern has quit [Read error: 110 (Connection timed out)]
idefx has joined #ocaml
cjohnson has quit ["Got to be good lookin' 'cause he's so hard to see."]
idefx has quit ["Leaving"]
pattern has joined #ocaml
IorekByrnison has quit ["Je suis devenu un peu dingue"]
pattern has left #ocaml []
_JusSx_ has quit [Read error: 60 (Operation timed out)]