echo-area has quit [Remote host closed the connection]
<dmbaturin>
j0sh: Well, does it? It doesn't let you access all arguments at once.
<dmbaturin>
It looks like a complicated version of "let apply f x = f x" to me.
<dmbaturin>
Unless I'm missing something.
ontologiae has quit [Ping timeout: 264 seconds]
zpe has joined #ocaml
zpe has quit [Ping timeout: 260 seconds]
<j0sh>
dmbaturin: mostly i wanted to be able to manipulate the results after apply before returining
<dmbaturin>
(apply (lambda (x y) (+ x y)) '(1)) ; would complain about bad argument count at runtime.
<j0sh>
with "apply f x = f x" then you're restricted to one parameter for f as far as i can tell
<j0sh>
here, x is basically polymorphic on all the possible arguments of f (if that's the right way to say it... i'm not sure)
<j0sh>
so for f : ('a -> 'b -> 'c), the compiler infers x : ('a -> 'b)
<j0sh>
what's i'm surprised at is that the associativity works, eg "apply f a b c" collapses "a b c" to a single argument
<j0sh>
dmbaturin: in my case i'm not too worried about currying
ontologiae has joined #ocaml
<Drup>
j0sh: no it doesn't
<dmbaturin>
j0sh: (fun f x -> f x) (fun c -> Printf.printf "c %d\n%!" c; c) 123 |> Printf.printf "after: %d\n"
<zozozo>
j0sh: it's not that 'a b c' collapses to one argument
<Drup>
j0sh: the correct way to interpret it is like that : (apply f a) b c
<zozozo>
it's that f a returns (I guess) a function, which takes two arguments which happen to be b and c
<zozozo>
sorry "apply f a", i.e exactly what Drup said
<j0sh>
ah, i see
ollehar has quit [Quit: ollehar]
<j0sh>
and it doesn't work for labels either... sigh
<Drup>
labels work poorly with high order functions
<j0sh>
dmbaturin: you are right. apply f x = f x does work for my example. doh
<j0sh>
or rather, apply f x = let g = f x in g
ncthom91 has joined #ocaml
ryanartecona has quit [Quit: ryanartecona]
<dmbaturin>
j0sh: In what case "f x" and "let g = f x in f" are not equivalent?
<dmbaturin>
* in g
<j0sh>
dmbaturin: they are (i think), i'm just confusing myself. i had some cases where the compiler would only recognize the first argument instead of currying, but that's more likely a PEBKAC issue
<j0sh>
anyway, not working with labels kind of makes all this moot (in my case)
<j0sh>
huh. adding a dummy parameter to the beginning makes it work with labels
<j0sh>
let baz () ~a ~b ... ... apply baz () ~a:"def" ~b:1.0. doesn't work without the unit at the beginning
abbe has quit [Read error: Connection reset by peer]
abbe has joined #ocaml
seako has quit [Read error: Connection reset by peer]
cojy has quit [Read error: Connection reset by peer]
mariusae has quit [Ping timeout: 246 seconds]
pootler has quit [Ping timeout: 246 seconds]
sgnb` has joined #ocaml
yminsky has quit [Read error: Connection reset by peer]
dch has quit [Read error: Connection reset by peer]
oskarth has quit [Read error: Connection reset by peer]
Sorella has quit [Read error: Connection reset by peer]
ggherdov has quit [Write error: Connection reset by peer]
rfv has quit [Read error: Connection reset by peer]
n1ftyn8_ has quit [Read error: Connection reset by peer]
mawuli has quit [Ping timeout: 246 seconds]
edwin has quit [Ping timeout: 246 seconds]
l1x has quit [Write error: Connection reset by peer]
cschneid has quit [Ping timeout: 246 seconds]
sigjuice has quit [Ping timeout: 246 seconds]
bitbckt has quit [Ping timeout: 246 seconds]
alpen has quit [Ping timeout: 246 seconds]
pootler has joined #ocaml
reynir has quit [Read error: Connection reset by peer]
nchambers has quit [Ping timeout: 246 seconds]
flx_ has joined #ocaml
segmond has quit [Ping timeout: 246 seconds]
averell has quit [Ping timeout: 246 seconds]
reynir has joined #ocaml
_habnabit has quit [Ping timeout: 246 seconds]
seako has joined #ocaml
cojy has joined #ocaml
Leonidas has quit [Ping timeout: 246 seconds]
flux has quit [Ping timeout: 246 seconds]
sgnb has quit [Ping timeout: 246 seconds]
flx_ is now known as flux
alpen has joined #ocaml
Leonidas has joined #ocaml
nchambers has joined #ocaml
bitbckt has joined #ocaml
Sorella has joined #ocaml
sigjuice has joined #ocaml
_habnabit has joined #ocaml
edwin has joined #ocaml
segmond has joined #ocaml
cschneid has joined #ocaml
rfv has joined #ocaml
n1ftyn8_ has joined #ocaml
l1x has joined #ocaml
yminsky has joined #ocaml
dch has joined #ocaml
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
oskarth has joined #ocaml
mawuli has joined #ocaml
mariusae has joined #ocaml
FreeBirdLjj has joined #ocaml
ggherdov has joined #ocaml
ontologiae has quit [Ping timeout: 250 seconds]
ncthom91 has joined #ocaml
badon has quit [Quit: Leaving]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
python476 has joined #ocaml
zpe has joined #ocaml
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
zpe has quit [Ping timeout: 264 seconds]
nullcatxxx_ has joined #ocaml
rgrinberg2 has quit [Ping timeout: 240 seconds]
groovy2shoes has quit [Ping timeout: 255 seconds]
rgrinberg2 has joined #ocaml
marynate has joined #ocaml
ceryo has joined #ocaml
marynate has quit [Client Quit]
BitPuffin|osx has quit [Ping timeout: 240 seconds]
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
johnf has joined #ocaml
python476 has quit [Ping timeout: 246 seconds]
ceryo has quit [Ping timeout: 272 seconds]
ncthom91 has joined #ocaml
badon has joined #ocaml
kushal has joined #ocaml
Bahman has joined #ocaml
zpe has joined #ocaml
badon has quit [Disconnected by services]
badon_ has joined #ocaml
badon_ is now known as badon
zpe has quit [Ping timeout: 264 seconds]
shinnya has joined #ocaml
tmtwd has joined #ocaml
govg has quit [Ping timeout: 260 seconds]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
lewis1711 has joined #ocaml
Nahra has quit [Read error: Connection reset by peer]
Nahra has joined #ocaml
darkf has joined #ocaml
MercurialAlchemi has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 244 seconds]
igoroliveira has quit [Quit: Connection closed for inactivity]
mac10688 has quit [Ping timeout: 272 seconds]
psy_ has quit [Remote host closed the connection]
lewis1711 has quit [Ping timeout: 240 seconds]
zpe has joined #ocaml
python476 has joined #ocaml
zpe has quit [Ping timeout: 246 seconds]
ygrek has joined #ocaml
tizoc has quit [Ping timeout: 240 seconds]
tizoc has joined #ocaml
raphaelss has quit [Quit: Leaving]
MercurialAlchemi has joined #ocaml
tmtwd has quit [Ping timeout: 240 seconds]
lewis1711 has joined #ocaml
<lewis1711>
what's the current situation with core and batteries? is batteries pretty solid? having some... disagreements wit core
jgjl has joined #ocaml
iosys has quit [Quit: Leaving]
flx_ has joined #ocaml
pierpa`` has joined #ocaml
mehdi__ has joined #ocaml
n3f has joined #ocaml
NingaLeaf123 has joined #ocaml
darkf_ has joined #ocaml
neferty has quit [Remote host closed the connection]
mawuli has quit [Ping timeout: 448 seconds]
ggherdov has quit [Ping timeout: 448 seconds]
l1x has quit [Ping timeout: 448 seconds]
rfv has quit [Ping timeout: 448 seconds]
Sorella has quit [Ping timeout: 448 seconds]
flux has quit [Ping timeout: 448 seconds]
AltGr has quit [Ping timeout: 448 seconds]
coody has quit [Ping timeout: 448 seconds]
mehdi_ has quit [Write error: Broken pipe]
lpaste has quit [Read error: Connection reset by peer]
boegel has quit [Write error: Connection reset by peer]
flx_ is now known as flux
coody has joined #ocaml
mawuli has joined #ocaml
rgrinberg2 has quit [Ping timeout: 250 seconds]
boegel has joined #ocaml
darkf has quit [Ping timeout: 258 seconds]
pierpa` has quit [Ping timeout: 258 seconds]
NingaLeaf has quit [Ping timeout: 258 seconds]
lpaste_ has joined #ocaml
l1x has joined #ocaml
rfv has joined #ocaml
Sorella has joined #ocaml
<Leonidas>
j0sh: nice!
kushal has quit [Quit: Leaving]
<Leonidas>
lewis1711: batteries seems rather dead, or "mature" if you prefer that word. not many updates happening lately
<lewis1711>
yeah, mature suits me just fine. a std lib (or a stdlib replacement) doesn't have to be changing at a break neck pace IMO
<companion_cube>
there's an upcoming release, there's been a burst of activity
<lewis1711>
core makes some really weird decisions, and the doc is fairly bad
<lewis1711>
one I've come across recently is in their Stack implementation, they no longer have the Error exception
<lewis1711>
pop_exn just throws a generic exception
<companion_cube>
I think Core has a nice design overall, but it's very large and not compatible with stdlib
<lewis1711>
that seems like an awful design choice over me. Looks like hashtabl has thier own exceptions though
<lewis1711>
probably an oversight
<lewis1711>
I do like the fact there are option versions as well though
ggherdov has joined #ocaml
<companion_cube>
yeah, the find / find_exn idiom is nice
<Leonidas>
I overall like the design
<Leonidas>
I just don't like that Async is incompatible with Lwt -.-
AltGr has joined #ocaml
<flux>
I wonder (again) if the perhaps upcoming effect system will cause yet-another concurrency framework to appear.. perhaps building upon the Thread module.
<flux>
it would at least be an opportunity to do it right.. ;-)
<flux>
and in a manner that is nice for everyone! yeah, right..
Haudegen has quit [Ping timeout: 240 seconds]
eni has quit [Ping timeout: 252 seconds]
teknozulu_ has joined #ocaml
<teknozulu_>
Running ocamldumpobj on a freshly generated cmo gives "Not an object file"
<teknozulu_>
any ideas?
<teknozulu_>
(The ml is just "let () = print_string "hello world" ")
Haudegen has joined #ocaml
zpe has joined #ocaml
<flux>
teknozulu_, is the ocamlc and ocamlobjdump the same version? do you compile with (ie.) ocamlc -c foo.ml ?
zpe has quit [Read error: Connection reset by peer]
zpe has joined #ocaml
<teknozulu_>
yeah thats what i compiled with. i don't know how to find the version of ocamldumpobj (it doesnt have a version flag of any sort)
darkf_ is now known as darkf
sh0t has joined #ocaml
coody has quit [Quit: Connection closed for inactivity]
moei has quit [Ping timeout: 250 seconds]
moei has joined #ocaml
sepp2k has joined #ocaml
sh0t has quit [Ping timeout: 276 seconds]
teknozulu_ has quit [Ping timeout: 276 seconds]
aantron has quit [Remote host closed the connection]
julienXX has joined #ocaml
ygrek has quit [Ping timeout: 265 seconds]
freehck has joined #ocaml
Kakadu has joined #ocaml
igstan has joined #ocaml
igstan has quit [Client Quit]
MercurialAlchemi has quit [Ping timeout: 272 seconds]
<dmbaturin>
freehck: Ah, if you are building packages, that's another story indeed.
<thizanne>
because they use (or know people that use) windows, and because other people insist on linux
<Leonidas>
nothing works properly on windows and ocaml in windows is a complete disaster
<thizanne>
isn't is precisely why people insist ?
<Leonidas>
its like insisting things should work on DOS 6.22 :p
<freehck>
Wait, what?! Doesn't Ocaml work fine with Windows?!
<freehck>
Sooo, I can forget about the dream to write an opengl game with ocaml?
<Leonidas>
freehck: not it you want ctypes or compile c modules or "complicated" things like this.
<freehck>
Leonidas: Is the problem with CFFI only?
Bahman has quit [Ping timeout: 276 seconds]
<Leonidas>
C modules kinda work, but you have to be really careful what compiler you use your ocaml with.
<Leonidas>
*you build your ocaml with
<dmbaturin>
>Hacker News; >two years old post; Something looks wrong here. :)
<freehck>
Leonidas: What if I use GCC?
<freehck>
under Windows I mean.
<Leonidas>
freehck: then I hope you don't want to use libraries compiled with MSVC.
<Leonidas>
I think the best option is to build ocaml with MSVC
<freehck>
I won't.
^elyse^ has joined #ocaml
<Leonidas>
and hope all OCaml libraries you want to use compile with it. OCaml itself is completely fine though.
ryanartecona has quit [Quit: ryanartecona]
<Leonidas>
but getting ctypes to work proved to be quite impossible for me.
<freehck>
Phew... I've just thought that I have to use CL instead of Ocaml. :)
<Leonidas>
maybe this has changed in the last 6 months.
<Leonidas>
freehck: heh, no worries :-)
<dsheets>
Leonidas, using libffi or stub gen?
<Leonidas>
dsheets: libffi I believe.
<Leonidas>
this was a real issue for us, since LLVM started to use ctypes
<Leonidas>
(not that the llvm bindings were ever officially available for windows before, so not realla a regression, but you could build them by hand and they worked just fine)
<Leonidas>
sorry I am raging so much, but I was working on stuff for quite some time and everytime somebody said "it must work on windows" this caused ridiculous amounts of pain
<Leonidas>
compared to the look of horror when you tell a web developer "it has to work in IE6"
<dsheets>
if you have the stomach for it, I'd love to hear how ctypes stubgen works on windows
<edwin>
I don't use windows myself so besides trying ocaml on windows once I haven't contributed much there unfortunately
<dsheets>
I'm doing my 3rd and 4th ctypes stubgen libs atm so I'm going to try to get a nice template published to get started with it (maybe 300 lines of build boilerplate :-()
<Leonidas>
dsheets: sorry, I changed jobs now and don't have to care about windows anymore.
<Leonidas>
which is not to say that I don't like ctypes, au contraire, it seemed to me to be quite a bit nicer than python ctypes even.
<Leonidas>
this "harder to hire people" rhetoric is coming from people who apparenty have never hired anyone for such a job
<Leonidas>
using functional programming has made hiring easier for my company at least :-)
ryanartecona has joined #ocaml
dsheets has quit [Ping timeout: 250 seconds]
chkaryst has quit [Quit: Page closed]
ncthom91 has joined #ocaml
<dmbaturin>
Leonidas: I'd like to hear about your experience with hiring FP people.
<dmbaturin>
A blog post would be nice.
<Leonidas>
dmbaturin: sounds good, we recently set up an engineering blog, so that might be a good topic to discuss.
s1n4 has joined #ocaml
s1n4 has quit [Client Quit]
<dmbaturin>
Leonidas: What software did you use for the blog by the way?
fleaswallow has joined #ocaml
<dmbaturin>
I'm looking for something to move my blague to.
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
dsheets has joined #ocaml
<Leonidas>
dmbaturin: we used cryogen along with some patches, since we mostly use Clojure.
<Leonidas>
can't recommend octopress which I still have for my personal blog
flxx has quit [Quit: leaving]
tmtwd has quit [Remote host closed the connection]
<companion_cube>
pelican is pretty ok
aantron has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 240 seconds]
<dmbaturin>
Leonidas: Can it produce per-category/per-tag RSS feeds?
<freehck>
Hey-ho. We need to compile 1 (ONE) file in order to build leveldb.1.1.0.
<freehck>
Do you know how do opam script do it? I'll tell you! "omake -j9"! :)
<Leonidas>
dmbaturin: looks like it, from reading the source.
<Enjolras>
freehck: better to be future proof
<Leonidas>
freehck: isn't it omake -j<number_of_cores> or something?
<Leonidas>
oh no, it really is hardcoded
* Leonidas
:D
<freehck>
I'll email to the author about it.
<Enjolras>
"hey, i have 64 cores with HT. Could you change it to -j128 ?"
<Leonidas>
freehck: you could just talk to vbmithr
<freehck>
I thought to write to the maintainer: mfp@acm.org.
<freehck>
Ok, I'll Cc: vbmithr
<Leonidas>
you could to that as well. or even easier, you could just make a PR
<Enjolras>
or you could just don't care. Because it has absolutly no effect
<Leonidas>
or that.
^elyse^ has quit [Quit: Leaving]
<Leonidas>
I do like the idea of changing it to 128 for future releases though
<mfp>
erm hello, what's the problem here?
<freehck>
wow! mfp! :)
<dmbaturin>
Leonidas: Going to try that. Clojure is the sort of lisp I like (along with Scheme). Most generators I've seen so far can't do separate feeds properly, but if I want to have it added to planet.ocaml.org I kinda have to do it.
<freehck>
mfp: I've just found that you lebeldb is build with "omake -j9", and it is for exactly 1 file.
* mfp
brb
<freehck>
mfp: Just notice that -j9 is not needed and that's all.
<reynir>
I wish I had more cores
<Leonidas>
dmbaturin: for the record, octopress works properly (one of my feeds is on Planet Clojure, so I had the same usecase)
<mfp>
freehck: OK, I think we can live with it :-) (not going to bother the OPAM repos people for this, since it has no effect whatsoever)
<freehck>
mfp: +1 :)
<Leonidas>
mfp: just wondering, why this curious number?
<mfp>
Leonidas: no deep reason really, I had a codebase where -j9 was faster than e.g. -j8, and it became an habit (why not -jNN, because longer to type :)
<mfp>
or iow. muscle memory
<dmbaturin>
Leonidas: Why you can't recommend it though?
<Enjolras>
doesn't omake support "-j" ?
<Enjolras>
bmake works with -j, which is usually a good idea, it scales with the number of cores of the calling platform
<Enjolras>
(i mean just -j, not -jX)
<mfp>
*** omake fatal error: Option -j requires an argument
<Enjolras>
:/
zpe has quit [Remote host closed the connection]
<Leonidas>
dmbaturin: it is really slow, poorly maintained, needs not obly ruby but also nodejs nowadays and messes with your blogpost (I had to patch it so it didn't force some typographic changes on my code listings).
<dmbaturin>
Leonidas: Wow, nodejs for a static website generator? I guess I don't want it.
<dmbaturin>
In any case I'm not a fan of ruby.
<Leonidas>
dmbaturin: yes, I uninstalled node and suddenly it broke
<Leonidas>
dmbaturin: same. so that's why i wouldn't use it anymore.
<Leonidas>
But it has a really nice theme and so far I am too lazy to migrate away
<GooseYArd>
i was reading about some single-binary static blog generator last week but've forgotten its name
<GooseYArd>
i had the same problem with octopress that you guys are describing
<GooseYArd>
i should write a unix purist version with gnu m4
<GooseYArd>
ehehe
slash^ has joined #ocaml
<Leonidas>
if it's single binary, 95% that it's in go
<dmbaturin>
Oh, I've seen this one, but I don't want Go.
<GooseYArd>
yeah my guess is its got just as many dependencies in the end
<Leonidas>
GooseYArd: GNU m4 is not Unix purist, you need BSD m4 for that.
<GooseYArd>
it seems these days the simpler the job of the program, the greater the number of dependencies of the various open implementations
<dmbaturin>
I was seriously thinking of making a new generator in ocaml, but I decided to evaluate existing options first. :)
<Leonidas>
in GNU m4 you can reconfigure the string terminators to be the same, which doesn't work in classic m4 ;-)
<GooseYArd>
Leonidas: I'm not a masochist
<GooseYArd>
ehehe
<Leonidas>
dmbaturin: there is also hakyll.
<Leonidas>
GooseYArd: I am, and I generated manpages for my friends using m4 :p
<GooseYArd>
i want my blog posts to be sexprs
<GooseYArd>
oh hah there's an idea
<GooseYArd>
nroff as the next generation web publishing framework
<Leonidas>
(basically, I needed a template engine for the annoying busywork and m4 was the only thing I could think off that would be installed by default)
<freehck>
Leonidas: No, we just use an old OCS library with modules written specifically by us for us.
<Leonidas>
edwin: thanks, that looks very useful
<edwin>
there were also some plugins that allowed you to write your blogposts in markdown and use pandoc to convert I think. I'm not a fan of writing things in XML :)
<freehck>
Leonidas: you know, we're going to publish it soon. I'm so waiting this moment! :)
<Leonidas>
didn't know felix was written in OCaml
<Leonidas>
but these days everything is.
<freehck>
Leonidas: I suppose felix is another language. :)
<freehck>
OCS is just an ocaml repo of the github user felix-lang. :)
<freehck>
okay, gonna go home
<freehck>
bb
MercurialAlchemi has joined #ocaml
<edwin>
interesting, would it be possible to run emacs on this (given that there will be a GuileEmacs) :)
jeffmo has joined #ocaml
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
zpe has quit [Remote host closed the connection]
octachron has quit [Quit: Leaving]
ncthom91 has joined #ocaml
ncthom91 has quit [Client Quit]
tvaalen has quit [Ping timeout: 272 seconds]
mort___ has quit [Ping timeout: 246 seconds]
tvaalen has joined #ocaml
ncthom91 has joined #ocaml
psy_ has joined #ocaml
ryanartecona has joined #ocaml
tane has joined #ocaml
nullcatxxx_ has joined #ocaml
govg has joined #ocaml
Nahra has quit [Read error: Connection reset by peer]
srcerer_ is now known as srcerer
tane has quit [Remote host closed the connection]
jwatzman|work has joined #ocaml
shinnya has quit [Ping timeout: 265 seconds]
ollehar has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
badon_ has joined #ocaml
badon has quit [Disconnected by services]
badon_ is now known as badon
zpe has joined #ocaml
jonludlam has quit [Ping timeout: 260 seconds]
jwatzman|work has joined #ocaml
<Drup>
MercurialAlchemi: I'm really curious, what is an "IDE workflow" if it's not merlin ?
nullcatxxx_ has joined #ocaml
<companion_cube>
maybe something with a debugguer
tane has joined #ocaml
<j0sh>
is there some way of taking an optional argument with type ?f:('a -> 'b) and assigning it a default that evaluates to ('a -> 'a) ? eg, ?(f = fun x -> x) the compiler then tries to enforce ?f:('a -> 'a) for all further invocations, which i don't want
<j0sh>
i tried using locally abstract types with [type a b . a -> b] but then the compiler complained that a != b in the default
<ggole>
That doesn't seem sound.
<j0sh>
is there another way of accomplishing something similar?
<def`>
j0sh: not possible, you have to pass id manuallt
<ggole>
No wait, I guess it's OK... hmm
<def`>
A gadt with an Id constructor
<j0sh>
hmm, okay
<def`>
what you want is not parametric
<j0sh>
what do you mean?
<def`>
try to give a type to your function from the outside
<def`>
it would need to expose the fact that if no argument is giben, a = b, but not necessarily otherwise
<def`>
given*
<j0sh>
something like type fun_t = ('a -> 'b) ... ?f:fun_t ?
<def`>
fun_t being?
<def`>
(What I said about gadts is probably wrong, I don't see how it solves the problem)
^elyse^ has joined #ocaml
<def`>
(basically, the caller would need to know about the default value to type the definition)
jeffmo_ has joined #ocaml
jeffmo has quit [Ping timeout: 255 seconds]
jeffmo_ is now known as jeffmo
<j0sh>
fun_t being ('a -> 'b) but i just tried, doesn't seem to help
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<j0sh>
i guess the issue is that the output of f should be polymorphic, and the output type of the default value is one possibility of many
<Drup>
the feature that I don't like in IDEs, so yeah, I'm not competent to talk about that.
<MercurialAlchemi>
I don't really care about that, but if you tell Visual Studio people "install vim and merlin, it's just like Visual Studio", they're going to go into shock
<Drup>
I see what you mean
<MercurialAlchemi>
of course you could argue that IDE-centrism leads to "everything needs to be machine-readable and clickable" and XML everywhere
<Drup>
well, no, my issue is more "my terminal works just fine and has more features"
<Drup>
(to create projects and launch webservers, in particular)
<MercurialAlchemi>
I live in a terminal too
<MercurialAlchemi>
it's just that most people don't
<Drup>
I have worked with people creating projects that can't build outside of eclipse, never again
<MercurialAlchemi>
(also, project-wide rename *does* go beyond what you can do via terminal)
<reynir>
Can you rename variables/functions with merlin or similar?
<MercurialAlchemi>
works only in your local file
<Drup>
locally, not (yet) globally
<MercurialAlchemi>
but I don't see anybody in the community interested in either building or using an IDE
<Drup>
yeah
<def`>
MercurialAlchemi: I surely want to improve "semantics" feature
<def`>
but not in the direction of (what's referred to as) IDEs
<MercurialAlchemi>
or wanting to go within one light-year of the Eclipse codebase, which would be a somewhat sensible choice if your proclivities went that way
<reynir>
How do you rename locally :o
<MercurialAlchemi>
well, I think the fact that OPAM still doesn't work on Windows kind of speaks for how GUI-dependent the OCaml community is
<Drup>
MercurialAlchemi: note that there are ocaml IDEs too, but nobody is interested by using them :)à
<MercurialAlchemi>
yeah, I think you have a Haskell IDE somewhere that probably requires human sacrifices to build, and the one FP complete made
<companion_cube>
but it's only local renaming
<reynir>
Cool!
<Drup>
MercurialAlchemi: I don't think this one is hard to build
<companion_cube>
wow, I need to force myself to backlog
<Drup>
just that people are not interested
BitPuffin has quit [Ping timeout: 240 seconds]
<MercurialAlchemi>
it's funny in a way, because with you'd think that a HM language would comparably be an easy target
<Drup>
why ?
<Drup>
(not that those IDEs never had merlin-like thing, just the rest of the IDE features)
<MercurialAlchemi>
I'd imagine you have a lot less ambiguity when it comes to stuff like completion
Haudegen has quit [Ping timeout: 260 seconds]
<MercurialAlchemi>
but that's not the biggest problem I suppose
rgrinberg2 has quit [Ping timeout: 272 seconds]
_andre has quit [Quit: leaving]
^elyse^ has quit [Quit: Leaving]
<MercurialAlchemi>
Drup: that said, your note about people who can't build without Eclipse is pretty sad
<Drup>
(tbf, it was the university)
<MercurialAlchemi>
well, I'm sure you'll find a number of professional developpers in the same situation
<MercurialAlchemi>
(of course it's even better on Windows because you're not really supposed to leave the holy Visual Studio)
* reynir
saw a guy open a C file in Word at university
<MercurialAlchemi>
ah, a Word programmer
<MercurialAlchemi>
I heard people were editing HTML in notepad, back in the day where it had only one level of undo
<MercurialAlchemi>
(actually, it may still have, I don't know)
<dmbaturin>
Drup: Not that IDE-bound projects don't happen in production.
<MercurialAlchemi>
all kind of gory things happen in production
Haudegen has joined #ocaml
darkf has quit [Quit: Leaving]
badon has quit [Disconnected by services]
badon_ has joined #ocaml
badon_ is now known as badon
_miachel has joined #ocaml
<edwin>
for C I don't like using IDEs either (survived just fine with Vim), and for OCaml merlin provides what I need so far for writing code. I like how its editor independent so I get same features in Vim and Emacs (and I actually started to learn emacs because of that). Perhaps the only thing missing right now is easy access to documentation, and I'm waiting for codoc to be ready for that
<flux>
rtags has been a life-saver with C.. :)
<MercurialAlchemi>
one nice to have in merlin would be "you don't use this import/variable" warning
<MercurialAlchemi>
followed by the "let me clean that up for you" command
<_miachel>
I have a function that throws exception, but it is cought somewhere that doesn't print or show anything. I could not track where the exception is cought. Is there any way to track such a thing?
<flux>
yeah, it's not difficult to end up with useless stuff when refactoring code
<edwin>
warning 33?
<flux>
edwin, well, modules or module aliases for instance aren't ever marked unused, are they?
<flux>
_miachel, so something catches the exception?
<_miachel>
I guess so, as I am sure I am raising an exception, but program does not terminate, and function doesn't continue from that point
<flux>
I guess it's a bit tricky.. is it the only exception being thrown? if so, perhaps gdb could point out the place by breakpointing some throw function..
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<flux>
_miachel, so you know about where it's being thrown?
Kakadu has joined #ocaml
<_miachel>
Yes
<edwin>
hmm module (aliases) could be needed by other modules, something to be determined at link time probably
<flux>
_miachel, why not wrap that particular function in a try f () with exn -> Printexc.print_backtrace stdout; assert false ?
<edwin>
or if you have a .mli that doesn't export those internal modules
<_miachel>
that is a good idea, thanks!
<flux>
_miachel, happy debugging :)
<_miachel>
thanks mate :)
nullcatxxx_ has joined #ocaml
nullcatxxx_ has quit [Client Quit]
badon has quit [Ping timeout: 250 seconds]
<Drup>
MercurialAlchemi: that's already a compiler warning
<Drup>
except if you mean project wide, but merlin doesn't do any project wide things anyway
nullcatxxx_ has joined #ocaml
<MercurialAlchemi>
Drup: no doubt, but I want that in vim :)
<Drup>
well, yeah, you can enable the compiler warning in merlin ...
<MercurialAlchemi>
ah, good point
<MercurialAlchemi>
should be on per default :)
sepp2k has quit [Quit: Leaving.]
gganley has joined #ocaml
ollehar has quit [Ping timeout: 252 seconds]
mort___ has joined #ocaml
dsheets has quit [Ping timeout: 240 seconds]
mort___ has quit [Client Quit]
tane has quit [Quit: Verlassend]
raphaelss has joined #ocaml
shinnya has joined #ocaml
ryanartecona has joined #ocaml
larhat has joined #ocaml
mort___ has joined #ocaml
Lis has joined #ocaml
rgrinberg2 has joined #ocaml
gganley has quit [Ping timeout: 240 seconds]
ryanartecona has quit [Quit: ryanartecona]
nullcatxxx_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
nullcatxxx_ has joined #ocaml
johnf_ has joined #ocaml
apache2_ has joined #ocaml
NingaLeaf has joined #ocaml
nullcatxxx_ has quit [Client Quit]
apache2 has quit [Remote host closed the connection]
ggole has quit []
djellemah_ has joined #ocaml
NingaLeaf123 has quit [Ping timeout: 240 seconds]
johnf has quit [Ping timeout: 240 seconds]
djellemah has quit [Ping timeout: 260 seconds]
freehck has quit [Remote host closed the connection]
djellemah_ is now known as djellemah
ollehar has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
BitPuffin has quit [Remote host closed the connection]
ryanartecona has joined #ocaml
mort___ has quit [Quit: Leaving.]
Simn has quit [Quit: Leaving]
<ollehar>
hm, how come no struct operation in the LLVM ocaml api returns a value?
<ollehar>
or "llvalue"
<ollehar>
only lltype is returned.
MercurialAlchemi has quit [Ping timeout: 240 seconds]
Nahra has joined #ocaml
<flux>
hmm, dunno, but if you're generating code, do you really have values available.. ?
teknozulu has joined #ocaml
python476 has quit [Ping timeout: 246 seconds]
jeffmo has quit [Quit: jeffmo]
<ollehar>
flux: yes
<ollehar>
ugh
<ollehar>
maybe just build an alloca for the type...
ryanartecona has quit [Quit: ryanartecona]
yegods has joined #ocaml
mac10688 has joined #ocaml
ygrek has quit [Ping timeout: 260 seconds]
ddosia has quit [Quit: Connection closed for inactivity]
psy_ has joined #ocaml
truncate is now known as vishesh
nullcatxxx_ has joined #ocaml
yegods has quit []
ontologiae has joined #ocaml
nullcatx_ has joined #ocaml
nullcatx_ has quit [Client Quit]
Nahra` has joined #ocaml
ontologiae has quit [Ping timeout: 240 seconds]
struk|desk2 has joined #ocaml
theblatte has quit [Ping timeout: 265 seconds]
mahem1 has quit [Ping timeout: 265 seconds]
struk|desk has quit [Ping timeout: 265 seconds]
mahem1_ has joined #ocaml
theblatte has joined #ocaml
jave has quit [Ping timeout: 265 seconds]
w1gz has quit [Ping timeout: 265 seconds]
zaquest has quit [Ping timeout: 265 seconds]
gustav___ has quit [Ping timeout: 265 seconds]
nullcatxxx_ has quit [Ping timeout: 265 seconds]
Nahra has quit [Ping timeout: 265 seconds]
tumdum_ has quit [Ping timeout: 265 seconds]
gustav___ has joined #ocaml
jwatzman|work has quit [Quit: jwatzman|work]
yaewa has joined #ocaml
orbitz has joined #ocaml
tumdum has joined #ocaml
mthom` has joined #ocaml
Enjolras_ has joined #ocaml
jave has joined #ocaml
Maelan_ has joined #ocaml
cross_ has joined #ocaml
pippijn_ has joined #ocaml
flasheater has joined #ocaml
Mike57 has quit [Ping timeout: 260 seconds]
Mike57 has joined #ocaml
aantron has quit [*.net *.split]
moei has quit [*.net *.split]
Enjolras has quit [*.net *.split]
orbitz_ has quit [*.net *.split]
pippijn has quit [*.net *.split]
tokenrove has quit [*.net *.split]
vishesh has quit [*.net *.split]
cross has quit [*.net *.split]
Maelan has quit [*.net *.split]
mthom has quit [*.net *.split]
bugabinga has quit [*.net *.split]
mal`` has quit [*.net *.split]
Maelan_ is now known as Maelan
mal`` has joined #ocaml
tokenrove has joined #ocaml
ryanartecona has joined #ocaml
zaquest has joined #ocaml
w1gz has joined #ocaml
vishesh has joined #ocaml
struk|work has quit [Quit: Page closed]
ygrek has joined #ocaml
Nahra` has quit [Remote host closed the connection]
Nahra`` has joined #ocaml
ollehar has quit [Ping timeout: 252 seconds]
Kakadu has quit [Remote host closed the connection]
badon has joined #ocaml
<j0sh>
is there no way for two (polymorphic) locally abstract types to be equivalent to each other?
<def`>
if a type is abstract, how can it be polymorphic?
<def`>
but asserting equally of local abstract types is the main purpose of GADTs
<def`>
(as well as introducing existential types)
ollehar has joined #ocaml
ollehar has quit [Client Quit]
Nahra`` has quit [Read error: Connection reset by peer]
Nahra`` has joined #ocaml
cross_ has quit [Remote host closed the connection]
pkrnj has joined #ocaml
<j0sh>
def`: hmm, okay. i'm not totally comfortable with the distinction between polymorphic and abstract types, that's probably where some of my difficulty is coming in