adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml MOOC http://1149.fr/ocaml-mooc | OCaml 4.02.3 announced http://ocaml.org/releases/4.02.html | Try OCaml in your browser: http://try.ocamlpro.com | Public channel logs at http://irclog.whitequark.org/ocaml
switchy_ has joined #ocaml
damason has joined #ocaml
raphaelss has joined #ocaml
Kakadu has quit [Remote host closed the connection]
sizur has joined #ocaml
meiji11 has quit [Ping timeout: 246 seconds]
smerdyakow has joined #ocaml
<sizur> Hi all. I have problem building omake. It's complaining about depricated bprintf
<sizur> also omake's latest tar and zip, both are 404
<sizur> need omake for Tayjus...
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<sizur> is this known issue?
tftio has joined #ocaml
raphaelss has quit [Ping timeout: 260 seconds]
smerdyakow has quit [Ping timeout: 260 seconds]
govg has quit [Ping timeout: 246 seconds]
madroach has quit [Ping timeout: 246 seconds]
<sizur> bought a Programming with Higher-Order Logic book, and cannot even install lambda prolog :(
supercircle4 has quit [Quit: Sleep]
madroach has joined #ocaml
tftio has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<zozozo> sizur: did you try installing omake using opam ?
<sizur> zozozo: didn't know it was on opam. let me try, sec.
<sizur> hmm opam doesn't come in pacman it seems, for some reason
<malc_> sizur: it's in yaourt
<malc_> AUR that is
<sizur> i wonder why it's still not in the main
<zozozo> opam depends on aspcudf, which is also in the AUR
<zozozo> if i remember correctly
govg has joined #ocaml
<sizur> interesting. now i'll have to check out clasp and gringo :) seems like cool stuff
raphaelss has joined #ocaml
<sizur> zozozo, malc_: thank you! teyjus is built successfully!
nullcatxxx_ has joined #ocaml
FreeBirdLjj has joined #ocaml
ontologiae_ has quit [Ping timeout: 245 seconds]
smerdyakow has joined #ocaml
pyx has joined #ocaml
pyx has quit [Client Quit]
smerdyakow has left #ocaml [#ocaml]
tennix has joined #ocaml
ncthom91 has joined #ocaml
ncthom91 has quit [Client Quit]
govg has quit [Ping timeout: 245 seconds]
govg has joined #ocaml
lolisa has quit [Ping timeout: 245 seconds]
ncthom91 has joined #ocaml
lolisa has joined #ocaml
dalastboss has joined #ocaml
<dalastboss> how is polymorphism is function arguments/return type implemented
<dalastboss> are separate versions of the function emitted?
<artart78> I've heard that the type checking is done "locally", probably for each function call for function when polymorphism is appliable
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
dalastboss has quit [Quit: Page closed]
mac10688 has quit [Ping timeout: 246 seconds]
cody` has quit [Quit: Connection closed for inactivity]
ygrek_ has joined #ocaml
meiji11 has joined #ocaml
switchy_ is now known as switchy
solrize has quit [Ping timeout: 260 seconds]
Sorella has quit [Quit: Connection closed for inactivity]
mac10688 has joined #ocaml
darkf has joined #ocaml
lolisa has quit [Ping timeout: 260 seconds]
ygrek_ has quit [Ping timeout: 246 seconds]
BitPuffin|osx has quit [Ping timeout: 260 seconds]
MercurialAlchemi has joined #ocaml
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
MercurialAlchemi has quit [Ping timeout: 245 seconds]
nullcatxxx_ has joined #ocaml
meiji11 has quit [Ping timeout: 245 seconds]
lolisa has joined #ocaml
malc_ has quit [Quit: Lost terminal]
solrize has joined #ocaml
solrize has joined #ocaml
damason has quit [Ping timeout: 246 seconds]
mac10688 has quit [Ping timeout: 245 seconds]
govg has quit [Ping timeout: 260 seconds]
Bahman has joined #ocaml
MercurialAlchemi has joined #ocaml
JacobEdelman has quit [Quit: Connection closed for inactivity]
Bahman has quit [Read error: Connection reset by peer]
Bahman has joined #ocaml
antkong has quit [Quit: antkong]
Bahman has quit [Read error: Connection reset by peer]
cyraxjoe_ has joined #ocaml
cyraxjoe has quit [Ping timeout: 246 seconds]
lolisa has quit [Ping timeout: 246 seconds]
lewis1711 has joined #ocaml
Simn has joined #ocaml
sbrouf has joined #ocaml
lewis1711 has left #ocaml ["Ex-Chat"]
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
sbrouf has quit [Ping timeout: 245 seconds]
Lightsephi has quit [Quit: leaving]
zpe has joined #ocaml
sbrouf has joined #ocaml
jonludlam has quit [Ping timeout: 260 seconds]
ely-se has joined #ocaml
wagle_ has joined #ocaml
sbrouf has quit [Ping timeout: 245 seconds]
wagle_ is now known as wagle
nojb has joined #ocaml
ggole has joined #ocaml
nojb has quit [Quit: nojb]
nojb has joined #ocaml
sbrouf has joined #ocaml
sbrouf has quit [Client Quit]
cody` has joined #ocaml
nojb has quit [Quit: nojb]
antkong has joined #ocaml
larhat1 has quit [Quit: Leaving.]
antkong has quit [Quit: antkong]
Simn has quit [Read error: Network is unreachable]
Simn has joined #ocaml
ely-se has quit [Quit: leaving]
ely-se has joined #ocaml
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
mankyKitty has quit [Ping timeout: 264 seconds]
Haudegen has quit [Ping timeout: 246 seconds]
mankyKitty has joined #ocaml
antkong has joined #ocaml
Haudegen has joined #ocaml
lolisa has joined #ocaml
mort___ has joined #ocaml
pierpa` has joined #ocaml
nojb has joined #ocaml
<sspi> what's the best way to join the results of two pattern matches into a single tuple?
<companion_cube> you mean two nested matches?
jonludlam has joined #ocaml
Simn has quit [Read error: Network is unreachable]
<sspi> companion_cube: yes
Simn has joined #ocaml
<companion_cube> match a with A x -> ... match b with B y -> (x,y)
<companion_cube> this?
<sspi> yes, basically two match patterns next to each other and then joining the results into a single tuple
<sspi> (I'm just getting used to OCaml...)
<Cypi> let a = match t with A x -> ... | B y -> ... in let b = match u with A' x -> ... | B' y -> ... in let p = (a, b) in ...
<Cypi> something like this?
<sspi> Cypi: thanks, that was what I was looking for :)
infinity0 has quit [Remote host closed the connection]
ontologiae_ has joined #ocaml
zpe has quit [Remote host closed the connection]
sepp2k has joined #ocaml
zpe has joined #ocaml
zpe has quit [Remote host closed the connection]
cyraxjoe has joined #ocaml
cyraxjoe_ has quit [Ping timeout: 260 seconds]
infinity0 has joined #ocaml
octachron has joined #ocaml
FreeBird_ has joined #ocaml
cschneid_ has quit [Ping timeout: 260 seconds]
FreeBirdLjj has quit [Ping timeout: 260 seconds]
FreeBird_ has quit [Ping timeout: 246 seconds]
zpe has joined #ocaml
ontologiae_ has quit [Ping timeout: 245 seconds]
_habnabit has quit [Ping timeout: 264 seconds]
zpe has quit [Remote host closed the connection]
orbifx has joined #ocaml
ely-se has quit [Quit: leaving]
cschneid has joined #ocaml
cschneid has quit [Ping timeout: 260 seconds]
caml has joined #ocaml
<caml> I get this error when intalling "nocrypto" library:
<caml> # ./postconf: 16: ./postconf: function: not found
<caml> # E: Failure("Command './postconf' terminated with error code 1")
antkong has quit [Quit: antkong]
<caml> any idea?
_habnabit has joined #ocaml
<hannes> caml: which version of nocrypto? which operating system are you on?
<caml> nocrypto 0.5.2 on ubuntu 14.04
<caml> OCaml version 4.01.0
<hannes> could you please report an issue at https://github.com/mirleft/ocaml-nocrypto/issues ?
<caml> sure
<hannes> it seems that postconf, a shell script in there, assumes /bin/sh to be a bash :/
<caml> is there a quick fix so I can compile my code?
_habnabit has quit [Ping timeout: 260 seconds]
_habnabit has joined #ocaml
rand has joined #ocaml
Sorella has joined #ocaml
Kakadu has joined #ocaml
ely-se has joined #ocaml
lukky513 has joined #ocaml
Simn has quit [Read error: Network is unreachable]
<hannes> caml: a fix for this is awaiting a merge at https://github.com/ocaml/opam-repository/pull/5261
Simn has joined #ocaml
ely-se has quit [Client Quit]
ely-se has joined #ocaml
<orbifx> hannes: `/usr/bin/env bash` instead?
<hannes> orbifx: not found.. why should anyone require a bash on a unix, if it is easily doable in sh?
<orbifx> they shouldn't if sh can do it no
<orbifx> although on the other hand the developer might enjoy scripting on bash more
<orbifx> so long the target system isn't too minimal
<orbifx> anyway the point is that I've found that `#!/usr/bin/env xxx` for running an interpreter is more portable
<hannes> for an interpreter, such as python or perl, i agree. for shell scripts i really dislike to depend on bash
<hannes> (and i'm in contact with nocrypto-upstream author who merged this exact patch alredy ;)
<orbifx> ok
raphaelss has quit [Ping timeout: 260 seconds]
raphaelss has joined #ocaml
ely-se has quit [Quit: leaving]
ontologiae_ has joined #ocaml
ontologiae_ has quit [Ping timeout: 260 seconds]
JacobEdelman has joined #ocaml
mort___ has quit [Quit: Leaving.]
ely-se has joined #ocaml
zpe has joined #ocaml
freehck has joined #ocaml
<Leonidas> i write my shell scripts in ZSH :p
<Leonidas> so I can reach maximum unportability
Simn has quit [Read error: Network is unreachable]
Simn has joined #ocaml
<edwin> there is a checkbashisms tool on debian
<ely-se> Leonidas: I use PowerShell for that
raphaelss has quit [Ping timeout: 260 seconds]
d0nn1e has quit [Ping timeout: 260 seconds]
<Leonidas> ely-se: PowerShell on Mono using Mono-only APIs, that would be a great idea :)
d0nn1e has joined #ocaml
zpe has quit [Read error: Connection reset by peer]
tftio has joined #ocaml
sizur has quit [Quit: WeeChat 1.3]
JacobEdelman has quit [Ping timeout: 264 seconds]
infinity0 has quit [Ping timeout: 246 seconds]
l1x has quit [Read error: Network is unreachable]
JacobEdelman has joined #ocaml
pierpa` is now known as pierpa
l1x has joined #ocaml
Simn has quit [Read error: Network is unreachable]
Simn has joined #ocaml
igoroliveira has joined #ocaml
Anarchos has joined #ocaml
tftio has quit [Quit: Textual IRC Client: www.textualapp.com]
Sim_n has joined #ocaml
ontologiae_ has joined #ocaml
Simn has quit [Ping timeout: 264 seconds]
fedjo has joined #ocaml
struk|desk has joined #ocaml
Sim_n has quit [Read error: Network is unreachable]
Sim_n has joined #ocaml
BitPuffin has joined #ocaml
dsheets has joined #ocaml
mort___ has joined #ocaml
simn__ has joined #ocaml
sigjuice has joined #ocaml
ivan\_ has joined #ocaml
fedjo has quit [Ping timeout: 246 seconds]
ivan\ has quit [Ping timeout: 246 seconds]
fedjo has joined #ocaml
Sim_n has quit [Ping timeout: 264 seconds]
ivan\_ is now known as ivan\
jeroud has quit [Ping timeout: 245 seconds]
bobpoekert has quit [Ping timeout: 245 seconds]
l1x has quit [Ping timeout: 245 seconds]
Sim_n has joined #ocaml
jeroud has joined #ocaml
cody` has quit [Quit: Connection closed for inactivity]
fedjo has quit [Read error: Connection reset by peer]
simn__ has quit [Ping timeout: 264 seconds]
fedjo has joined #ocaml
flux has quit [Remote host closed the connection]
badon_ has joined #ocaml
badon has quit [Disconnected by services]
badon_ is now known as badon
flux has joined #ocaml
mietek has quit [Excess Flood]
mietek has joined #ocaml
Sorella has quit [Quit: Connection closed for inactivity]
cojy has quit [Read error: Connection reset by peer]
cojy has joined #ocaml
bobpoekert has joined #ocaml
yegods has joined #ocaml
dsheets has quit [Ping timeout: 245 seconds]
martintrojer has quit [Ping timeout: 245 seconds]
yegods has quit [Remote host closed the connection]
martintrojer has joined #ocaml
dsheets has joined #ocaml
tennix has quit [Ping timeout: 246 seconds]
l1x has joined #ocaml
yegods has joined #ocaml
antkong has joined #ocaml
yegods has quit [Remote host closed the connection]
Sim_n is now known as Simn
infinity0 has joined #ocaml
yegods has joined #ocaml
ncthom91 has joined #ocaml
tane has joined #ocaml
accname has joined #ocaml
ncthom91 has quit [Client Quit]
<accname> Hi
zpe has joined #ocaml
<accname> Is there a module which prints binary trees to the console? I have a string as input
<accname> or asking another way how can I print a nice looking binary tree to the console
lolisa has quit [Quit: meow]
yegods has quit [Remote host closed the connection]
<companion_cube> if you only have a string, that's going to be tough
<companion_cube> but for pretty printing you can try Format
<accname> ups sorry that wasn't correct. the string itself is pretty printed. I have the underlaying binary structure
yegods has joined #ocaml
zpe has quit [Ping timeout: 256 seconds]
jonh has quit [Ping timeout: 264 seconds]
jonh has joined #ocaml
<companion_cube> well, I don't have anything in mind for really nice printing of trees
<Drup> companion_cube: don't you have your lambda-term printer ?
<Drup> hum no, not lambda-term
<companion_cube> the Printbox thing? yeah
<Drup> yeah, printbox
<Drup> it prints tree, doesn't it ?
<companion_cube> http://paste.isomorphis.me/gZ7 the first thing I'd advise is a simple printer based on Format
yegods has quit [Ping timeout: 272 seconds]
<companion_cube> then I have this example, indeed : https://github.com/c-cube/containers-misc/blob/master/examples/lambda.ml
ncthom91 has joined #ocaml
<accname> thank you. I will look at them. the lambda.ml look promising
<companion_cube> Drup: isn't your tree_layout ready?
<companion_cube> there's also https://bitbucket.org/camlspotter/treeprint
<companion_cube> but it's more Format oriented apparently
<Drup> companion_cube: it's ready, but it's not for pretty printing
<companion_cube> oh.
<Drup> it's for layout
<companion_cube> oh right, it finds positions
<companion_cube> sad
<companion_cube> https://www.lri.fr/~filliatr/ftp/ocaml/misc/prtree.ml.html <- this is short, but it would still be nice to have it on github
<Drup> I have a plan to implement an algorithm to have decent console layout for some trees
<Drup> but it's not done yet
<companion_cube> ♥
sepp2k has quit [Quit: Leaving.]
Anarchos has quit [Quit: Page closed]
<Drup> http://sydney.edu.au/engineering/it/%7Eshhong/comp5048-lec2.pdf <- the tip-over drawing should give decent result in a console
exm has joined #ocaml
tennix has joined #ocaml
<exm> Quick question: I need a 16-bit number to do bitwise arithmetic on. Is there a builtin type for that, or a recommended way to do it? I could just mask off the higher order bytes, but that doesn't feel as clean
<Drup> mask it off
<Drup> if you want compact storage of many int16, Bigarray is your friend
zpe has joined #ocaml
<exm> Drup: thanks
<exm> Doesn't look like bigarray exposes bit shifting operations on those types? (I'm pretty new to OCaml, so I'm not sure I'm reading the docs right)
<Drup> Bigarray is just storage
<Drup> you manipulate them as ints
<exm> That's what I thought, okay
slash^ has joined #ocaml
cody` has joined #ocaml
ely-se has quit [Quit: leaving]
<thizanne> does anyone know how to make http://paste.awesom.eu/qFEt typecheck ?
zpe has quit [Remote host closed the connection]
<ggole> What a silly type error.
<thizanne> oh, thanks
<Drup> eh, polymorphic methods :|
<Drup> def`: ^
<thizanne> ... that probably makes my code unusable, but I got what I deserved for trying gadts :)
<Drup> thizanne: for trying objects, actually
<thizanne> the same object with a non-gadt has no problem
agumonkey has quit [Read error: No route to host]
<Drup> the same functions with no objects has no problem :D
agumonkey has joined #ocaml
<Enjolras> which type error ?
<Enjolras> ah i see
<thizanne> but the same function with no object does not allow me to redefine only part of f, Drup
<thizanne> (I could have used record like in Ast_mapper)
<ggole> How does it make the code unusable? Is there an obstacle that the example doesn't capture?
<thizanne> actually no
<thizanne> but I guess that means that, if I want to refine f in some object inheriting x, I would need to add the same kind of annotation
<thizanne> (unusable was exagerating, and I won't need to extend this particular method anyway)
<ggole> Right. Well, you're not unlikely to run into fun with types by mixing objects and GADTs anyway.
Simn has quit [Read error: Network is unreachable]
Simn has joined #ocaml
Mercuria1Alchemi has joined #ocaml
tane has quit [Ping timeout: 272 seconds]
<mehdi___> thizanne: (self#int Int : int t)
<mehdi___> I ran into the same issue a few months ago, having to add an obvious type annotation
yegods has joined #ocaml
accname has quit [Ping timeout: 240 seconds]
tane has joined #ocaml
orbifx has quit [Quit: WeeChat 1.3]
Guest83716 has quit [Ping timeout: 260 seconds]
trix has joined #ocaml
trix is now known as Guest3094
accname has joined #ocaml
tennix has quit [Ping timeout: 272 seconds]
mort___ has quit [Ping timeout: 260 seconds]
dsheets has quit [Ping timeout: 240 seconds]
govg has joined #ocaml
antkong has quit [Quit: antkong]
jwatzman|work has joined #ocaml
clockish has quit [Ping timeout: 260 seconds]
dsheets has joined #ocaml
clockish has joined #ocaml
^elyse^ has joined #ocaml
jeffmo has joined #ocaml
jonludlam has quit [Quit: Leaving]
ontologiae_ has quit [Ping timeout: 260 seconds]
kolko has quit [Ping timeout: 246 seconds]
kolko has joined #ocaml
jeffmo_ has joined #ocaml
jeffmo has quit [Ping timeout: 250 seconds]
jeffmo_ is now known as jeffmo
nojb has quit [Quit: nojb]
nojb has joined #ocaml
supercircle4 has joined #ocaml
supercircle4 has quit [Ping timeout: 240 seconds]
nullcatxxx_ has joined #ocaml
kolko has quit [Ping timeout: 272 seconds]
rand has quit [Ping timeout: 246 seconds]
sz0 has joined #ocaml
supercircle4 has joined #ocaml
exm has left #ocaml [#ocaml]
accname has quit [Quit: Leaving]
supercircle4 has quit [Client Quit]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
cyraxjoe_ has joined #ocaml
cyraxjoe has quit [Ping timeout: 246 seconds]
yegods has quit [Remote host closed the connection]
ia0 has joined #ocaml
Haudegen has quit [Ping timeout: 260 seconds]
ygrek_ has joined #ocaml
ncthom91 has joined #ocaml
ncthom91 has quit [Client Quit]
rand has joined #ocaml
caml has quit [Ping timeout: 252 seconds]
Haudegen has joined #ocaml
supercircle4 has joined #ocaml
pierpa has quit [Read error: Connection reset by peer]
pierpa has joined #ocaml
ygrek_ has quit [Ping timeout: 240 seconds]
jwatzman|work has quit [Quit: jwatzman|work]
darkf has quit [Quit: Leaving]
^elyse^ has quit [Quit: Leaving]
jwatzman|work has joined #ocaml
Kakadu_ has joined #ocaml
systmkor has quit [Ping timeout: 246 seconds]
yegods has joined #ocaml
lolisa has joined #ocaml
ygrek_ has joined #ocaml
nojb has quit [Quit: nojb]
nojb has joined #ocaml
dsheets has quit [Ping timeout: 256 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
systmkor has joined #ocaml
nojb1 has joined #ocaml
agumonkey has quit [Quit: ZNC - http://znc.in]
nojb has quit [Ping timeout: 240 seconds]
nojb1 is now known as nojb
malc_ has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
agumonkey has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
ontologiae_ has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
lolisa has quit [Ping timeout: 272 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
ontologiae_ has quit [Ping timeout: 272 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
supercircle4 has quit [Quit: Sleep]
igoroliveira has quit [Quit: Connection closed for inactivity]
ggole has quit []
nojb has quit [Client Quit]
nojb has joined #ocaml
cody` has quit [Quit: Connection closed for inactivity]
supercircle4 has joined #ocaml
supercircle4 has quit [Max SendQ exceeded]
nojb has quit [Client Quit]
nojb has joined #ocaml
supercircle4 has joined #ocaml
rand has quit [Ping timeout: 272 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
octachron has quit [Quit: Leaving]
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
linse has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
Anarchos has joined #ocaml
<linse> hi, I’m trying to build my own modified version of pfff with the pinning command
<linse> and get an error that some patches did not apply
<linse> any help on how to debug this is greatly appreciated :)
<companion_cube> did you pin a git repository?
<linse> I pinned it to my local cloned version of the pfff repository
<linse> opam pin add pfff /home/sschirmer/cloned/pfff.master
<linse> and then it prompted me to rebuild, I said yes
<companion_cube> I usually use -k git
<companion_cube> but I'm not sure it changes anything
nojb has quit [Client Quit]
<linse> ah, I could try that, companion_cube
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
mort___ has joined #ocaml
rand has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
BitPuffin has quit [Ping timeout: 245 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
jonludlam has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
supercircle4 has quit [Quit: Sleep]
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
supercircle4 has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
linse_ has joined #ocaml
linse has quit [Ping timeout: 245 seconds]
linse_ is now known as linse
nojb has quit [Client Quit]
larhat1 has joined #ocaml
raphaelss has joined #ocaml
nojb has joined #ocaml
theblatte has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
lostman has joined #ocaml
<solrize> is there some interesting ocaml code around to hack on? i.e. FOSS project with some well-defined pending tasks
<companion_cube> lots, depends on your interest
nojb has quit [Client Quit]
nojb has joined #ocaml
<solrize> i don't know the language at all but have been using haskell for a while, so looking for a good way to give ocaml a try
<companion_cube> oh, you might want to start with a book or course — just an advice
<companion_cube> OCaml is not exactly the same as Haskell
supercircle4 has quit [Quit: Sleep]
<companion_cube> if you're interested in systems, the mirage project has relatively consequent tasks https://github.com/mirage/mirage-www/wiki/Pioneer-Projects
<solrize> yeah that's reasonable, i have links to a few books, it looks pretty straightforward
<companion_cube> you can also look at existing libraries on opam http://opam.ocaml.org/packages/ and see if you can contribute to one that interests you
<solrize> mirage is the ocaml running directly on xen?
<companion_cube> ocaml.org has many references if you need
<companion_cube> yes
<Drup> the code in mirage is going to shock you, as an haskeller :)
<solrize> cool
<solrize> drup uh oh :)
<companion_cube> well it's parametric on the platform (xen, unix...)
<solrize> there is something like that for haskell (halvm.org) and erlang (erlangonxen.org) iirc
nojb has quit [Client Quit]
nojb has joined #ocaml
<Drup> solrize: what kind of things are you interested in, exactly ?
<solrize> i'm looking at the ssl stack in the mirage project
<solrize> i'm into crypto
<solrize> so that could be good
<companion_cube> oh, interesting
supercircle4 has joined #ocaml
<solrize> oh yeah, there are several things here that look good
<companion_cube> nocrypto, I guess, and ocaml-tls
nojb1 has joined #ocaml
<Drup> I'm not sure the code is accessible to beginners, but yes, those are the two relevant libs
<Drup> (the author, hannes, hangs around)
<solrize> sounds ok... i've looked at the haskell and erlang tls implementations
<solrize> there's also an ssh server in erlang
<solrize> iirc
<solrize> what do you mean by it's parametrized on the platform?
nojb has quit [Ping timeout: 240 seconds]
nojb1 has quit [Client Quit]
<Drup> ahah. :D
nojb has joined #ocaml
<Drup> solrize: first, read up on functors
<solrize> sorry it was companion_cube who said that
<companion_cube> ^
<solrize> looking
<companion_cube> then https://mirage.io/wiki/technical-background I guess
supercircle4 has quit [Quit: Sleep]
<edwin> do you know elliptic curve crypto? not sure whats the status of elliptic-curve crypto in ocaml-tls, but that would be an interesting addition (there's some lib on github implementing primitives)
freehck has quit [Remote host closed the connection]
<solrize> yeah, i did some hacking on the golang ecc stuff
malc_ has quit [Quit: Lost terminal]
nojb has quit [Client Quit]
<solrize> it's like bignum arithmetic though, very hard to write fast code in high level languages
<solrize> golang's is like 20x slower than openssl's :(
<edwin> the low-level crypto primitives in nocrypto are in C
<companion_cube> in OCaml there is a nice binding to GMP, but there must still be some slowdown, I think
supercircle4 has joined #ocaml
nojb has joined #ocaml
<Drup> companion_cube: actually, zarith is faster than normal gmp usage in a rather number of applications :]
<Drup> +larger
<zozozo> Drup: any idea why ?
<companion_cube> oh, for small ints
nojb has quit [Client Quit]
<Drup> yes, small ints are normal ints
<companion_cube> but otoh you don't control allocations, do you?
<Drup> and it doesn't have extra boxing
<Drup> (it uses the int bit to know if it's an integer or a gmp integer)
<Drup> (yes, It was implemented by XL, don't ask)
<solrize> mirage looks really nice, is the idea to have a complete multiprocessing VM in it and have that be able to run under unix?
<companion_cube> monoprocessing*
<solrize> ic
<companion_cube> it's a unikernel, so you build the full application in one process, low level bricks
<companion_cube> included
<edwin> there are also some presentations here to help you understand what it is about: http://decks.openmirage.org/
zpe has joined #ocaml
<solrize> what if the application has concurrent i/o or something where you'd naturally want multiple processes or threads?
<Drup> solrize: concurency is fine
<Drup> parallelism is not, for now
nojb has joined #ocaml
<solrize> ic. i remember there was a snag in implementing concurrency with async i/o in a single thread in linux
<solrize> which is there's no way to open files asynchronously
<solrize> so ghc and erlang both have a pool of threads doing that
<Drup> we said single process, nothing said anything about single thread :p
<solrize> oh ok :)
nojb has quit [Client Quit]
nojb has joined #ocaml
Anarchos has quit [Ping timeout: 272 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
tane has quit [Quit: Verlassend]
tani has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
ollehar has joined #ocaml
tani has quit [Ping timeout: 240 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
Mercuria1Alchemi has quit [Ping timeout: 272 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
ontologiae_ has joined #ocaml
ollehar has quit [Ping timeout: 250 seconds]
ncthom91 has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
ontologiae_ has quit [Ping timeout: 272 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
<solrize> hah, an unintentional joke about type errors https://en.wikipedia.org/wiki/File:New_cuyama.jpg
<solrize> sign at a town in california
nojb has quit [Ping timeout: 240 seconds]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
ygrek_ has quit [Ping timeout: 272 seconds]
nojb has quit [Client Quit]
nojb has joined #ocaml
infinity0 has quit [Remote host closed the connection]
nojb has quit [Client Quit]
infinity0 has joined #ocaml
nojb has joined #ocaml
^elyse^ has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
zpe has quit [Remote host closed the connection]
rand has quit [Quit: leaving]
nojb1 has joined #ocaml
nojb has quit [Ping timeout: 240 seconds]
nojb1 is now known as nojb
<solrize> Drup, what about threads for parallelism ?
nojb has quit [Client Quit]
nojb has joined #ocaml
<Drup> nope, OCaml as a GIL
<Drup> (because of the GC)
<Drup> there is wip to lift that, but it's wip
ldopa has joined #ocaml
c-c has joined #ocaml
<c-c> Hi! What do #ocaml think about rust?
<Drup> It's a very cool low level language
nojb1 has joined #ocaml
JacobEdelman has quit []
<companion_cube> it's a nice attempt at making a OCaml-like without GC ;)
nojb has quit [Ping timeout: 240 seconds]
nojb1 is now known as nojb
<c-c> Drup cool as in "superficially trendy" or "I like it"?
nullcatxxx_ has quit [Read error: Connection reset by peer]
<Drup> later
JacobEdelman has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
nullcatxxx_ has joined #ocaml
<c-c> companion_cube: so do you think its just an attempt?
^elyse^ has quit [Quit: Leaving]
<companion_cube> no, I think it's great, I hope it becomes popular
nojb has quit [Client Quit]
nojb has joined #ocaml
<c-c> I wonder if I should do it or ocaml
antkong has joined #ocaml
<Algebr> ocaml.
<Drup> c-c: depends, what do you want to do ?
nojb has quit [Client Quit]
<c-c> IO loop, multiuser server, gui...
nojb has joined #ocaml
<c-c> maybe also just shell-ui (but fast)
<Algebr> what is shell-ui? Terminal based applications?
<Drup> we have rather good libraries for that in OCaml already
ygrek_ has joined #ocaml
<c-c> Algebr: ever play nethack or dwarf fortress?
mac10688 has joined #ocaml
<Algebr> long time ago lol
<Algebr> you could do it with lambda-term, an OCaml pacakge. I did a little game style thing with lambda-term as well
nojb has quit [Client Quit]
nojb has joined #ocaml
<Drup> yeah, lambda-term is perfect for this kind of thing
<c-c> I have some perverted ideas about rendering graphics/3D with text based console
<c-c> its been done in demos, but I don't think in games
<Algebr> link?
<Algebr> is this like the 3d cheat that the sega saturn did
<Drup> that's a very large console.
<Drup> (or a very tiny font)
<Drup> I don't think it works that well in a real console
nojb has quit [Client Quit]
nojb has joined #ocaml
<c-c> I was thinking the resolution (and potentially limited refresh rate) would be gameplay elements
yegods has quit [Remote host closed the connection]
<c-c> I cannot find a link to real code of "ascii 3d renderer" but they exist
yegods has joined #ocaml
nojb has quit [Client Quit]
<Algebr> I'm not sure if trying to do this and learn a new language is the best idea....methinks its better to do somethign easier but still chewy.
nojb has joined #ocaml
<c-c> I know some ocaml
<c-c> making any kind of game is always somehwat monumental effort
BitPuffin|osx has joined #ocaml
<c-c> rust has glium going for it... great opengl lib
<Algebr> exactly
<c-c> but then I'm not user if want opengl or
nojb has quit [Client Quit]
nojb has joined #ocaml
ollehar has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb1 has joined #ocaml
nojb has quit [Ping timeout: 240 seconds]
nojb1 is now known as nojb
<c-c> Algebr: are you saying that I should do something simple, or "use ocaml" or "use rust"? :)
<c-c> oh well, must be the first one!
nojb1 has joined #ocaml
nojb has quit [Ping timeout: 250 seconds]
nojb1 is now known as nojb
<Algebr> do something achievable and in OCaml
nojb has quit [Client Quit]
<c-c> lambda-terms idea seems great
damason has joined #ocaml
<c-c> ok, thanks for the input Algebr :)=
nojb has joined #ocaml
sh0t has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
ncthom91 has joined #ocaml
ncthom91 has quit [Client Quit]
nojb has quit [Client Quit]
nojb has joined #ocaml
nojb has quit [Client Quit]
nojb has joined #ocaml
dmiller has joined #ocaml
<linse> Hey, I still have a problem with my pinned version of pfff
<Algebr> what is the problem
nojb has quit [Client Quit]
<linse> I used the github version, pinned it, and when I install it I get two patches that fail to apply
<linse> when I just run make instead of pinning it, it works fine
<linse> These patches didn't apply at /home/sschirmer/.opam/4.02.0/build/pfff.0.29:
<linse> - lang_js-analyze-utils_js.mli.patch
<linse> - lang_js-analyze-module_js.ml-Fix-invalid-documentati.patch
<linse> Where do the patches come from?
<linse> I just path pinned it to a fresh git clone of the facebook repo
nojb has joined #ocaml
<Drup> they are in opam
<Drup> do "opam pin edit pfff" and remove the two lines about the patches
<Algebr> linse: the usual dance worked for me ./configure; make depend; make; make install
<linse> yes, configure and make etc work for me too
cyraxjoe_ is now known as cyraxjoe
<linse> ah but I see now I can delete the patches via opam pin edit
<linse> thanks Drup!
sh0t has quit [Ping timeout: 250 seconds]
Kakadu_ has quit [Remote host closed the connection]
nojb has quit [Client Quit]
<Algebr> I wonder, can pfff do anythign with llvm Ir
nojb has joined #ocaml
<Drup> isn't pfff source level ?
<Algebr> yes, but don't you count llvm lr as source?
<Drup> not really, no
<Algebr> I would think it sort of is
ncthom91 has joined #ocaml
<Drup> It's kind of in the name
<Drup> an IR is not a source language
<linse> Yay it totally worked Drup!
<Drup> linse: cool :)
<linse> thank you
nojb has quit [Client Quit]
nojb has joined #ocaml
ncthom91 has quit [Client Quit]
ollehar has quit [Quit: ollehar]
nojb has quit [Client Quit]
nojb has joined #ocaml
malc_ has joined #ocaml
nojb1 has joined #ocaml
nojb has quit [Ping timeout: 240 seconds]
ncthom91 has joined #ocaml
nojb1 has quit [Client Quit]
nojb has joined #ocaml
lostman has quit [Quit: Connection closed for inactivity]
supercircle4 has quit [Quit: Sleep]
nojb has quit [Client Quit]
nojb has joined #ocaml
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
nojb has quit [Client Quit]
mcmillhj_ has joined #ocaml
nojb has joined #ocaml
cody` has joined #ocaml
ldopa has quit [Ping timeout: 272 seconds]