ChanServ changed the topic of #ocaml to: Discussions about the OCaml programming language | http://www.ocaml.org | OCaml 4.02.1 announcement at http://ocaml.org/releases/4.02.html | Public channel logs at http://irclog.whitequark.org/ocaml
<nuki> maybe
<nuki> ocamlfind ocamlopt -package compiler-libs.common -linkpkg src/ppx_no_test.ml -o bin/ppx_no_test.native
<nuki> findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /usr/lib/ocaml, /usr/lib/ocaml/compiler-libs
<nuki> Ok
<nuki> just reinstlal ocamlfind :)
<nuki> Thanks perfect (no more @@@ocaml.ppx.content) !
bytbox has quit [Ping timeout: 264 seconds]
bytbox has joined #ocaml
malo has quit [Remote host closed the connection]
rgrinberg has joined #ocaml
ygrek has joined #ocaml
kdef has quit [Quit: peace]
dmiles_afk has joined #ocaml
ygrek has quit [Ping timeout: 245 seconds]
kakadu has quit [Remote host closed the connection]
madroach has quit [Ping timeout: 250 seconds]
madroach has joined #ocaml
<struktured> I'm still trying to figure out the best way to publish ocaml project documentation on the web..is there some connection between the opam repo and automatic documentation publishing?
<struktured> to be clear, I mean the docs generated via ocamldoc from the source code
<whitequark> it publishes the docs to whitequark.github.io/ppx_deriving
<struktured> whitequark: hm that's not bad at all, although I don't have any custom makefiles at the moment.
<struktured> I could use script it and run when I tag
<struktured> *just
<whitequark> yes
avsm has quit [Quit: Leaving.]
ygrek has joined #ocaml
natrium1970 has joined #ocaml
<natrium1970> I’ve seen a few instances where someone discourages using the Stream module, but I can’t find any specific raitonale for that. Any ideas?
waneck_ has joined #ocaml
<whitequark> Drup: where was your Stream writeup? can't find it on mantis
waneck has quit [Ping timeout: 245 seconds]
hugomg has quit [Ping timeout: 250 seconds]
ygrek has quit [Ping timeout: 250 seconds]
chambart has joined #ocaml
ljs has joined #ocaml
_JokerDoom has joined #ocaml
JokerDoom has quit [Ping timeout: 264 seconds]
HrafnA has quit [Quit: HrafnA]
struktured has quit [Ping timeout: 258 seconds]
<joncfoo> this question must come up a lot but: how do I abstain from having to declare types in both .mli & .ml files?
<natrium1970> One of the ansers on stachexchange was that it’s impossible sometimes.
<Drup> the other answer is to use ppx_import ^^'
<Drup> (the third answer is to move your types to a type-only module)
<Drup> (this is a quite common solution)
<natrium1970> Re: Streams. I really don’t need the full functionality that the module provides. My needs are simple enough that I can write it myself. I was just trying to avoid reinventing the wheel.
<whitequark> natrium1970: opam install gen
<joncfoo> type only module. hmm, so then I'd do an include from any .ml file where I need it?
<Drup> open, not include.
<joncfoo> ah righ
<joncfoo> thanks
<whitequark> Drup: wow
<Drup> ?
<whitequark> I pulled a few seconds before github delivered mail about that PR
<whitequark> for a moment I wondered how come the change is already there
<Drup> Well, it's obvious
<Drup> I traveled through time to apply the patch
<Drup> duh.
<whitequark> of course
<Drup> :D
WraithM has quit [Remote host closed the connection]
<Drup> I won't merge the next ones as fast :)
<whitequark> I'm only really interested in 109
travisbrady has joined #ocaml
JokerDoom has joined #ocaml
Tamae has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
_JokerDoom has quit [Ping timeout: 244 seconds]
q66 has quit [Quit: Leaving]
shinnya has quit [Ping timeout: 256 seconds]
<joncfoo> I've got type foo = { x:string } in bar.mli & bar.ml. In crux.ml I'm trying to access foo.x & I get warnings about "It is not visible in the current scope..."
<joncfoo> how do y'all deal with this?
<Drup> I personally don't and disable this warning, but some disagree >_>
<joncfoo> would declaring a module called Type in bar.mli & sticking foo={...} in there work? along with open Bar.Type in crux.ml?
<whitequark> that's one way to do it, although ugly
<joncfoo> what would you recommend?
<whitequark> disabling the warning
<joncfoo> haha, really? is that what most people do?
<whitequark> why not?
<Drup> a bit of context about this warning may be needed: the desambiguation is a recent feature but some people find it dangerous (the compile guess what the field by looking through module boundaries) so it was decided to add an enabled-by-default warning
<joncfoo> I suppose the compiler will halt if it really runs into some disambiguity
<Drup> I personally consider this feature perfectly fine.
<whitequark> of course
MrScout_ has joined #ocaml
<joncfoo> gotcha
<joncfoo> so basically turn off warnings 40 & 42
MrScout has quit [Ping timeout: 272 seconds]
MrScout_ has quit [Ping timeout: 240 seconds]
rand000 has quit [Quit: leaving]
darkf has joined #ocaml
travisbrady has quit [Quit: travisbrady]
SomeDamnBody has joined #ocaml
antegallya has quit [Ping timeout: 265 seconds]
darkf has quit [Ping timeout: 258 seconds]
ljs has quit [Quit: None]
darkf has joined #ocaml
darkf has quit [Changing host]
darkf has joined #ocaml
chambart has quit [Ping timeout: 244 seconds]
lordkryss has quit [Quit: Connection closed for inactivity]
rgrinberg has quit [Quit: Leaving.]
ontologiae has quit [Ping timeout: 245 seconds]
mcc has joined #ocaml
mcc has quit [Quit: This computer has gone to sleep]
natrium1970 has left #ocaml [#ocaml]
manud has quit [Quit: Be back later ...]
kapil__ has joined #ocaml
mcc has joined #ocaml
btbytes has joined #ocaml
nojb has joined #ocaml
joncfoo has quit [Ping timeout: 264 seconds]
nullcat has joined #ocaml
<nullcat> has any one signed up HackerRank's functional programming contest? https://www.hackerrank.com/lambda-calculi-9
<whitequark> the domain suggests it could be something incredibly vain.
natrium1970 has joined #ocaml
<natrium1970> When I copy text from a book book source and paste into utop, I get complaints about the encoding, and it just doesn’t work. Pasting into TexstEdit.app works fine (in the sense that the text appears correct). Is there some way on Mac to copy from PDF and paste into utop?
<whitequark> encoding?
<whitequark> oh, it probably has non-breaking spaces or something
<natrium1970> Things like “type ‘a t” turn into “type a?? t”
<natrium1970> Oops turns into “type a??a t"
<whitequark> right, the quotes
<whitequark> the book is broken.
<whitequark> it should put ' (apostrophe) in the field where PDF stores copyable text
<natrium1970> This is from the book on the caml.inria.fr site. http://caml.inria.fr/pub/docs/oreilly-book/ocaml-ora-book.pdf
<nojb> if val f = fun x y -> …, does currying (f x) allocate anything ?
<whitequark> yes
<whitequark> two words, to be specific
<whitequark> I mean, you have to put x somewhere.
<nojb> sure - just checking :)
<nojb> thanks
<whitequark> sorry, three words I think. caml_curry1, x, f
<natrium1970> It seems like most documents in PDF format use right single quotation mark instead of apostrophe!
<whitequark> it can even still appear the same, just copy correctly.
<whitequark> incompetent publishers *shrug*
<natrium1970> utop really should accept that as a synonym.
<whitequark> no, it should not
<natrium1970> *every* place I’m looking in PDF format does
<whitequark> complain to the publisher.
<natrium1970> Even Garrigue’s paper on polymorphic variants does it.
<whitequark> changing language syntax because someone else can't use their tools correctly is absurd.
<whitequark> it actually copies as complete garbage for me
<whitequark> garrigue's paper.
nicoo has quit [Ping timeout: 250 seconds]
<natrium1970> That paper’s code doesn’t paste into utop correctly, but it does paste intto my text editor., but it retains the single right quote instead of the apostrophe.
<whitequark> it doesn't paste into my text editor as well (on linux via okular)
<natrium1970> Ah. There’s an HTML version of the O’Reilly book, and it does use apostrophe. I wonder what the original document text was written in.
__w_a_n_e_c_k__ has joined #ocaml
waneck_ has quit [Ping timeout: 264 seconds]
rgrinberg has joined #ocaml
natrium1970 has quit [Quit: natrium1970]
<rgrinberg> Drup: ocsigen benchmarks spotted in the wild :D http://slides.com/maximsokhatsky/n2o#/7
<whitequark> and it is literally worst
nicoo has joined #ocaml
<rgrinberg> whitequark: there has to be a better way to spin that
<whitequark> well, you could add ruby to the benchmark.
<rgrinberg> good idea. reminds of the old joke
<rgrinberg> Q: When Nixon visited Moscow, he and Khrushchev had a race around the Kremlin. Nixon came the first. How should our media report on that?
<rgrinberg> A: As follows: In the international running competition the General Secretary of the Communist Party took the honorable second place, while President Nixon came in next to last.
<whitequark> lol
nojb has quit [Quit: nojb]
nojb has joined #ocaml
AlexRussia has quit [Ping timeout: 255 seconds]
mcc has quit [Quit: This computer has gone to sleep]
AlexRussia has joined #ocaml
samrat has joined #ocaml
<nullcat> lol
Submarine has joined #ocaml
nojb has quit [Quit: nojb]
<MercurialAlchemi> let g:netrw_dirhistmax =10
<MercurialAlchemi> let g:netrw_dirhist_cnt =1
<MercurialAlchemi> let g:netrw_dirhist_1='/home/emm/src/ocaml/driver'
<MercurialAlchemi> grmbl
ontologiae has joined #ocaml
kapil__ has quit [Quit: Connection closed for inactivity]
AlexRussia has quit [Quit: WeeChat 1.1-dev]
topherB has quit [Quit: topherB]
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ygrek has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
ingsoc has joined #ocaml
nullcat has joined #ocaml
kapil__ has joined #ocaml
Arsenik has joined #ocaml
ollehar has joined #ocaml
lordkryss has joined #ocaml
nullcat has quit [Quit: Textual IRC Client: www.textualapp.com]
ygrek has quit [Ping timeout: 240 seconds]
Submarine has quit [Remote host closed the connection]
Anarchos has joined #ocaml
manud has joined #ocaml
kakadu has joined #ocaml
SomeDamnBody has left #ocaml ["Leaving"]
arj has joined #ocaml
pgas has joined #ocaml
<whitequark> gasche: I just discovered I can subscribe you to any mantis issues I want. (probably as a side effect as someone marking me a developer on mantis, for whatever reason.) So I will now use that to triage.
<adrien> evil :P
<whitequark> but effective (as many evil things are)
dav has quit [Ping timeout: 250 seconds]
dav has joined #ocaml
struktured has joined #ocaml
<companion_cube> :_
<companion_cube> :)
manud has quit [Quit: Be back later ...]
<nicoo> :D
<gasche> whitequark: I asked Damien to give you mantis rights months ago
<gasche> (arond the this-poor-folk-volunteers-to-write-ppx-documentation episode)
<gasche> (in the same vein, companion_cube has commit rights to Batteries)
<whitequark> ohh, right
<whitequark> anyway, I wrote five patches today and will write three more
NT__ has joined #ocaml
<gasche> I've seen that
<whitequark> this [@@ocaml.warning] hole is VERY deep
<whitequark> it looks completely trivial.
<NT__> I'm having an issue with Core.
<NT__> I did the usual opam install utop core
<gasche> as a general rule, I don't work on caml during the week, so your triaged bugs will wait
<whitequark> hm, ok
<gasche> (you were lucky twice by submitting PRs right during boring meetings)
<NT__> But now I get a syntax error whenever I run "open Core.Std;;"
<NT__> Any help guys?
<gasche> NT__: we need a complete example and the precise error message
<gasche> (they need; I'm off on teaching duty)
<NT__> I don't know why it's doing that.
<MercurialAlchemi> thatt's not a syntax error
<NT__> Oh okay.
<MercurialAlchemi> #require "core";;
<MercurialAlchemi> or something
<MercurialAlchemi> never used the original toplevel
<NT__> MercurialAlchemi: Okay, so I get an error saying "Unknown directive `require'."
<MercurialAlchemi> utop is much better
<NT__> Fine, let me load utop and see.
<flux> #use "topfind";; first
<flux> usually folks something to that effect in their ~/.ocamlinit
<whitequark> utop needs #require "core";; but not #use "topfind";;
matason has joined #ocaml
<NT__> flux: Where do I find the ~/.ocamlinit file?
<flux> ~ is your home directory :)
<flux> so it probably doesn't exist, you need to make it
<flux> though as whitequark said, with utop you don't need it for that purpose
<NT__> Okay, this is confusing.
<MercurialAlchemi> just use utop :)
<NT__> Okay, got it to work.
<NT__> I had to create my own .ocamlinit file.
<NT__> Thanks guys :D
elfring_ has joined #ocaml
elfring_ has quit [Client Quit]
elfring has joined #ocaml
ggole has joined #ocaml
manud has joined #ocaml
keen___________7 has joined #ocaml
keen___________6 has quit [Ping timeout: 255 seconds]
NT__ has quit [Ping timeout: 246 seconds]
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
nullcat has joined #ocaml
MangeurFrites02 has joined #ocaml
larhat has quit [Quit: Leaving.]
<MangeurFrites02> Salut, y a quelqu'un?
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
MangeurFrites02 has quit [Remote host closed the connection]
ygrek has joined #ocaml
thomasga has joined #ocaml
Yoric has joined #ocaml
Yoric_ has joined #ocaml
Yoric has quit [Ping timeout: 244 seconds]
dav has quit [Ping timeout: 245 seconds]
_andre has joined #ocaml
dav has joined #ocaml
chambart has joined #ocaml
axiles has joined #ocaml
Simn has joined #ocaml
_5kg has quit [Ping timeout: 240 seconds]
_5kg has joined #ocaml
dav has quit [Ping timeout: 250 seconds]
nuki has quit [Quit: ChatZilla 0.9.91 [Iceweasel 31.1.0/20140903072827]]
dav has joined #ocaml
badon_ has joined #ocaml
badon has quit [Disconnected by services]
badon_ is now known as badon
larhat has joined #ocaml
ingsoc has quit [Ping timeout: 272 seconds]
<companion_cube> oasis experts: is there a reasonable to give options to ocamldoc? like, -dot
eizodo has joined #ocaml
Anarchos has joined #ocaml
<whitequark> yes
<companion_cube> do you have an example? or link?
jonludlam has joined #ocaml
_5kg has quit [Ping timeout: 265 seconds]
<whitequark> yes
arj has quit [Ping timeout: 250 seconds]
antegallya has joined #ocaml
ygrek has quit [Ping timeout: 264 seconds]
manud has quit [Quit: Be back later ...]
Yoric_ has quit [Remote host closed the connection]
nojb has joined #ocaml
Yoric has joined #ocaml
<companion_cube> :(
<whitequark> what's wrong?
Yoric_ has joined #ocaml
antegallya has quit [Ping timeout: 250 seconds]
<companion_cube> I'd like the example/link, please
Yoric has quit [Ping timeout: 244 seconds]
<whitequark> oh
nojb has quit [Quit: nojb]
arj has joined #ocaml
IbnFirnas has quit [Read error: Connection reset by peer]
IbnFirnas has joined #ocaml
<Drup> rgrinberg: outch, but I'm not surprised
arj has quit [Ping timeout: 240 seconds]
<Drup> (this presentation is so broken)
<Drup> I mean, literally nobody spend time optimizing ocsigen. It's enough for normal use cases, but it's not a high-performance server.
ingsoc has joined #ocaml
<Drup> whitequark: the pdf copy pasting issue is not a publisher problem
<Drup> it's a latex problem.
<whitequark> well, yes, whoever *published* that through latex did it wrong
<Drup> well, it's the default latex way to do things.
<whitequark> and it's broken.
mort___ has joined #ocaml
<Drup> that's not really a surprise :)
<Drup> did you just discovered it ? :p
bezirg has joined #ocaml
antegallya has joined #ocaml
<whitequark> no
<whitequark> I think some of latexes (xelatex?) fixes it
_5kg has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
arj has joined #ocaml
lu324 has quit [Ping timeout: 240 seconds]
samrat has quit [Quit: Computer has gone to sleep.]
antegallya has quit [Ping timeout: 258 seconds]
arj has quit [Ping timeout: 265 seconds]
antegallya has joined #ocaml
_5kg has quit [Ping timeout: 264 seconds]
bezirg has quit [Quit: Leaving.]
hugomg has joined #ocaml
malc_ has joined #ocaml
<companion_cube> ah, thanks whitequark
<companion_cube> forgot about this ocamlbuild_more_args
ebzzry_ has quit [Remote host closed the connection]
antegallya has quit [Ping timeout: 258 seconds]
ontologiae has quit [Ping timeout: 255 seconds]
arj has joined #ocaml
axiles has quit [Ping timeout: 244 seconds]
antegallya has joined #ocaml
ygu has joined #ocaml
btbytes has left #ocaml [#ocaml]
axiles has joined #ocaml
_5kg has joined #ocaml
<companion_cube> http://vrac.cedeela.fr/deps.svg <--- the dependency graph of contains
<companion_cube> containers
ontologiae has joined #ocaml
<whitequark> that's completely unreadable
<companion_cube> the point is: it's almost flat
luigy has quit [Ping timeout: 244 seconds]
kakadu has quit [Remote host closed the connection]
relrod has quit [Ping timeout: 255 seconds]
mfp has quit [Ping timeout: 255 seconds]
mfp has joined #ocaml
relrod_ has joined #ocaml
luigy has joined #ocaml
_5kg has quit [Ping timeout: 256 seconds]
tane has joined #ocaml
<ygu> Does someone know about htcaml ? When I try to compile, I get: "While finding quotation "html" in a position of "expr": There is no quotation expander available. Camlp4: Uncaught exception: Not_found"
rand000 has joined #ocaml
seangrov` has joined #ocaml
<MercurialAlchemi> ygu: this? https://github.com/samoht/htcaml
seangrove has quit [Ping timeout: 265 seconds]
eizodo has quit [Quit: Page closed]
psy_ has quit [Read error: Connection reset by peer]
matason has quit [Ping timeout: 265 seconds]
hugomg has quit [Ping timeout: 272 seconds]
nojb has joined #ocaml
tharugrim has quit [Ping timeout: 272 seconds]
<ygu> MercurialAlchemi: yes, I'm trying to compile some code, but I get the given error.
_5kg has joined #ocaml
<pyon> I have a "class virtual ['a] foo". Can foo have a method that returns an object that inherits foo?
tharugrim has joined #ocaml
kapil__ has quit [Quit: Connection closed for inactivity]
hugomg has joined #ocaml
ebzzry has joined #ocaml
_5kg has quit [Ping timeout: 272 seconds]
arj has quit [Quit: Leaving.]
<Drup> companion_cube: you can probably format it a bit better :]
Yoric has joined #ocaml
Yoric_ has quit [Remote host closed the connection]
samrat has joined #ocaml
<Anarchos> pyon not sure : you have to implement the 'a type variable
kapil__ has joined #ocaml
<companion_cube> Drup: probably, yeah
<companion_cube> but it does the job
<MercurialAlchemi> ygu: it's possibly bitrotten
<MercurialAlchemi> but someone with more calmp4 knowledge may be able to help
<whitequark> gasche: can you explain exact meaning of /* testing the code region is needed: PR#1554 */ in backtrace.c?
<whitequark> you added it in 2013, with a reference to obscure bug from 2003 which explicitly says "a backtrace bug which i will not discuss"
<whitequark> so clear, much helpful^W^W^W^W
<whitequark> I understand what the code does (checking for inbound access), but not why it is needed, and the bug does not either.
matason has joined #ocaml
BitPuffin has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 244 seconds]
samrat has quit [Quit: Computer has gone to sleep.]
_5kg has joined #ocaml
antegallya has quit [Quit: Leaving.]
antegallya has joined #ocaml
antegallya has quit [Ping timeout: 250 seconds]
joncfoo has joined #ocaml
lordkryss has quit [Quit: Connection closed for inactivity]
samrat has joined #ocaml
avsm has joined #ocaml
JokerDoom has quit [Ping timeout: 245 seconds]
samrat has quit [Client Quit]
JokerDoom has joined #ocaml
davine has joined #ocaml
davine has left #ocaml [#ocaml]
<whitequark> sigh
<whitequark> caml_intern_alloc_ accepts out_of_heap, promptly ignores it #yolo
<adrien> old API?
<whitequark> doesn't seem so
<whitequark> oh
<whitequark> nevermind, partially applied patch
mcclurmc has joined #ocaml
ollehar has quit [Quit: ollehar]
JokerDoom has quit [Ping timeout: 245 seconds]
joncfoo has quit [Ping timeout: 264 seconds]
JokerDoom has joined #ocaml
<Leonidas> whitequark: what is the best way to malloc memory that I can point GenericValue to?
<whitequark> um, calling malloc?
<Leonidas> whitequark: from ocaml, that is.
<whitequark> calling malloc using ctypes?
<Leonidas> whitequark: I thought about this too, but I'd like to go without external dependencies until we upgrade to 3.6.
<whitequark> then give up
<Leonidas> I could write a c stub that does just that, but meeeeh.
samrat has joined #ocaml
<Leonidas> ctypes has allocate, which looks quite like what I want
<Leonidas> just not the proper type
travisbrady has joined #ocaml
<whitequark> hum, you can cast it
<whitequark> or you can just bind malloc, it's exact same thing
travisbrady has quit [Client Quit]
Arsenik has quit [Ping timeout: 250 seconds]
travisbrady has joined #ocaml
AlexRussia has joined #ocaml
<Leonidas> stupid question, but how would I cast an 'a Ctypes.ptr to Llvm_executionengine.GenericValue.t?
<whitequark> wait, wait
<whitequark> GenericValue?
<whitequark> you're using the old API.
<whitequark> you can't lol
<Leonidas> yes, unfortunately
<whitequark> well, you can sorta do it in a horrible way
<Leonidas> did I mention that llvm.moe is one of my favorite domains lately? :)
<Leonidas> horrible is ok, this module is just awful and will have to be rewritten from scratch when we migrate to 3.6
<whitequark> well
<whitequark> convert it to int
<whitequark> (nativeint)
<whitequark> and make an LLVM function that takes int and casts it to a pointer.
<whitequark> aaaalternatively, write a C stub that returns 'a and pass it to to_pointer directly.
<whitequark> either works.
nojb has quit [Quit: nojb]
<Leonidas> yes, I think I'll take the C stub route
badkins has joined #ocaml
avsm has quit [Quit: Leaving.]
AlexRussia has quit [Ping timeout: 258 seconds]
darkf has quit [Quit: Leaving]
AlexRussia has joined #ocaml
badkins_ has joined #ocaml
badkins has quit [Ping timeout: 256 seconds]
badkins has joined #ocaml
badkins_ has quit [Ping timeout: 264 seconds]
<Leonidas> whitequark: if I have an lltype, I can use Llvm.size_of to get the size as llvalue, but how can I get out the actual number (probably as nativeint)?
<whitequark> you need to use TargetMachine
<Leonidas> hmm, what exactly of TargetMachine?
shinnya has joined #ocaml
<Leonidas> ahh! Alright
<companion_cube> Leonidas: what are you compiling again?
<whitequark> it's actually an API of TargetMachine.
<whitequark> it's in DataLayout because (crappy) reasons
<whitequark> hmm, or maybe not, I don't remember
Submarine has quit [Ping timeout: 240 seconds]
Submarine has joined #ocaml
kapil__ has quit [Quit: Connection closed for inactivity]
<Leonidas> companion_cube: we have a custom compiler that allows running unit tests which is done basically by taking the compiler output, loading it into llvm and executing the test functions.
<companion_cube> sounds... violent
<whitequark> ... violent?
<whitequark> I assure you this is not how violence looks.
<whitequark> I *know*.
<Leonidas> not the cleanest design *cough* but not my fault, done by someone else who moved on. I have to extend this with some features.
AlexRussia has quit [Ping timeout: 250 seconds]
<Leonidas> I could rewrite this completely at some point, but I rather get it working in some way now and worry about how to fix the whole design later.
AlexRussia has joined #ocaml
Plazma has quit [Changing host]
Plazma has joined #ocaml
HrafnA has joined #ocaml
MercurialAlchemi has joined #ocaml
samrat has quit [Quit: Computer has gone to sleep.]
Arsenik has joined #ocaml
slash^ has joined #ocaml
_JokerDoom has joined #ocaml
JokerDoom has quit [Ping timeout: 258 seconds]
Yoric has quit [Remote host closed the connection]
samrat has joined #ocaml
Yoric has joined #ocaml
WraithM has joined #ocaml
<Leonidas> whitequark: when I return a i8* from an LLVM function and use GenericValue.as_nativeint, this should get me the value of the pointer as integer, right?
<whitequark> either that or assert
<Leonidas> I'm asking this stupid question, because in the function I print it and it is nonzero, but when I use as_nativeint, I get a zero
<whitequark> hmmm
<whitequark> yeah, then it doesn't work properly.
<whitequark> I don't know the GenericValue API.
<Leonidas> how likely is it that it is broken? I'm beginning to question my sanity :(
<whitequark> likely.
<whitequark> I mean, it's known to be broken for all but basic usage.
Remyzorg has quit [Quit: WeeChat 1.0.1]
<whitequark> maybe it's broken for basic usage too. that code hasn't been touched in years.
<Leonidas> ok.
bytbox has quit [Read error: Connection reset by peer]
bytbox has joined #ocaml
octachron has joined #ocaml
nojb has joined #ocaml
axiles has quit [Ping timeout: 264 seconds]
axiles has joined #ocaml
nullcat has joined #ocaml
sheijk has joined #ocaml
shinnya has quit [Ping timeout: 250 seconds]
jonludlam has quit [Ping timeout: 245 seconds]
mcclurmc has quit [Remote host closed the connection]
mcclurmc has joined #ocaml
Hannibal_Smith has joined #ocaml
Plazma has quit [Changing host]
Plazma has joined #ocaml
avsm has joined #ocaml
tharugrim has quit [Ping timeout: 244 seconds]
tharugrim has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
Yoric has quit [Remote host closed the connection]
Yoric has joined #ocaml
mcclurmc has joined #ocaml
avsm has quit [Quit: Leaving.]
robink has quit [Remote host closed the connection]
Yoric has quit [Ping timeout: 244 seconds]
psy has joined #ocaml
robink has joined #ocaml
sheijk has quit [Quit: .]
travisbrady has quit [Quit: travisbrady]
mcclurmc has quit [Remote host closed the connection]
octachron has quit [Quit: Leaving]
travisbrady has joined #ocaml
q66 has joined #ocaml
chambart has quit [Ping timeout: 272 seconds]
matason has quit [Ping timeout: 250 seconds]
englishm_ is now known as englishm
polazarus has joined #ocaml
englishm has quit [Changing host]
englishm has joined #ocaml
mcclurmc has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
ontologiae has quit [Ping timeout: 264 seconds]
rgrinberg has joined #ocaml
travisbrady has quit [Quit: travisbrady]
psy has quit [Disconnected by services]
psy_ has joined #ocaml
MrScout has joined #ocaml
larhat has quit [Quit: Leaving.]
dmiles_afk has quit [Ping timeout: 245 seconds]
mort___ has quit [Ping timeout: 272 seconds]
ocamlnoob has joined #ocaml
NoNNaN has joined #ocaml
<ocamlnoob> Hello! As a complete noob, what all should I install to get started? I have installed opam and then switched to ocaml 4.02. Do I need utop? Any other libs which would be beneficial and used by others on a regular basis?
dmiles_afk has joined #ocaml
<ggole> ocamlnoob: you don't *need* utop, but feel free to install it and play around.
<ocamlnoob> ggole: Which repl should I install?
<vbmithr> utop
<vbmithr> it's not as if you have much choice :p
<ggole> It's utop or the plain toplevel, up to you
<ggole> More important to start programming imo
<ocamlnoob> ggole: I agree. But having a good repl does help a lot. :)
<ocamlnoob> What other libs do you recommend
<ggole> I use the plain toplevel from within emacs
<ggole> And... it's kind of terrible, actually
<ocamlnoob> :)
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<ggole> What sort of development are you interested in?
<ocamlnoob> ggole: Learning ocaml. I am coming from Python world and just want to try my hands at ocaml. In Python, I would always install 'requests' library. I was wondering if their are any such essential and helpful libraries that all ocaml programmers tend to install
<ggole> There are a couple of (largish) stdlib replacements
<tokenrove> ocamlnoob: if you're working from emacs, it's worth getting merlin setup as well. speaking as someone who recently came back to ocaml development from a long hiatus, one thing i noticed is that there are a couple of alternative standard libraries that are worth considering.
<ggole> That's Core and Batteries.
<ocamlnoob> Core from Jane Street, right?
<ggole> Yep.
<ocamlnoob> ok. So merlin, utop, core, batteries. Unless I am doing any specialized dev, this should be what is recommended to have then.
<def`> (ocp-indent)
<rgrinberg> ocamlnoob: RWO should have this info as well
<rgrinberg> although it doesn't really present options. Just tells you what to do
<ocamlnoob> rgrinberg: RWO?
dmiles_afk has quit [Ping timeout: 256 seconds]
<englishm> ocamlnoob: realworldocaml.org
<ocamlnoob> Cool
<ocamlnoob> Thanks a lot people!
<tokenrove> have fun!
<englishm> ocamlnoob: this page in particular has instructions for getting set up: https://github.com/realworldocaml/book/wiki/Installation-Instructions
__w_a_n_e_c_k__ is now known as waneck
<ocamlnoob> englishm: I was going through that too. Thanks buddy
dmiles_afk has joined #ocaml
relrod_ is now known as relrod
MrScout_ has joined #ocaml
MrScout_ has quit [Read error: Connection reset by peer]
MrScout_ has joined #ocaml
MrScout_ has quit [Remote host closed the connection]
MrScout_ has joined #ocaml
MrScout has quit [Ping timeout: 258 seconds]
matason has joined #ocaml
MrScout_ has quit [Read error: Connection reset by peer]
MrScout has joined #ocaml
BitPuffin has quit [Ping timeout: 256 seconds]
MrScout has quit [Read error: Connection reset by peer]
MrScout has joined #ocaml
MrScout has quit [Remote host closed the connection]
seangrov` has quit [Read error: Connection reset by peer]
__JokerDoom has joined #ocaml
MrScout has joined #ocaml
dinosaure2 has joined #ocaml
andreypopp__ has joined #ocaml
matason has quit [Ping timeout: 245 seconds]
gdsfh1 has joined #ocaml
jlouis_ has joined #ocaml
jcloud_ has joined #ocaml
art-w_ has joined #ocaml
fraggle__ has joined #ocaml
Snark_ has joined #ocaml
cartwright has joined #ocaml
Anarchos has quit [Ping timeout: 244 seconds]
jlouis has quit [Ping timeout: 244 seconds]
dinosaure1 has quit [Ping timeout: 244 seconds]
Rebelion has quit [Ping timeout: 244 seconds]
cantstanya has quit [Ping timeout: 244 seconds]
art-w has quit [Ping timeout: 244 seconds]
gdsfh has quit [Ping timeout: 244 seconds]
jcloud has quit [Ping timeout: 244 seconds]
Snark has quit [Ping timeout: 244 seconds]
_JokerDoom has quit [Ping timeout: 244 seconds]
Simn has quit [Ping timeout: 244 seconds]
kalzz has quit [Ping timeout: 244 seconds]
fraggle_ has quit [Ping timeout: 244 seconds]
andreypopp_ has quit [Ping timeout: 244 seconds]
SHODAN has quit [Ping timeout: 244 seconds]
Simn has joined #ocaml
MrScout has quit [Ping timeout: 260 seconds]
SHODAN has joined #ocaml
Rebelion has joined #ocaml
kalzz has joined #ocaml
Anarchos has joined #ocaml
jcloud_ is now known as jcloud
andreypopp__ is now known as andreypopp_
appd has joined #ocaml
dav has quit [Ping timeout: 245 seconds]
appd has quit [Client Quit]
dav has joined #ocaml
appd has joined #ocaml
kakadu has joined #ocaml
<flux> flambda - new optimization pass for OCaml: https://github.com/ocaml/ocaml/pull/132
<companion_cube> yep
<flux> slower compilation times?-)
<flux> but no worries, ocaml can afford it!
<Drup> you can always compile to bytecode if you want fast compilation time :)
<companion_cube> well, maybe there'll be an -O flag
<flux> well, maybe that's one feature ocaml is lacking from c++
<flux> horrendous compilation times
<ggole> Great! That one has been a while in the making.
ocamlnoob has quit [Quit: Page closed]
travisbrady has joined #ocaml
rgrinberg has quit [Quit: Leaving.]
_andre has quit [Quit: leaving]
MrScout has joined #ocaml
tani has joined #ocaml
mcclurmc has joined #ocaml
jwatzman|work has joined #ocaml
tane has quit [Ping timeout: 245 seconds]
mcclurmc has quit [Remote host closed the connection]
larhat has joined #ocaml
travisbrady has quit [Quit: travisbrady]
samrat has quit [Quit: Computer has gone to sleep.]
travisbrady has joined #ocaml
mcclurmc has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
rgrinberg has joined #ocaml
MrScout has quit [Remote host closed the connection]
MrScout has joined #ocaml
mcclurmc has joined #ocaml
polazarus has quit [Quit: Page closed]
MrScout has quit [Ping timeout: 258 seconds]
Yoric has joined #ocaml
ggole has quit []
rand000 has quit [Ping timeout: 240 seconds]
travisbrady has quit [Quit: travisbrady]
travisbrady has joined #ocaml
Yoric has quit [Remote host closed the connection]
Yoric has joined #ocaml
Yoric has quit [Remote host closed the connection]
shinnya has joined #ocaml
thomasga has quit [Quit: Leaving.]
<travisbrady> Does anyone know if ppx_deriving_yojson is compatible with core? In utop this line “type x = Hi | Bye [@@deriving yojson];;” works normally but if I do “#require “core”;;” then it breaks
<travisbrady> with Error: Parse error: ";;" expected after [str_item] (in [top_phrase])
nojb has quit [Quit: nojb]
<rgrinberg> travisbrady: ppx isn't compatible with camlp4
<rgrinberg> which I think #require "core" could pull in
<travisbrady> Does that mean a project with a dep that uses camlp4 won’t work at all with ppx?
davine has joined #ocaml
<flux> it means a single compilation unit cannot use both ppx and campl4 extensions
davine has left #ocaml [#ocaml]
<travisbrady> Many of my projects use between ~3-12 libraries, so the presence of camlp4 is likely
<flux> so technically it doesn't depend at all what its dependencies depend on
thomasga has joined #ocaml
<flux> but in this case it has been configured that requiring core will also require the camlp4 syntax extension
<flux> but you don't need the camlp4 syntax extension for using core
<flux> well, based on what I know about core, I haven't actually used it
<flux> but I doubt the syntax extensions it provides are really -required-
<travisbrady> flux: thank you. So if I’d like to use ppx I need to find a way to use Core sans the camlp4 bits?
<flux> yes
<flux> probably you can find its META file
<flux> and the META file has part with 'syntax'
<flux> remove that part and it works
<flux> perhaps there is some more elegant way
<Drup> you shouldn't even need that
mcclurmc has quit [Remote host closed the connection]
<Drup> I think someone got the issue ( struktured ?) and fixed it
<Drup> so that core should not load camlp4
<travisbrady> hmmm, I’m on the latest version of core (112.06.00) at least as far as opam is concerned
<companion_cube> why the hell does core_bench depend on core
mcclurmc has joined #ocaml
<rgrinberg> companion_cube: youd' think they use their stdlib replacement pervasively
<rgrinberg> is it problematic?
<companion_cube> well, it only makes me not wanting to touch any of their libs
nojb has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
<rgrinberg> why? core_bench is mostly used as an app. dependencies shouldn't matter
<rgrinberg> luckily for you however, there's alternatives
<rgrinberg> :)
<companion_cube> indeed
<companion_cube> I'm happy with benchmark :p
<companion_cube> at least type_conv doesn't pull core
<companion_cube> (have to install it for oasis)
<Drup> since type_conv is used inside core, that would be slightly backward
<companion_cube> one never knows
chambart has joined #ocaml
<companion_cube> o/ chambart
<travisbrady> rgrinberg: have you given any thought to ppx_deriving_yojson for opium?
<rgrinberg> travisbrady: i got rid of cow precisely for that
<rgrinberg> although the json response helper currently uses the jsonm by default
<smondet> travisbrady: have you tried the same thing with the normal/vintage ocaml toplevel? I think utop loads camlp4, so when you #require "core" the syntax extensions get in use
<companion_cube> yeah, it's not clear how to combine ppx_deriving and jsonm right now
<travisbrady> smondet: ahh, I have not. I’ll give that a go
<Drup> smondet: utop doesn't load camlp4 by default
<Drup> except if you tell him to
<smondet> or maybe it is somewhere in a .ocamlinit file?
<Drup> that's quite possible, if you are following RWO :)
Submarine has quit [Remote host closed the connection]
<struktured> Drup: my PR for pa_test got merged in but I don't think pa_test got released yet
<Drup> ok
<travisbrady> smondet: that worked!
rand000 has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
<rgrinberg> why does yojson have these strange ifdef's https://github.com/mjambon/yojson/blob/master/type.ml#L7
chambart has quit [Ping timeout: 258 seconds]
mcclurmc has joined #ocaml
<companion_cube> I suppose it's for avoiding duplication of code between Yojson.Basic and Yojson.Safe
<flux> :)
rgrinberg has quit [Read error: Connection reset by peer]
rgrinberg has joined #ocaml
<companion_cube> Martin Jambon is the creator of cppo, after all
malc_ has quit [Quit: leaving]
<rgrinberg> i wish there was an easy way to support jsonm and yojson together :/
mcclurmc has quit [Remote host closed the connection]
<companion_cube> yep :/
<companion_cube> maybe something like ezjsonm supporting Yojson.Safe.t
<rgrinberg> what's funny is that they both use polymorphic variants for "compatibility"
<rgrinberg> i suppose they meant compatibility in theory rather in practice :D
<companion_cube> well, it works well for [`Error of string | `Ok of 'a]
<Drup> rgrinberg: no, it means people can be compatible with them, not that they are trying to be compatible with others :wink wink:
<rgrinberg> *sigh*
mcclurmc has joined #ocaml
<smondet> it also means you can create compatbility without dependency: you can use jsonm in your lib and provide a function that transforms to a type equal to yojson.basic.t without dependending on the library
<companion_cube> indeed
<rgrinberg> Drup: maybe i can implement some dynlink based register for json writers
<rgrinberg> borrowing a design from a certain project
<rgrinberg> :D
<Drup> krkr x)
nojb has quit [Quit: nojb]
<Drup> it's going to end so well.
<companion_cube> Drup: can you confirm that dynlink plugins cannot have dependencies themselves?
antegallya has joined #ocaml
<Drup> sure they can
<Drup> oh, maybe you mean that you should -linkall
<Drup> then "yes, probably, I don't know shit about dynlinks technicals"
<smondet> companion_cube: you can use findlib to follow dependencies
<companion_cube> eww
<smondet> but you need to know your own deps to not load them twice is the plugin shares them
<smondet> s/is/if/
<icicled> does there exist a http types library?
<icicled> something that is generic enough to work with that is not tied to a particular implemtnation of a http server?
struktured has quit [Ping timeout: 258 seconds]
<rgrinberg> icicled: cohttp
nojb has joined #ocaml
nojb has quit [Client Quit]
badkins has quit [Read error: Connection reset by peer]
<icicled> thanks
struktured has joined #ocaml
antegallya has quit [Ping timeout: 240 seconds]
chambart has joined #ocaml
nojb has joined #ocaml
Arsenik has quit [Remote host closed the connection]
rgrinberg1 has joined #ocaml
rgrinberg has quit [Read error: Connection reset by peer]
nojb has quit [Client Quit]
<travisbrady> companion_cube: can you share the results of that script? I’m curious but not able to run at the moment
struktured has quit [Ping timeout: 250 seconds]
jwatzman|work has quit [Read error: Connection reset by peer]
jwatzman|work has joined #ocaml
<companion_cube> http://paste.isomorphis.me/jlK for the diff in clambda
<companion_cube> chambart: what are those new "blocks" in the produced clambda?
Intensity has joined #ocaml
badkins has joined #ocaml
<smondet> companion_cube: impressive! you should maybe post that on the PR (?)
<chambart> companion_cube, a lot more things can end up as a constant
<chambart> i'm not sure of what is happening in that example, I just quickly looked at the clambda.
<chambart> what are you testing ?
struktured has joined #ocaml
<companion_cube> it's a composition of Sequence combinators
<companion_cube> it's really a toy bench, truly
<companion_cube> to see whether inlining could do something of those useless "map"s
<chambart> It will depend on the size mainly.
<companion_cube> (the code is in the above script)
<chambart> I won't answer to you in the following minutes, I have milk cooking
<companion_cube> :)
<companion_cube> sure
matason has joined #ocaml
Yoric has joined #ocaml
MrScout has joined #ocaml
antegallya has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
travisbrady has quit [Quit: travisbrady]
mcclurmc has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
<Drup> TIL there is a "cam-compiler-hacking" mailing list.
<smondet> ("cam" for cambridge BTW)
<Drup> oooh
<Drup> not for caml
<Drup> this explains it
<Drup> sort of
matason has quit [Ping timeout: 250 seconds]
pothepanda has joined #ocaml
axiles has quit [Ping timeout: 245 seconds]
axiles has joined #ocaml
elfring has quit [Quit: Konversation terminated!]
<companion_cube> Drup: it's hosted on lists.ocaml.org apparently
mcclurmc has joined #ocaml
tani has quit [Quit: Verlassend]
MrScout_ has joined #ocaml
MrScout has quit [Ping timeout: 255 seconds]
rgrinberg1 has quit [Quit: Leaving.]
MrScout_ has quit [Ping timeout: 258 seconds]
kakadu has quit [Quit: Konversation terminated!]
MrScout has joined #ocaml
Hannibal_Smith has quit [Quit: Leaving]
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
jonludlam has joined #ocaml
travisbrady has joined #ocaml
Yoric has quit [Remote host closed the connection]
Yoric has joined #ocaml
Anarchos has joined #ocaml
araujo has quit [Ping timeout: 272 seconds]
araujo has joined #ocaml
Yoric has quit [Ping timeout: 272 seconds]
rgrinberg has joined #ocaml
jonludlam has quit [Quit: Coyote finally caught me]
jonludlam has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
MrScout has quit [Remote host closed the connection]
chambart has quit [Ping timeout: 256 seconds]
MrScout has joined #ocaml
AltGr has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]