boogie has quit [Remote host closed the connection]
breakds has quit [Remote host closed the connection]
cesar_ has joined #ocaml
serge has joined #ocaml
cesar_ is now known as Guest63713
amirmc has joined #ocaml
adrien_oww has quit [*.net *.split]
quelu has quit [*.net *.split]
osnr has quit [*.net *.split]
jbrown has quit [*.net *.split]
rgrinberg1 has quit [*.net *.split]
rndm has quit [*.net *.split]
adrien_oww has joined #ocaml
jbrown has joined #ocaml
rgrinberg1 has joined #ocaml
amirmc has quit [Ping timeout: 264 seconds]
rndm has joined #ocaml
quelu has joined #ocaml
osnr has joined #ocaml
Guest63713 has quit [Remote host closed the connection]
f[x] has joined #ocaml
boogie has joined #ocaml
boogie has quit [Remote host closed the connection]
boogie has joined #ocaml
boogie has quit [Remote host closed the connection]
zxqdms has quit [*.net *.split]
technomancy has quit [*.net *.split]
ivan\ has quit [*.net *.split]
Xuerian_ has quit [*.net *.split]
tristero has quit [*.net *.split]
IbnFirnas has quit [*.net *.split]
zxqdms has joined #ocaml
technomancy has joined #ocaml
tristero has joined #ocaml
ivan\ has joined #ocaml
ivan\ has quit [Changing host]
ivan\ has joined #ocaml
Xuerian has joined #ocaml
ulfdoz has joined #ocaml
ggole has joined #ocaml
boogie has joined #ocaml
boogie has quit [Remote host closed the connection]
<caseyjames>
Hi has anyone here used the library ocaml-csv or the csv_write in the library core extended
<adrien>
morning
<adrien>
I used ocaml-csv a long time ago
<caseyjames>
morning. I can't figure out the writing end of things, how to insert fields etc. Do you just handle that with concatenation? @ ", " @
csakatoku has quit [Remote host closed the connection]
yezariaely has joined #ocaml
<adrien>
it's been a long time, I need to have a lookg at the interface
serge has quit [Remote host closed the connection]
amirmc has joined #ocaml
justdit has joined #ocaml
<adrien>
caseyjames: for ocaml-csv, you have "type t = string list list"
<adrien>
in other words
<adrien>
the main type is a rows of columns of text
amirmc has quit [Ping timeout: 248 seconds]
<adrien>
I'd expect that inserting a field relies heaviliy on inserting items at the right position in each row
<adrien>
I don't see helpers to do that though; it's fairly easy to do but it could be an annoying (if inefficient) operation; you should open a bug report on ocaml-csv's project page, the current maintainer is very active
<caseyjames>
:adrien: I just stepped away. That is helpful thanks. Given your description it seems generating them manually might be cleaner for the straightforward work I'm doing
<adrien>
well, it's a matter of having a "List.insert_at" function
<adrien>
and ocaml-csv provides folding function
gour has joined #ocaml
Neros has quit [Read error: Operation timed out]
<caseyjames>
"type t = string list list" makes sense in terms of csv, but that is very unfamiliar ocaml to me. is that a common way to do 2D array type thigs with lists?
<adrien>
insert_at could be something like: fold_left (fun (e, n) l -> if n = 0 then e :: l else match l with [] -> [ e ] | h::t -> ohcrapIreasllyshouldn'ttrytocodelongerfunctionsdirectlyinIRC)
<adrien>
well, csv can have a variable number of columns for each row
<adrien>
so you have little choice but that
<caseyjames>
Thanks again. I made a lot of good progress on OCaml today, but I got stuck on this csv thing this afternoon,
justdit has left #ocaml []
<adrien>
csv isn't a very good format
ulfdoz has quit [Ping timeout: 245 seconds]
<adrien>
it's not really standardized and you end up with issues with delimiters and how you're supposed to quote them when they appear in your cells
yacks has joined #ocaml
q66 has joined #ocaml
Yoric has joined #ocaml
serge has joined #ocaml
caligula has joined #ocaml
f[x] has quit [Ping timeout: 252 seconds]
thomasga has joined #ocaml
ttamttam has joined #ocaml
ontologiae has joined #ocaml
steshaw has quit [Ping timeout: 248 seconds]
IbnFirnas has joined #ocaml
nikki93 has quit [Remote host closed the connection]
f[x] has joined #ocaml
ontologiae has quit [Ping timeout: 264 seconds]
yroeht has quit [Quit: WeeChat 0.3.7]
zpe has joined #ocaml
skchrko has joined #ocaml
yroeht has joined #ocaml
thomasga has quit [Ping timeout: 265 seconds]
amirmc has joined #ocaml
thomasga has joined #ocaml
ontologiae has joined #ocaml
amirmc has quit [Ping timeout: 248 seconds]
thomasga has quit [Ping timeout: 240 seconds]
caligula has quit [Ping timeout: 248 seconds]
thomasga has joined #ocaml
serge has quit [Read error: Connection reset by peer]
serge has joined #ocaml
AltGr has joined #ocaml
ski has quit [Read error: Operation timed out]
ggole has quit [Ping timeout: 240 seconds]
adrinou has joined #ocaml
adrien_oww has quit [Read error: Connection reset by peer]
dsheets has joined #ocaml
manizzle has joined #ocaml
ggole has joined #ocaml
dsheets has quit [Ping timeout: 245 seconds]
<flux>
adrien, but is there a better format?
<adrinou>
depends on what you want to do :)
<adrinou>
binary or not
<adrinou>
s-expressions are nice
<adrinou>
and when we get runtime types next month...
<adrinou>
( :D )
<companion_cube>
can't wait
amirmc has joined #ocaml
<companion_cube>
B-encode is cool :p
<adrinou>
btw, "next month" <- that's completely made up
amirmc has quit [Ping timeout: 240 seconds]
<companion_cube>
now you'll have to threaten Pierre in order to force him to release next month
<rks`>
pierre is *not* working on that.
<flux>
cvs is nice in that most apps you want to use cvs-kind-of-data with work with cvs. like excel, libreoffice, gnuplot, ..
<flux>
s-expressions are more difficult to work with with standard unix tools
<companion_cube>
hmmm, Grégoire, sorry
<companion_cube>
anyway threatening Pierre is still a valid option
<def-lkb>
csv?
<companion_cube>
comma separated values
<def-lkb>
read cvs
<rks`>
comma valued separation.
<def-lkb>
<3
<rks`>
;)
Yoric has quit [Ping timeout: 260 seconds]
<adrinou>
flux: yeah, definitely; it all depends on what you need (in that case, compat)
mfp has joined #ocaml
serge_ has joined #ocaml
serge has quit [Ping timeout: 248 seconds]
Kakadu has joined #ocaml
<Kakadu>
gour: hi
mort___ has joined #ocaml
djcoin_ has quit [Quit: WeeChat 0.4.1]
madroach has quit [Quit: leaving]
Simn has joined #ocaml
madroach has joined #ocaml
amirmc has joined #ocaml
adrinou is now known as adrien_oww
amirmc has quit [Quit: Leaving.]
Kakadu has quit [Remote host closed the connection]
Kakadu has joined #ocaml
Kakadu_ has joined #ocaml
weie_ has joined #ocaml
Kakadu has quit [Ping timeout: 272 seconds]
weie has quit [Ping timeout: 265 seconds]
Yoric has joined #ocaml
weie has joined #ocaml
weie_ has quit [Ping timeout: 252 seconds]
madroach has quit [Quit: leaving]
madroach has joined #ocaml
madroach has quit [Client Quit]
madroach has joined #ocaml
madroach has quit [Quit: leaving]
madroach has joined #ocaml
MitoticSpindle has joined #ocaml
madroach has quit [Ping timeout: 264 seconds]
madroach has joined #ocaml
darkf has quit [Quit: Leaving]
madroach has quit [Ping timeout: 264 seconds]
ttamttam has quit [Ping timeout: 248 seconds]
madroach has joined #ocaml
Neros has joined #ocaml
amirmc has joined #ocaml
ttamttam has joined #ocaml
amirmc1 has joined #ocaml
amirmc has quit [Read error: Connection reset by peer]
ontologiae has quit [Ping timeout: 265 seconds]
TDJACR has quit [Ping timeout: 245 seconds]
ollehar has joined #ocaml
amirmc1 has quit [Quit: Leaving.]
_andre has joined #ocaml
MitoticSpindle has quit [Ping timeout: 272 seconds]
talzeus has quit [Remote host closed the connection]
talzeus has joined #ocaml
skchrko has quit [Ping timeout: 240 seconds]
talzeus has quit [Ping timeout: 272 seconds]
whitequark has joined #ocaml
skchrko has joined #ocaml
Drup has joined #ocaml
dsheets has joined #ocaml
amirmc has joined #ocaml
<AltGr>
Drup, on ocp-index: the latest version relies on ocp-indent (it uses its lexer to gather some context info). It should compile if you have a recent enough ocp-indent-lib installed
<Drup>
AltGr: is the opam version recent enough ?
<whitequark>
CAMLprim value llvm_pass_manager_builder_set_disable_unit_at_a_time(
* whitequark
is a sad panda
amirmc has quit [Ping timeout: 240 seconds]
<AltGr>
A release of both which is almost ready should clear the situation, but for now the OPAM release has the highest priority
<AltGr>
sadly no, some cmi files are missing in the opam package
<Drup>
is it fixable by pinning ?
<AltGr>
it should, yes
<Drup>
ok, I will try that later
<Drup>
AltGr: do you plan to separate all those "almost independent" parts at some point ?
<AltGr>
within ocp-index you mean ?
<Drup>
yes
<AltGr>
Hmm, it'll probably stay in a single repo, but there sure should be configuration options so that it's optional
<Drup>
ok
mchqwerty has joined #ocaml
dsheets has quit [Ping timeout: 245 seconds]
ttamttam has quit [Ping timeout: 272 seconds]
f[x] has quit [Ping timeout: 264 seconds]
breakds has joined #ocaml
zpe has quit [Remote host closed the connection]
breakds has quit [Remote host closed the connection]
ttamttam has joined #ocaml
ttamttam has quit [Client Quit]
yacks has quit [Ping timeout: 272 seconds]
wolfnn has joined #ocaml
AltGr has left #ocaml []
AltGr has joined #ocaml
mort___ has quit [Ping timeout: 272 seconds]
AltGr has left #ocaml []
AltGr has joined #ocaml
ollehar has quit [Ping timeout: 265 seconds]
hcartyphone has joined #ocaml
erlnoob has joined #ocaml
Neros_ has joined #ocaml
Neros has quit [Ping timeout: 245 seconds]
Kakadu_ has quit [Ping timeout: 250 seconds]
zpe has joined #ocaml
agarwal1975 has joined #ocaml
zpe has quit [Ping timeout: 252 seconds]
kay__ has joined #ocaml
talzeus has joined #ocaml
hcartyphone has quit [Ping timeout: 272 seconds]
agarwal1975 has quit [Quit: agarwal1975]
yacks has joined #ocaml
dsheets has joined #ocaml
Kakadu has joined #ocaml
MoHaX has joined #ocaml
Kakadu has quit [Ping timeout: 250 seconds]
luke_ has joined #ocaml
Kakadu has joined #ocaml
<gour>
Kakadu: hello
<Kakadu>
How are u doing?
MoHaX has quit [Ping timeout: 245 seconds]
luke_ is now known as MoHaX
<Kakadu>
yesterday I have heard that startup from C++ in lablqt can make potential users be afraid
<Kakadu>
What do you think
<gour>
Kakadu: atm, i'm busy with python & web stuff...why to be afraid of lablqt users?
<Kakadu>
no
<Kakadu>
users will be afraid to use lablqt because it uses startup from C++, not OCaml
<whitequark>
how do I do "Some x"/"None" with ocaml's C interface?
<Kakadu>
Do we have links about writing bindding in ocaml.org?
<gour>
Kakadu: i also believe that it would be nice, if possible, to join forces with wxocaml project and have one fully baked bindings instead of two half-baked
<Kakadu>
gour: I understand but QtQuick (it seems ) don't need wxOCaml experience
<Kakadu>
it nedd another kind of 'generator'
<Kakadu>
need*
<whitequark>
Kakadu: I see, thanks
<gour>
Kakadu: right, i mean joining forces, not necessarily sharing :-)
<gour>
..to have one decent C++-based bindings
<Kakadu>
gour: Can you remember what version of Qt5 is installed on your machine?
Yoric has quit [Ping timeout: 272 seconds]
jbrown has quit [Remote host closed the connection]
mchqwerty has quit [Quit: Odcházím]
Neros_ has quit [Ping timeout: 272 seconds]
<caseyjames>
Do you guys use ctypes at all? Is there any advantage to the older wrapping methid
mort___ has joined #ocaml
skchrko has quit [Remote host closed the connection]
<jpdeplaix>
caseyjames: I don't use it, but the main advantage is that it's way more easier and you don't need to write C :)
<caseyjames>
that was the gist I was getting. I went through the tutorial last night, but I still have no idea how its wotking
<adrien_oww>
I don't know ctypes but I'm wondering if it's usable without already knowing some things about bindings
<adrien_oww>
and ocaml internals
<whitequark>
jpdeplaix: if you can use ctypes, the C you would need to write is so trivial it's not a problem
watermind has joined #ocaml
Neros has joined #ocaml
ollehar has joined #ocaml
zpe has joined #ocaml
erlnoob has quit [Quit: erlnoob]
<gour>
Kakadu: now is, i believe, no qt5 installed
caseyjames has quit [Quit: Page closed]
<gour>
...but i tested with qt5.1, iirc
<Kakadu>
gour: I've pushed new version to opam. And it is a little bit buggy in my Qt5.2. Courious about 5.1
<gour>
Kakadu: i might try tomorrow when having more time. will report back
mort___ has quit [Ping timeout: 272 seconds]
yezariaely has quit [Quit: Leaving.]
zpe has quit [Remote host closed the connection]
<technomancy>
I've used ctypes and can report it's very difficult to use if you don't know C.
<whitequark>
>*c*types
<bitbckt>
that makes sense...
<technomancy>
yes; not terribly surprising but there you have it.
tane has joined #ocaml
AltGr has left #ocaml []
_andre has quit [Quit: Lost terminal]
_andre has joined #ocaml
boogie has joined #ocaml
tani has joined #ocaml
skchrko has joined #ocaml
tane has quit [Ping timeout: 245 seconds]
<The_third_man>
Hi, does anybody here works at Citrix ?
* johnelse
waves
* mcclurmc
works at Citrix
<mcclurmc>
why do you ask, The_third_man?
Anarchos has joined #ocaml
<The_third_man>
because a recruiter approached me with an offer, and I was curious to know what's the daily life there
Kakadu has quit []
ollehar has quit [Ping timeout: 246 seconds]
<adrien_oww>
I'd bet "good"; but when you arrive it might be "bad" :D
nikki93 has joined #ocaml
<johnelse>
we have free bacon rolls on fridays...
<mcclurmc>
cambridge is a pretty nice place to live, as well. you can get involved with ocaml labs there.
<avsm>
OH GOD DONT COME TO CAMBRIDGE IT'S FULL OF ZOMBIES
<avsm>
but other than that, quite nice
<The_third_man>
what do you currently work on ?
<technomancy>
zombie defense?
<avsm>
there's no escaping the zombies. except with a secret weapon
<technomancy>
it's a growing field
<The_third_man>
zombie defense in OCaml seems nice
nikki93 has quit [Remote host closed the connection]
boogie has quit [Remote host closed the connection]
zpe has joined #ocaml
adrien_oww has joined #ocaml
<gour>
D @facebook...hmm, it may oush D forward
<Anarchos>
Drup nethack references the towel because of H2G2....
zpe has quit [Ping timeout: 272 seconds]
nikki93 has joined #ocaml
boogie has joined #ocaml
boogie has quit [Remote host closed the connection]
dsheets has quit [Ping timeout: 264 seconds]
octet8 has joined #ocaml
ollehar has quit [Ping timeout: 252 seconds]
ulfdoz has joined #ocaml
<Anarchos>
Who knows about binary lambda calculus ?
<companion_cube>
binary?
adrien_oww has quit [Quit: leaving]
<Anarchos>
companion_cube yes, look on wikipedia
<companion_cube>
ewwww
<Anarchos>
companion_cube yes it made me the same :)
<Drup>
this looks like even more painful than lambda calculus to manipulate
<Anarchos>
:)
<Anarchos>
but an interpreter of size 210 bits :)
<whitequark>
that's actually very neat
<Anarchos>
whitequark what means neat in french ?
Yoric has joined #ocaml
<whitequark>
Anarchos: dunno. I meant that it is a nice and clever idea
<Anarchos>
whitequark yes :)
<Anarchos>
whitequark i can't wait to code an interpreter for that lambda calculus :
<Anarchos>
:)
milosn_ has joined #ocaml
milosn has quit [Ping timeout: 252 seconds]
ollehar has joined #ocaml
<watermind>
is it ok to ask a question on denotational semantics here? (since it's divering a bit to the theoretical side already)
<Anarchos>
watermind I think yes
<watermind>
k, if not just tell me to shut up
<watermind>
I was writing the interpretation for a case statement, Γ |- case M of inl x -> N; inr x -> N'
ollehar has quit [Ping timeout: 252 seconds]
manizzle has quit [Ping timeout: 248 seconds]
<watermind>
assume call-by-name to make it simpler, it seems pretty easy
<watermind>
we have n = [[ Γ,x:σ|- Ν:τ]] n' = [[ Γ,x:σ'|- Ν':τ]] m = [[ Γ|- Μ':σ+σ']]
<watermind>
so it is _almost_: idΓ*m; [n,n']
Anarchos has quit [Quit: committing seppuku]
<watermind>
I say almost because idΓ*m : Γ -> Γ*(σ+σ') and [n,n']: Γ*σ+Γ*σ' -> τ don't compose
Anarchos has joined #ocaml
<watermind>
this can be fixed with a simple morphis dist: Γ*(σ+σ')-> Γ*σ+Γ*σ' which gives idΓ*m; dist; [n,n']
<watermind>
but am I complicating things?
<watermind>
I suspect I may be because I never remember reading about the need for the underlying model to be distributive (i.e. to have this dist morphism)
<watermind>
and I've seen people just write idΓ*m; [n,n'] but that seems wrong
ollehar has joined #ocaml
Kakadu has joined #ocaml
Drup has quit [Read error: Operation timed out]
tristero has quit [Quit: tristero]
manizzle has joined #ocaml
pkrnj has joined #ocaml
dsheets has joined #ocaml
octet8 has quit []
nikki93 has quit [Remote host closed the connection]
<asmanur>
what's Γ * σ ?
nikki93 has joined #ocaml
ollehar has quit [Quit: ollehar]
boogie has joined #ocaml
<watermind>
eh nevermind I just realised any cartesian closed category is distributive
<watermind>
asmanur: that would be a product type
ollehar has joined #ocaml
<watermind>
asmanur: Γ is a type σ another type, and * means product
<def-lkb>
watermind: usually Γ denotes context rather than types
<mrvn>
all I see is ?
<def-lkb>
mrvn: here, it's a unicode gamma
<mrvn>
That explains so much
<asmanur>
oh
<asmanur>
so your idΓ*m is ⟨Γ, m⟩ actually
* adrien
is picturing half the channel with APL keyboard
<asmanur>
watermind: well, dist is a natural isomorphism so people usually just skip it
<watermind>
def-lkb: well it denotes both...
<watermind>
def-lkb: usually you identify a context <x_1,...x_n> : Γ with its type
fraggle_ has joined #ocaml
<watermind>
asmanur: not really
<watermind>
asmanur: idΓ* m not a pair, it is a morphism from a pair into another pair
<asmanur>
yes and it has type Γ × Γ → Γ × σ and not Γ → Γ × σ like you said
<watermind>
asmanur: true ops, my mistake
<watermind>
asmanur: that should have been <idΓ, m>
<watermind>
which denotes pairing of morphism (with functions that would be <f,g> x = <f x,g x>
<watermind>
asmanur: thanks! I guess it makes sense, to skip it and not overload the notation
darkf has joined #ocaml
erlnoob has joined #ocaml
<asmanur>
watermind: I'd note this way
<watermind>
asmanur: I was just a bit confused because I didn't know such a morphism always existed in CCC's and didn't remember reading about distributivity being requisite for the interpretation
pkrnj has quit [Quit: Computer has gone to sleep.]
ggole has quit []
nikki93 has quit [Remote host closed the connection]
milosn has joined #ocaml
milosn_ has quit [Ping timeout: 264 seconds]
smondet has quit [Quit: leaving]
fraggle_ has quit [Quit: -ENOBRAIN]
<watermind>
asmanur: by the way how did you type the parenthesis in ⟨Γ, m⟩? for the Greek letters I just alternate between UK and Greek keyboard, but I know of no easy way for other unicode symbols
<whitequark>
compose key?
<asmanur>
y
<watermind>
whitequark: I have one, which I use for accents, but no idea how to much else with it... :/