adrien changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.02.2 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
tnguyen has joined #ocaml
zaquest has joined #ocaml
zaquest has quit [Ping timeout: 246 seconds]
zaquest has joined #ocaml
zaquest has quit [Ping timeout: 264 seconds]
zaquest has joined #ocaml
zaquest has quit [Ping timeout: 264 seconds]
zaquest has joined #ocaml
zaquest has quit [Ping timeout: 252 seconds]
zaquest has joined #ocaml
zaquest has quit [Ping timeout: 265 seconds]
zaquest has joined #ocaml
walter|r has quit [Read error: Connection reset by peer]
walter|r has joined #ocaml
gpeterson has joined #ocaml
gpeterson has quit [Ping timeout: 248 seconds]
rand000 has quit [Quit: leaving]
Hannibal_Smith has quit [Quit: Leaving]
jprakash has joined #ocaml
jprakash has quit [Ping timeout: 252 seconds]
shinnya has quit [Ping timeout: 264 seconds]
ericwa has quit [Quit: Leaving...]
mcc has joined #ocaml
<mcc> Hey um. Is there anyone about who understands the relationship between ocamlopt and ocamlbuild?
<dsheets> module.native
ygrek has joined #ocaml
gpeterson has joined #ocaml
<mcc> dsheets: dunno if that is a yes! :) um, i'm just gonna describe my problem. so i have made a small project: https://bitbucket.org/runhello/test-ctypes/src i am trying to work toward the idea of having a c program which includes ocaml compilation units and does calls both ways via ocaml-ctypes.
<mcc> however, i—
darkf has joined #ocaml
<mcc> oh, huh. i just realized "dsheets" shows up at the top of this thing i'm about to link ^_^;
<mcc> anyway, i'm hitting this problem, very specifically this problem https://github.com/ocamllabs/ocaml-ctypes/issues/74
<mcc> which i understand to mean that different versions of libffi are being linked at different stages of compilation
gpeterson has quit [Ping timeout: 264 seconds]
<dsheets> mcc, why don't you use stub generation?
<dsheets> and yes, that bug is horrible
renopt has joined #ocaml
<mcc> dsheets: what would stub generation give me in this situation?
<mcc> dsheets: anyway, there is an explanation of a hack fix, which i would be happy to use, but it involves an argument passed to ocamlopt
<mcc> but i am not calling ocamlopt directly, i am using ocamlbuild
<dsheets> oh you are calling back eh
<dsheets> so you need libffi for closure conversion, i believe
<mcc> well, i need libffi because i do not know what functions will be getting called at compile time.
<mcc> because i seek to implement a programming language interpreter, and the user could potentially call just whatever.
<dsheets> right ok
<mcc> but maybe also i need closure conversion i would not know.
<mcc> anyway, what i tried to do
<mcc> is put this line in the myocamlbuild flag ["ocaml"; "link"; "native"; "output_obj"] @@ S[A"-output-complete-obj"; A"-ccopt"; A"\"`pkg-config --libs libffi`\""];
<mcc> but, it did not interpolate the ``.
<mcc> ah
<dsheets> two options, use `Sh
<mcc> ok so that is sort of what i am doing but i am not using the literal -L
<dsheets> or invoke ocamlbuild with an env var
<mcc> what is `Sh?
<mcc> also an ocaml binding for sodium is super useful and i am excited to find this!
<dsheets> see the top of that file for the env vars incoming from the makefile
<dsheets> oops just "Sh"
<dsheets> it's ocamlbuild's shell literal
mcclurmc has quit [Remote host closed the connection]
<mcc> that sounds perfect
<dsheets> i prefer driving ocamlbuild from a makefile and importing variables via env vars
<dsheets> ymmv
<mcc> that makes sense
<mcc> i'm currently doing this but i am trying to see what i can offload to ocamlbuild
<mcc> here is a thing, sometimes i have trouble finding docs for the ocaml tooling
<mcc> where are these S, A, Sh etc thingies documented
<dsheets> haha you and the world
<dsheets> i read the source, honestly
<mcc> it doesn't seem to discuss myocamlbuild
<mcc> ok
<mcc> that is where i normally wind up >_>
<dsheets> yeah, not a great solution, i know
<dsheets> everyone in the community would love you if you made a nice tutorial or reference or really anything about wth is going on with the build tools
<dsheets> ok, i gotta get back to hacking, ttyl
<mcc> well, maybe i'll consider that if i ever learn how to do any of this * _ *
<mcc> thank you for th ehelp!
<dsheets> np, good luck!
ygrek has quit [Ping timeout: 246 seconds]
idegen has quit [Quit: Leaving.]
tmtwd has quit [Remote host closed the connection]
ygrek has joined #ocaml
swgillespie has joined #ocaml
ygrek has quit [Remote host closed the connection]
manizzle has quit [Ping timeout: 248 seconds]
gpeterson has joined #ocaml
gpeterson has quit [Ping timeout: 244 seconds]
Bhavya has joined #ocaml
tmtwd has joined #ocaml
ygrek has joined #ocaml
siddharthv_away is now known as siddharthv
dsheets has quit [Ping timeout: 246 seconds]
samrat has joined #ocaml
jprakash has joined #ocaml
jprakash has quit [Client Quit]
struktured has quit [Ping timeout: 264 seconds]
samrat has quit [Quit: Computer has gone to sleep.]
samrat has joined #ocaml
mcc has quit [Quit: This computer has gone to sleep]
larhat has joined #ocaml
larhat1 has quit [Ping timeout: 256 seconds]
BitPuffin|osx has quit [Ping timeout: 256 seconds]
samrat has quit [Quit: [Textual IRC Client: http://www.textualapp.com/]]
samrat has joined #ocaml
Haudegen has quit [Ping timeout: 256 seconds]
<dongcarl> Does anyone know why opam doesn't just add `eval (opam config env)` to the shell config but adds `. /home/dongcarl/.opam/opam-init/init.fish > /dev/null 2> /dev/null or true`? In fish shell the longer one doesn't work and wreaks havoc
huza has joined #ocaml
ygrek has quit [Ping timeout: 252 seconds]
sh0t has joined #ocaml
Haudegen has joined #ocaml
tmtwd has quit [Remote host closed the connection]
ollehar has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Simn has joined #ocaml
arquebus has joined #ocaml
Submarine has quit [Quit: Leaving]
sh0t has quit [Remote host closed the connection]
keen__________17 has joined #ocaml
keen__________16 has quit [Ping timeout: 256 seconds]
arquebus has quit [Quit: konversation disconnects]
xificurC has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
samrat has joined #ocaml
samrat has quit [Client Quit]
haesbaert has quit [Quit: leaving]
haesbaert has joined #ocaml
zpe has joined #ocaml
malc_ has joined #ocaml
rand000 has joined #ocaml
samrat has joined #ocaml
sh0t has joined #ocaml
<flux> dongcarl, well, eval (opam config env) wouldn't work in posix shells..
malc_ has quit [Ping timeout: 250 seconds]
<flux> oh, right, you referred to the fish inclusion line not being correct format :)
<flux> well the idea I think is to put the initialization to its own file so that if it needs to be updated, it's immensely more easy than manipulating a file - instead, it can just be overwritten
<flux> but if it adds a line to the fish init scripts that doesn't work, well, then it's certainly a bug :)
sh0t has quit [Client Quit]
malc_ has joined #ocaml
huza has quit [Quit: WeeChat 0.3.8]
<dongcarl> yeah I've tested this on Ubuntu FreeBSD and Mac
<dongcarl> Pretty sure it's a bug...
<dongcarl> Do I open an issue on Github?
<flux> dongcarl, yes, please :) (on the behalf of the opam developers, I'm not one)
<flux> but it seems that when the fish support was introduced to 1.1.0-beta at 2013-06-17, it didn't do anything to such generic '.' part
<flux> so it appears the inclusion mechanism hasn't considered that different shells do the command inclusion in a different way
<flux> btw, how do you do it in fish? might be worth adding it to the issue, as not many are familiar with it
<flux> and if you want to raise some interest in the issue ;-), you might want to look up and refer to pull request #655
<dongcarl> flux: thanks for all the advice
<dongcarl> what do you mean by how do I do it in fish?
<dongcarl> I'm not especially good with the fish shell, I've just resorted to replacing the line with eval (opam config env)
<dongcarl> flux: pull request #655 under opam-repository?
<flux> dongcarl, the fish command for doing textual inclusion while discarding standard output and standard error
<flux> and returning 'success' regardless of what happens]
zpe_ has joined #ocaml
zpe has quit [Ping timeout: 240 seconds]
mort___ has joined #ocaml
creichert has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
mort___ has left #ocaml [#ocaml]
jao has joined #ocaml
creichert has quit [Remote host closed the connection]
nullcat_ has joined #ocaml
dongcarl has quit [Quit: Leaving...]
nullca___ has joined #ocaml
sepp2k has joined #ocaml
toolslive has joined #ocaml
<toolslive> so is it an accident or has lwt abandoned semantic versionig ? (lwt.2.5.0 has an API change)
nullcat_ has quit [Ping timeout: 248 seconds]
jao has quit [Ping timeout: 246 seconds]
jonludlam has joined #ocaml
oscar_toro has quit [Quit: Lost terminal]
kushal has joined #ocaml
yomimono has joined #ocaml
kushal has quit [Ping timeout: 256 seconds]
tmtwd has joined #ocaml
kushal has joined #ocaml
kushal has quit [Read error: Connection reset by peer]
kushal has joined #ocaml
zaquest has quit [Quit: Leaving]
zaquest has joined #ocaml
haesbaert has quit [Remote host closed the connection]
malc_ has quit [Ping timeout: 246 seconds]
dongcarl has joined #ocaml
nullca___ has quit [Ping timeout: 252 seconds]
dongcarl has quit [Remote host closed the connection]
dongcarl has joined #ocaml
Haudegen has quit [Ping timeout: 240 seconds]
troydm has quit [Quit: What is hope? That all of your wishes and all of your dreams come true? (C) Rau Le Creuset]
Haudegen has joined #ocaml
siddharthv is now known as siddharthv_away
nullcat has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
samrat has joined #ocaml
siddharthv_away is now known as siddharthv
toolslive has quit [Ping timeout: 252 seconds]
tmtwd has quit [Ping timeout: 256 seconds]
nullcat has quit [Ping timeout: 256 seconds]
samrat has quit [Quit: Computer has gone to sleep.]
samrat has joined #ocaml
dongcarl has quit [Quit: Leaving...]
troydm has joined #ocaml
samrat has quit [Client Quit]
nullcat_ has joined #ocaml
_andre has joined #ocaml
Reventlov has quit [Ping timeout: 240 seconds]
<Drup> lwt never really followed semantic versionning to begin with.
samrat has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
jao has joined #ocaml
velsa has joined #ocaml
<velsa> Hi, i cant build opalang cause of ocaml
<velsa> When i launch ./configure, tell me that Zlib is Unbound module
<velsa> calmzip installed
<velsa> someone got an idea ?
<adrien_znc> how did you install?
<adrien_znc> (and maybe you need ocamlfind/findlib too)
<velsa> ./configure make all make allopt && make install make install opt
<adrien_znc> hmmm
<adrien_znc> which distribution?
<velsa> debian jessie
<adrien_znc> you most certainly already have camlzip packaged
<adrien_znc> and probably opalang already
<Drup> wow, someone trying to use opalang :D
<velsa> yes i need to test it :D
<velsa> i think it seems to be a good solution
<velsa> you dont think so ?
tmtwd has joined #ocaml
<velsa> ok fixed
<velsa> thanks you adrien
<velsa> did make install-findlib on calmzip
<Drup> velsa: I think it's dead.
<Drup> regardless of how good it is.
<velsa> why ?
<adrien_znc> it's pretty much abandonned yeah
<velsa> ..
<velsa> ok ty
<velsa> i uninstall it at all
<velsa> xD thank you
velsa has quit [Quit: Page closed]
<adrien_znc> Drup: you weren't quick enough to mention ocsigen!
jun1 has joined #ocaml
ggole has joined #ocaml
rand000 has quit [Quit: leaving]
siddharthv is now known as siddharthv_away
lopex has quit [Quit: Connection closed for inactivity]
gpeterson has joined #ocaml
samrat has joined #ocaml
samrat has quit [Client Quit]
gpeterson has quit [Ping timeout: 256 seconds]
lopex has joined #ocaml
Reventlov has joined #ocaml
Reventlov has quit [Client Quit]
Reventlov has joined #ocaml
<Drup> adrien_znc: lunch break :(
samrat has joined #ocaml
dongcarl has joined #ocaml
magical-imouto is now known as ninja-maid-robot
samrat has quit [Client Quit]
Bhavya has quit [Quit: Quit the channel]
dongcarl has quit [Ping timeout: 264 seconds]
<flux> now, nows, how would we even know if it's dead or not?
samrat has joined #ocaml
jao has quit [Ping timeout: 250 seconds]
nullca___ has joined #ocaml
samrat has quit [Client Quit]
nullcat_ has quit [Ping timeout: 256 seconds]
ninja-maid-robot is now known as magica-imouto
magica-imouto is now known as magical-imouto
walter|r has quit [Remote host closed the connection]
xificurC has quit [Write error: Broken pipe]
xificurC has joined #ocaml
yomimono has quit [Ping timeout: 256 seconds]
<Leonidas> Elm is the cool new kid on the block
mort___ has joined #ocaml
idegen has joined #ocaml
<Drup> Elm has been a cool new kid for a while now :p
obadz- has joined #ocaml
troydm has quit [Ping timeout: 264 seconds]
obadz has quit [Ping timeout: 250 seconds]
badkins has joined #ocaml
BitPuffin|osx has joined #ocaml
walter|r has joined #ocaml
walter|r has quit [Read error: Connection reset by peer]
troydm has joined #ocaml
walter|r has joined #ocaml
BitPuffin|osx has quit [Remote host closed the connection]
BitPuffin|osx has joined #ocaml
walter|r has quit [Ping timeout: 256 seconds]
yomimono has joined #ocaml
struktured has joined #ocaml
ollehar has quit [Ping timeout: 246 seconds]
Reventlov has quit [Quit: leaving]
Reventlov has joined #ocaml
ollehar has joined #ocaml
jabesed has joined #ocaml
struktured has quit [Ping timeout: 244 seconds]
empyrean has quit [Remote host closed the connection]
struktured has joined #ocaml
Anarchos has joined #ocaml
tmtwd has quit [Ping timeout: 246 seconds]
mort___ has quit [Quit: Leaving.]
tmtwd has joined #ocaml
tane has joined #ocaml
billof has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
zpe_ has quit [Remote host closed the connection]
billof has quit [Client Quit]
zpe has joined #ocaml
mort___ has joined #ocaml
zpe has quit [Ping timeout: 265 seconds]
Submarine has quit [Quit: Leaving]
empyrean has joined #ocaml
<flux> elm?
<flux> is it for client side only? or node.js for server side?
BitPuffin|osx has quit [Ping timeout: 264 seconds]
<dinosaure> flux: client side
empyrean has quit [Remote host closed the connection]
MercurialAlchemi has joined #ocaml
samrat has joined #ocaml
ollehar has quit [Ping timeout: 240 seconds]
rand000 has joined #ocaml
stux|RC-only has quit [*.net *.split]
AlexRussia has quit [*.net *.split]
andrewalker has quit [*.net *.split]
mankyKitty has quit [*.net *.split]
yminsky has quit [*.net *.split]
jrslepak has quit [*.net *.split]
zmyrgel has quit [*.net *.split]
merry has quit [*.net *.split]
asmanur has quit [*.net *.split]
Plazma has quit [*.net *.split]
Khady has quit [*.net *.split]
ivan\ has quit [*.net *.split]
eventualbuddha has quit [*.net *.split]
l1x has quit [*.net *.split]
sspi has quit [*.net *.split]
strmpnk has quit [*.net *.split]
hnrgrgr has quit [*.net *.split]
jpdeplaix has quit [*.net *.split]
Mandus has quit [*.net *.split]
so has quit [*.net *.split]
MasseR has quit [*.net *.split]
scythe- has quit [*.net *.split]
brendan has quit [*.net *.split]
deavidsedice has quit [*.net *.split]
xaimus has quit [*.net *.split]
fds has quit [*.net *.split]
vbmithr has quit [*.net *.split]
ggherdov has quit [*.net *.split]
thizanne has quit [*.net *.split]
jerith has quit [*.net *.split]
bitemyapp has quit [*.net *.split]
dbrumley1 has quit [*.net *.split]
swistak35_ has quit [*.net *.split]
stomp has quit [*.net *.split]
companion_cube has quit [*.net *.split]
adrien has quit [*.net *.split]
dmbaturin has quit [*.net *.split]
nopf has quit [*.net *.split]
cantstanya has quit [*.net *.split]
adrien_znc has quit [*.net *.split]
Plazma has joined #ocaml
merry has joined #ocaml
jrslepak has joined #ocaml
Khady has joined #ocaml
Khady has joined #ocaml
bitemyapp has joined #ocaml
nopf has joined #ocaml
swistak35 has joined #ocaml
asmanur has joined #ocaml
Mandus has joined #ocaml
stomp has joined #ocaml
brendan has joined #ocaml
vbmithr has joined #ocaml
fds has joined #ocaml
dmbaturin has joined #ocaml
adrien has joined #ocaml
companion_cube has joined #ocaml
zmyrgel has joined #ocaml
jpdeplaix has joined #ocaml
scythe- has joined #ocaml
thizanne has joined #ocaml
jerith has joined #ocaml
MasseR has joined #ocaml
hnrgrgr has joined #ocaml
dbrumley_ has joined #ocaml
xaimus has joined #ocaml
stux|RC-only has joined #ocaml
AlexRussia has joined #ocaml
adrien_znc has joined #ocaml
cantstanya has joined #ocaml
deavid has joined #ocaml
<Drup> flux: it's an FRP inspired ML-like language with a haskell syntax for client programming
ivan\ has joined #ocaml
<Drup> all the right things to be cool :p
eventualbuddha has joined #ocaml
sspi has joined #ocaml
strmpnk has joined #ocaml
<MercurialAlchemi> Drup: what is?
<Drup> Elm
mankyKitty has joined #ocaml
<yomimono> http://elm-lang.org/ , since it's a bit difficult to search for
shinnya has joined #ocaml
l1x has joined #ocaml
yminsky has joined #ocaml
Hannibal_Smith has joined #ocaml
badkins has quit []
walter|r has joined #ocaml
lordkryss has joined #ocaml
mcclurmc has joined #ocaml
walter|r has quit [Ping timeout: 246 seconds]
<MercurialAlchemi> ah, yes
<MercurialAlchemi> I know about it
<MercurialAlchemi> but I'm always wary of these special-purpose languages
ggherdov has joined #ocaml
<MercurialAlchemi> you also have opa
<MercurialAlchemi> though I don't think it's particularly functional
<Drup> opa used to be functional, then it was not functional anymore
<Drup> this sentence work with both meanings of "functional" :D
mcclurmc has quit [Remote host closed the connection]
ollehar has joined #ocaml
<MercurialAlchemi> nice pun
<felipealmeida> :D
so has joined #ocaml
andrewalker has joined #ocaml
mcclurmc has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
walter|r has joined #ocaml
<MercurialAlchemi> of course "we changed the paradigm of the language" doesn't come off as a recommendation for a real-world project with paying customers
Denommus has joined #ocaml
jonludlam has quit [Ping timeout: 255 seconds]
<flux> opa was pure but became impure?
walter|r has quit [Ping timeout: 240 seconds]
badkins has joined #ocaml
<Denommus> opa?
nullca___ has quit [Quit: gone...]
MooseAndCaml has joined #ocaml
samrat has quit [Ping timeout: 255 seconds]
yomimono has quit [Ping timeout: 256 seconds]
<MooseAndCaml> Hi. Does anyone know if there is way to make a local random int generator? Random.init will initialize from a seed value, but it's global. I'm looking to have multiple generators with only local effects
samrat has joined #ocaml
<flux> mooseandcaml, maybe you could try cryptokit?
<flux> or does it have too high-quality generators (ie. slow) for your use?
<MooseAndCaml> I'm running this on mobile, but it might do. I'm really only generating small ints.
<ggole> Random.State allows that, doesn't it?
<flux> well, you need to restore and save state before and after each random number
<flux> I guess it's fast and works in non-threaded environments
<ggole> Er, no you don't? Random.State.int takes the state as first argument.
<MooseAndCaml> it looks like crypto is gpl. So Random.State may be the way to go?
<flux> oh, never mind
<flux> I didn't look inside the State module ;)
<ggole> Oh, you're looking at the top-level of Random with #show :)
<ggole> Right.
<flux> no, I was looking the manual page :)
<flux> I kinda thought the functionality was there, but I figured I must've misremembered :)
<flux> mooseandcaml, cryptokit is lgpl with a special exception for linking with ocaml programs (ie. you can do it and not be effectively bound by gpl))
<flux> * not legal advice ;-)
<MooseAndCaml> ahh, thanks for the clarification.
samrat has quit [Ping timeout: 264 seconds]
samrat has joined #ocaml
ygrek has joined #ocaml
jao has joined #ocaml
samrat has quit [Ping timeout: 240 seconds]
samrat has joined #ocaml
Haudegen has quit [Ping timeout: 264 seconds]
Haudegen has joined #ocaml
MooseAndCaml has quit [Ping timeout: 246 seconds]
slash^ has joined #ocaml
BitPuffin|osx has joined #ocaml
jwatzman|work has joined #ocaml
samrat has quit [Ping timeout: 256 seconds]
MrScout has joined #ocaml
samrat has joined #ocaml
darkf has quit [Quit: Leaving]
haesbaert has joined #ocaml
samrat has quit [Ping timeout: 256 seconds]
samrat has joined #ocaml
BitPuffin|osx has quit [Ping timeout: 252 seconds]
dongcarl has joined #ocaml
jtfmumm has joined #ocaml
mort___ has quit [Ping timeout: 246 seconds]
kushal has quit [Read error: Connection reset by peer]
samrat has quit [Ping timeout: 246 seconds]
Haudegen has quit [Ping timeout: 250 seconds]
zpe has joined #ocaml
<Drup> flux: it was very ML-y at the beginning, but to appeal to a bigger crowd, they changed to something quite similar to javascript, both in paradigm and syntax
<flux> drup, is there some documentation highlighting the .. enhancements?
<flux> but I understand it's a business, they do what the need to survive :)
<Drup> it didn't really pay off anyway
<Drup> No, I don't think there is any documentation
<flux> how long ago did this happen?
<ollehar> elm?
<Denommus> ollehar: opa
<ollehar> ok
<flux> I kinda would like try try opa, but then I have applications that could benefit from the existing ocaml code
<flux> and then there's eliom
<flux> so why bother :)
<Drup> flux: 2 or 3 y
<flux> drup, so I guess if there was a benefit to be had, it would've been seen. but I haven't really seen a lot of push or marketing for opa.
<flux> nobody has shoven compelling examples to my face!
<Drup> flux: there was a bit of a push, 3 years ago
<Drup> but it didn't caught and now it's dead :/
<flux> dead dead? they've given up?
<Drup> I don't know if the original founder gave up, but yeah, dead.
<flux> oh, there's a book on it.. published Sep 2013.
<flux> I guess you speaks the thruth: https://github.com/MLstate/opalang/graphs/contributors
<flux> only 122 github issues (open+closed), not a number one would expect from such a long that would be used. (ie. opam has 1400)
<flux> farewell, opa.
<flux> but there was this one competitor for opa? a bit more pure, a bit less corporate? what was it?
Haudegen has joined #ocaml
<Drup> eliom ? :D
<flux> there was this compiler for it and it didn't use gc at all, because it just discarded all memory after dealing with the request..
<Denommus> eliom, haste, elm
<flux> no, no, no ;)
<Drup> ah, ur/web
<flux> yes!
<Denommus> ah, yes, ur/web is awesome
<flux> for example, ur/web has already many more issues in its bug tracker :)
<flux> ..even if I don't know of anyone using it
<Drup> (I like on which criteria I recognized it, because that's approximately the only novel thing in it ... :p)
<Drup> (</troll>)
<flux> this tutorial is not going to win any hearts of a standard web2.0-programmer: http://www.impredicative.com/ur/tutorial/tlc.html
samrat has joined #ocaml
jao has quit [Ping timeout: 246 seconds]
<Drup> flux: in http://www.impredicative.com/ur/, the "...and more to come!" has been there for 2 years ^^'
manizzle has joined #ocaml
MasseR has quit [Ping timeout: 248 seconds]
MasseR has joined #ocaml
obadz- is now known as obadz
Algebr has joined #ocaml
Kakadu has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
mcclurmc has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
keen__________18 has joined #ocaml
keen__________17 has quit [Ping timeout: 246 seconds]
rand000 has quit [Quit: leaving]
<ollehar> but really, what kind of languages features could make any of you leave ocaml?
badkins has quit []
<jrslepak> prop:procedure is one of the first things I miss when I'm not using Racket, but then I'd miss having a type system too
<ollehar> what's prop : procedure?
<jrslepak> it lets a struct type (~= record) be used as a function
<ollehar> jrslepak: what's the use-case?
<jrslepak> nice for building something that's supposed to be a function plus some extra stuff carried along implicitly
<jrslepak> (lunch time now)
<ollehar> ok
<ollehar> but you can carry that within a closure, right?
hay207 has joined #ocaml
jtfmumm has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
dongcarl has quit [Ping timeout: 264 seconds]
<MercurialAlchemi> sounds like __call__ in python
<ollehar> would it be possible to create a programming language with more than one type system?
<ollehar> and then still make them interact?
<ollehar> I guess hacklang actually do this in some sense
<ollehar> but it's hardly modular.
<MercurialAlchemi> couldn't you say that about languages with gradual typing?
<ollehar> yeah
<ollehar> but they have one, but gradual
<ollehar> what if I want, dynamic, static, dependent
Submarine has quit [Quit: Leaving]
<ollehar> maybe it's hard/impossible to find a common set of programming features
robink has quit [Ping timeout: 248 seconds]
<ollehar> but wouldn't it be cool to use within the same language dynamic typing in one module and dependent pairs in another?
<ollehar> maybe that's crazy talk
<ollehar> dependent pairs like in refined types/types with propositions.
<Drup> ollehar: well, c# has dynamic typing
<ollehar> hm
<Drup> but, hum, you could do it in OCaml, there is no support for it but you could
<Drup> well, no, in OCaml you would have issues
<ollehar> delay typing till runtime?
<Drup> in Haskell, you can do it probably better
<Drup> ollehar: no, that's different
zpe has quit [Remote host closed the connection]
<Drup> you would instead inject everything in a universe type and test dynamically
<ollehar> hm
<ollehar> sounds like a lot of handwork
<ollehar> I just want a macro, like {#dynamic}, or however haskell would do it
<ollehar> maybe that's what you mean?
<ollehar> or not macro, but...
<Drup> ollehar: that's why I said you need some support for it
<Drup> (you have this support in C#, but it's basically what they do)
<ollehar> ok
rand000 has joined #ocaml
<ollehar> like ocamls ppx, but inject into the typing phase instead.
hay207 has quit [Ping timeout: 264 seconds]
robink_ has joined #ocaml
<ollehar> ah well
idegen has left #ocaml [#ocaml]
<jrslepak> ollehar: you can carry data in a closure, but you can't make it externally visible; a struct/record can put stuff in public fields
sepp2k has quit [Quit: Leaving.]
_andre has quit [Quit: leaving]
samrat has quit [Ping timeout: 246 seconds]
ggole has quit []
<ollehar> ah yeah
<ollehar> jrslepak: you would make a functor for that, I guess
<ollehar> hm
<ollehar> maybe
<ollehar> and then pass the module around using first-class modules
tmtwd has quit [Ping timeout: 256 seconds]
<Drup> (or just a record, really)
lobo has joined #ocaml
hay207 has joined #ocaml
<ollehar> how could you make a record belong to a function?
<ollehar> sounds like javacript
<ollehar> var f = function() { bla bla bla}
<ollehar> f.something = 10
<ollehar> hm
<ollehar> records have no "this" keyword
<ollehar> well, you can give it to them using a closure, I guess ^^
<ollehar> I'm just walking in circles
<MercurialAlchemi> hm
<jrslepak> a closure doesn't really work there because all you can do is apply it; you could use a closure with multiple entry points (i.e. object)
hbar has quit [Ping timeout: 248 seconds]
<MercurialAlchemi> yeah, don't think how that would work
<MercurialAlchemi> but you can't get callable objects
tane has quit [Quit: Verlassend]
<jrslepak> not in OCaml itself, but it's not a huge stretch if you're designing a new language
<ollehar> let _ =
<ollehar> type record = {a : int; b : int}
<ollehar> let this = {a = 10; b = 20}
<ollehar> let f x =
<ollehar> this.a + x;
<ollehar> f
<ollehar> ach
<jrslepak> (or want to describe prop:procedure in terms of other common language features)
<MercurialAlchemi> sometimes it's better to admit that your hammer is not useful when your problem is a screw
<jrslepak> heh
<ollehar> never!
<MercurialAlchemi> anyway
<MercurialAlchemi> night folks
<ollehar> night
<jrslepak> . o O ( TODO: make hammer with screwdriver head on the back )
<Drup> ollehar: a record containing a function
<ollehar> I know
<ollehar> still no this
<Drup> (or an object, indeed)
<ollehar> yeah
<Drup> then you just invent an operator for application, and you are done
<Drup> it's not pretty, but it works
MercurialAlchemi has quit [Ping timeout: 244 seconds]
<ollehar> why?
MrScout_ has joined #ocaml
MrScout has quit [Ping timeout: 248 seconds]
tmtwd has joined #ocaml
<ollehar> ach
jtfmumm has joined #ocaml
Algebr has quit [Remote host closed the connection]
sailorswift has joined #ocaml
MrScout_ has quit [Remote host closed the connection]
robink_ has quit [Ping timeout: 244 seconds]
yomimono has joined #ocaml
jtfmumm has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
robink_ has joined #ocaml
DanielRichman has joined #ocaml
DanielRichman has quit [Client Quit]
DanielRichman has joined #ocaml
robink_ is now known as robink
<ollehar> no transcompiler from sml to ocaml?
MrScout has joined #ocaml
DanielRichman has quit [Quit: leaving]
<flux> not one I've hard of
<flux> +e
DanielRichman has joined #ocaml
<ollehar> ok
<ollehar> manual it is :)
<ollehar> also learning opportunity
<flux> converting records might be a bit annoying, given they are structural (like OCaml's objects)
<ollehar> no records in this code, so np
<ollehar> small type-inference implementation
<ollehar> which I will feed ast from hacklang
thegameg has quit [Quit: Bye bye.]
<ollehar> "some men just want to see the world burn"
jtfmumm has joined #ocaml
<ollehar> or: hack fixed php - now I will fix hack ;)
<Drup> there are tons of type inference implementations in OCaml too
<ollehar> yeah, found some
<ollehar> but this is so easy, so, good starting point
<ollehar> I mean, this one from sml
sailorswift has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<flux> oh, this exists.. https://github.com/ujamjar/hardcaml - compile ocaml? ocaml-like-language? to VHDL, Verilog and C
<Drup> flux: it's more a library to produce vhdl in OCaml
<ollehar> cool
<flux> well that explains it ;-)
<flux> but actually a C generating library for OCaml could be generally useful.. though I guess this is very RTL-oriented.
<Drup> flux: ctypes ? :D
<flux> can ctypes express 'sum'?
<Drup> since recently, yes
<Drup> you mean, enums, right ?
<flux> I mean the concept of let a = b + c :)
<Drup> ah, eh, I guess ?
<flux> I guess the C generated from that wouldn't be a very C way to do it :)
<Drup> eeeh, hardcaml is not made for C
<Drup> so, yeah, it doesn't work ...
<flux> but the advertisement! it says "Convert to VHDL, Verilog, C"
<flux> I guess it's mosty for simulation purposes
<flux> but I can easily see that I would very much prefer to debug this than the similar VHDL: https://github.com/ujamjar/hardcaml-examples/blob/master/src/mul.ml
<flux> or maybe not, I would probably need to have more experience on VHDL to make that judgement :)
hay207 has quit [Ping timeout: 250 seconds]
<ollehar> eh, sml 'o' operator in ocaml?
<ollehar> s2 o s1
<ollehar> s1(s2)
<ollehar> ?
<flux> let (@@) f g x = f (g x)
<ollehar> thanks
<ollehar> sml allows variables with capital letters, like E?
<flux> maybe?-)
<ollehar> :)
jtfmumm has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<ollehar> oh, sml has "null"
<ollehar> maybe this was a bad idea...
<ollehar> ah, no, it's just empty list ^^
jtfmumm has joined #ocaml
MrScout has quit [Ping timeout: 248 seconds]
lordkryss has quit [Quit: Connection closed for inactivity]
lobo has quit [Quit: leaving]
tmtwd has quit [Ping timeout: 246 seconds]
hay207 has joined #ocaml
jtfmumm has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
systmkor has joined #ocaml
Kakadu has quit [Remote host closed the connection]
yomimono has quit [Ping timeout: 264 seconds]
hbar has joined #ocaml
Simn has quit [Quit: Leaving]
Haudegen has quit [Ping timeout: 248 seconds]
sailorswift has joined #ocaml
Haudegen has joined #ocaml
MrScout has joined #ocaml
Haudegen has quit [Ping timeout: 264 seconds]
Denommus has quit [Quit: going home]
yomimono has joined #ocaml
jabesed has quit [Quit: Konversation terminated!]
ollehar has quit [Quit: ollehar]
rand000 has quit [Quit: leaving]
MrScout has quit [Ping timeout: 250 seconds]
sailorswift has quit [Quit: Textual IRC Client: www.textualapp.com]
Haudegen has joined #ocaml
Hannibal_Smith has quit [Quit: Leaving]
dsheets has joined #ocaml