* orbitz
is considering making a curated OPAM repository. I don't think I have the skill to actually do it correctly but maybe it would inspire someone else
marynate has quit [Client Quit]
laughing-octo-sh has quit [Ping timeout: 256 seconds]
<companion_cube>
orbitz: curated by whom/to which end?
<Drup>
(also: opam bundle)
ebzzry has joined #ocaml
<adrien_znc>
"versions"
<orbitz>
companion_cube: Curated based on a set of library design principles (TBD). And curated by me, I suppose.
<adrien_znc>
and no, each new git commit doesn't need to be promoted to a new version
<orbitz>
Roughhly the suckless.org of Ocaml (for me).
reem has quit [Remote host closed the connection]
<adrien_znc>
arhiezorhgdflnvcxi$hqfsdcx
<adrien_znc>
sorry
<adrien_znc>
I get that reaction every time suckless is mentioned
<companion_cube>
orbitz: erratique.ch
<adrien_znc>
that really started after I got to read sta.li
<adrien_znc>
a bit after the LD_AUDIT issue in glibc
<Drup>
orbitz: and why do you need to make it an opam repository ?
<orbitz>
As I said, I doubt my ability to actually pull it off well but I'm becoming a bit dissasisfied with the sprawlingness in the main repo
<Drup>
it sounds like a set of packages you will do and that will be Yet Another Almost Closed Ecosystem
<orbitz>
Drup: because that's the most logical unit
<orbitz>
Drup: yes, that's the entire point
<orbitz>
to not let stuff that doesn't fit the design rquiremetns in
<Drup>
closed ecosystems are crape
<Drup>
crap*
<orbitz>
No they aren't.
<orbitz>
Walled Gardens are, but an ecosystem that gives users a consistent experience are positive
<companion_cube>
I think we discussed informally of a voting system, and I didn't convince other people it would be cool
<orbitz>
This is roughly what I thought Ocaml Platform was meant to do. BUt I think Platform is too afraid to make decisions.
<orbitz>
voting on what/
<companion_cube>
well, a system for users to vote for/against(?) packages, so packages that work well have a high balance of votes
<adrien_znc>
you want versions maintained for stability
<orbitz>
companion_cube: I agree with a lot of what Daniel does, so prolific.
<orbitz>
adrien_znc: yep
reem has joined #ocaml
<orbitz>
companion_cube: I think votign is wrong here. I don't want ademocracy I want clarity
<companion_cube>
:D
<companion_cube>
another possibility is that anyone could have an overlay of blessed packages, a kind of mask/filter
<Drup>
orbitz: by curiosity, what are your "design principles" ?
<orbitz>
companion_cube: which is what I'm suggesting
<orbitz>
Drup: (TBD)
<Drup>
you must have an idea ...
<orbitz>
Very much like Core except small repos
<Drup>
so not like Core at all
<orbitz>
on top of taht I want to pick Lwt or Async and only have packages that support that in there
ontologiae_ has joined #ocaml
<orbitz>
I like the API design of core
<orbitz>
I don't like the layout of theactual library
<orbitz>
It's very consistent, it's just a mess otherwise (IMO)
<Drup>
I'm not sure to see the point of an isolated repository
<companion_cube>
I'd like an overlay without camlp4, but really, it's more emotional than rationnal
<orbitz>
Well, yesterday I decided I wanted to build a web service
<orbitz>
Currently in Ocaml it's a mess of decisison
<companion_cube>
did you look at opium ?
<Drup>
no it's not
ggole has joined #ocaml
<orbitz>
Yes it is
<Drup>
there are 3 choices, cohttp, opium, ocsigen
<Drup>
by order of size
<orbitz>
Cohttp is 2 decisison, Lwt or Async
<companion_cube>
isn't there a fourth one?
<orbitz>
Don't forget ocamlnet
<orbitz>
which is neither lwt or async
<Drup>
orbitz: I do forget ocamlnet, intentionally
<orbitz>
yo ucan't, it's in opam
<orbitz>
and it 's a hit for "http"
<Drup>
I can, because I'm giving you an advice :)
<orbitz>
So you can't tell me it's not a mess when you're explicilty leaving out the parts that make it a mess
reem has quit [Remote host closed the connection]
<Drup>
I never said it was not a mess
<orbitz>
But let's say I chosoe Cohttp. Lwt or Async? And do I use Core or Battaries or ExtLib or ??
<companion_cube>
well, welcome to free software
<Drup>
I said that your solution is worse.
<companion_cube>
:D
<orbitz>
companion_cube: I know, it sucks.
<companion_cube>
Drup: that's what RWO did: choose a well defined subset of the ecosystem
<MercurialAlchemi>
orbitz: compared to the question of "choose a small ruby web framework", it's simple
<orbitz>
I don't see why m ydecision is worse
<companion_cube>
orbitz: I like not having to use Core (or batteries) if I don't want to
<orbitz>
EVeryone chosoes RoR
<Drup>
companion_cube: yeah, and even if I don't agree with the actual choice they made, it's very sensible
<orbitz>
companion_cube: so do I
<MercurialAlchemi>
orbitz: doesn't qualify as "small"
<orbitz>
MercurialAlchemi: Ok, but everyone in Ruby picks RoR
<orbitz>
if you need small you got advanced problems and are hopefully capable of making the decision
<orbitz>
So currently we hav a plurarlity of options, my idea (not new by any stretch) is to cut down the options to ones that fit a certain level of consistency (TBD). If you don't like it, that's fine, I'm not keeping the rest of teh ecosystem from you.
<companion_cube>
I kind of agree with orbitz, in fact
<companion_cube>
I'd like to know which parts of opam are in a style I like
<companion_cube>
especially when there are several solutions to one problem
<orbitz>
So right now, I hve a set of design principlse. If I want to make a web service I hav ea lot of options and none of their principles are necessarily clear to me. At least if you agree with my curated library you can trust it and if you don't, you at least know what you don't want.
<Drup>
companion_cube: reversed dependencies ?
<companion_cube>
Drup: what do you mean?
<Drup>
for lwt/async, it works well.
<orbitz>
companion_cube: exactly! I think it's really hard to build such a repository but I think it's roughly what other successful ecosystems end up gravitating towards.
reem has joined #ocaml
<adrien_znc>
you definitely don't want to build a new repository for that
<companion_cube>
which other ecosystems are you thinking of? haskell doesn't, for instance
<adrien_znc>
you want to add additional infos on top of the current one
<companion_cube>
yes
<orbitz>
The biggest problem I haveis that I like Core, but I hate the layout. And I don't want Batteries necessarily, so the starting point is rather painful
<companion_cube>
metadata, something like this
<companion_cube>
orbitz: do you like containers? :>
<orbitz>
I don't know I haven' treally worked with them
<adrien_znc>
(if you say you don't, companion_cube will torture you until you do)
<orbitz>
ha
<orbitz>
adrien_znc: that is a reasonable approach as well
<MercurialAlchemi>
torture is?
<orbitz>
adrien_znc: one issue though is I don't necessarily want to be beholden to the opam-repository maintainers t omanage this. For example, I may want tagged releases.
<orbitz>
But anyways, where the data lives is less of a problem, more of I'm still not convinced it's a worthwhile idea or what the design principles should be, etc
reem has quit [Remote host closed the connection]
<Drup>
the issue with creating a repository
<companion_cube>
adrien_znc: come on, did I torture you? :p
<Drup>
is that you are forced to remove the normal repository to avoid conflicting paquets
<Drup>
hence it's, in practice, impossible to use things outside of your closed ecosystem
<adrien_znc>
companion_cube: yes!
<companion_cube>
awwww, poor adrien_znc :D
<companion_cube>
what did I do?
<adrien_znc>
orbitz: you can branch from the main opam repository
<companion_cube>
(oh right, the mealy machines - but you did ask for them!)
<adrien_znc>
Drup: it's not "closed"
<companion_cube>
(and I'm still waiting about the S-expressions)
<adrien_znc>
that's
<adrien_znc>
that's really the wrong description
zpe has joined #ocaml
<orbitz>
Drup: opam could be modified to allow specifying a repository on search, perhaps
<companion_cube>
but if everyone and their grandma did their own curated repo, it would be hell
<orbitz>
Indeed
<companion_cube>
I think opam should help handle metadata on the common repo itself
<Matt__>
I'm new to ocaml and I have a question about recursive functions on a list
mort___ has quit [Remote host closed the connection]
<companion_cube>
Matt__: welcome, ask your question :)
segmond has quit [Ping timeout: 256 seconds]
<orbitz>
Drup: ah thanks
<Matt__>
Thanks, I'm scratching my head a little :-) I would like to match a list, with say, the 'multiples' I want to find... match them with a larger list, lets say, a list from 1 to 10
<Matt__>
so if I pass [ 2 ; 3 ] then I return a list that has those multiples removed
<Matt__>
is this possible?
<Matt__>
I can match one element sure, but I'm unsure how I would write something take considers a list instead of just 1 integer
<dmbaturin>
Matt__: You can use the List.filter function for it.
<Matt__>
Righto
<Matt__>
I'll take a look
<Matt__>
Thanks
nickmeharry has quit [Remote host closed the connection]
<dmbaturin>
If you want to do it by hand for an exercise, it's easy too.
<Matt__>
I have this so far
<dmbaturin>
Also, there's List.exists, which should make checking if it's a multiple of any list items easier.
<Matt__>
let delete_mult x mlist = match mlist with
<Matt__>
but honestly I'm a little clueless :-)
<Matt__>
Looking for one of those 'aaaah' moments.
<orbitz>
THe biggest problem for me at the moment is I want the code in Core just not the layout. Forking Core sounds like an epically bad idea as well
<dmbaturin>
The language it uses is SML, not ocaml, but they are conceptually similar. If you want to try examples without translating them, install SMLNJ or Poly/ML, otherwise you can read them as fancy pseudocode.
<Drup>
(ML is totally a fancy pseudocode anyway :D)
segmond has joined #ocaml
rgrinberg has joined #ocaml
matason has joined #ocaml
rgrinberg has quit [Ping timeout: 255 seconds]
reem has joined #ocaml
wwilly has left #ocaml ["Leaving"]
segmond has quit [Ping timeout: 265 seconds]
reem has quit [Remote host closed the connection]
larhat has joined #ocaml
<companion_cube>
Drup: pseudocode that doesn't admit ambiguity ;)
<companion_cube>
and doesn't know how to print stuff generically
<companion_cube>
more like real code, really
<dmbaturin>
companion_cube: I'd argue that pseudocode should not admit ambiguity. Polymoprhic print is a valid point though. :)
<dmbaturin>
But then again, print is rare in pseudocode.
segmond has joined #ocaml
<companion_cube>
you know what I mean, pseudocode has a small part of "do what I mean" on the edges :)
<Drup>
"yeah, I can totally slap a forall somewhere in the code, it will work"
<Drup>
(souce: my first year student)
<Drup>
students*
<companion_cube>
:D
<companion_cube>
List.for_all does work
<Drup>
l + 2 doesn't
<Drup>
(l being a list)
<companion_cube>
meaning map ((+) 2) l ?
<Drup>
yes
<MercurialAlchemi>
I'd question pseudo code using 'l + 2'
segmond has quit [Ping timeout: 264 seconds]
<companion_cube>
well it makes sense
<dmbaturin>
Drup: Our calculus professor used to say "you have no limits" when someone wrote proofs or calculations that involved limits with the "lim" part omitted.
<Drup>
:D
reem has joined #ocaml
<Drup>
companion_cube: it's especially questionable when it's not a list, but a C Array
<companion_cube>
ohhhhhh
<Drup>
(but they can't really know that)
paradoja has joined #ocaml
<companion_cube>
hmm, why didn't I write CCArray.map_in_place
<dmbaturin>
Drup: On the other hand, physicists and some geometry people routinely omit any sum symbols in tensor operations and may actually write $$l_i + 2$$ when they mean map ((+) 2) l.
freling has quit [Quit: Leaving.]
<Drup>
yes
<Drup>
I know
<Drup>
I HATE IT
<Drup>
sorry.
<Drup>
everytime I'm reading a math paper "those operations are ill-typed è_é".
reem has quit [Remote host closed the connection]
<dmbaturin>
We need to invent a funny symbol for map.
<rks`>
yes, that's what we need.
<dmbaturin>
Not that it will help, if those people omit the well known symbol for fold. :)
matason has quit [Quit: leaving]
paradoja has quit [Ping timeout: 265 seconds]
Haudegen has quit [Ping timeout: 245 seconds]
Haudegen has joined #ocaml
Haudegen has quit [Ping timeout: 256 seconds]
yomimono has joined #ocaml
jao has joined #ocaml
jao has quit [Changing host]
jao has joined #ocaml
Haudegen has joined #ocaml
freling has joined #ocaml
<bjorkintosh>
funny symbol for map. there be dragons?
<bjorkintosh>
a dragon pointing at itself?
_andre has joined #ocaml
jao has quit [Ping timeout: 272 seconds]
struktured has quit [Ping timeout: 265 seconds]
carm has quit [Ping timeout: 265 seconds]
paradoja has joined #ocaml
struktured has joined #ocaml
carm has joined #ocaml
<octachron>
there is a well-known symbol for fold?
<Drup>
they use mostly the same mecanism than llvm-general, so explicit names and no users/uses
struktured has quit [Ping timeout: 250 seconds]
dsheets_ has quit [Ping timeout: 256 seconds]
<Drup>
(and type families, everywhere)
mort___ has quit [Ping timeout: 256 seconds]
TheCommieDuck has joined #ocaml
mort___ has joined #ocaml
yomimono has quit [Ping timeout: 250 seconds]
matason has joined #ocaml
rgrinberg has joined #ocaml
badkins has joined #ocaml
reem has joined #ocaml
rgrinberg has quit [Ping timeout: 246 seconds]
reem has quit [Remote host closed the connection]
dsheets_ has joined #ocaml
<Drup>
ggole: so, their basic blocks are opaque and untyped, so they don't really have any deboxing issue.
yomimono has joined #ocaml
<Drup>
they just throw everything in the untyped representation before puting them inside basic blocks
<Drup>
no improvements :<
<ggole>
Yeah, that was pretty much what I stopped at
<ggole>
I mentioned the "half-graph" idea, right?
<Drup>
(keeping track of the various types in their fancy gadt-typefamily-typeclasses representation is rather annoying)
<Drup>
ggole: I don't remember that
<ggole>
Where pure nodes float outside basic blocks sea-of-nodes style, while side-effecty and control-flow nodes are in blocks
<ggole>
That *might* be a bit more amenable to the GADT stuff
<ggole>
Because value-producing nodes would mostly or entirely float and not have to live in blocks
<Drup>
huum, yes, I remember you saying something like that
<Drup>
and so, the compiler will "figure out the blocks" before compiling ?
<Drup>
by tracking back the dependencies ?
<ggole>
Well no, you'd have basic blocks contain an effect insn rather than a, say, int insn
<ggole>
You still get the def-use problem though
<TheCommieDuck>
hey; I'm probably missing something dumb. I've wrapped eprintf and it works fine. if I change it from eprintf str values to if !some_global_flag then eprintf str values else (), it complains about too many arguments.
<Drup>
yes, but if you have, say, c = a + b, return c, the first instruction will not be in the basic block, right ?
<ggole>
That would just turn into a phi, no need for it to be in a block
ontologiae_ has joined #ocaml
<ggole>
Because phis are "pure", they're just values
<ggole>
Calls are a bit problematic because you have a value and an effect
girrig has quit [Ping timeout: 250 seconds]
<Drup>
ggole: you still have to get back to blocks at some point, no ?
<Drup>
hum, or maybe not if you get out of ssa directly
<ggole>
Yeah, but you can do that at instruction selection time
<Drup>
ok
<ggole>
In which case the output is just lists of machine instructions
<Drup>
yeah, it's not optimal for llvm bindings :p
<ggole>
Agreed
<ggole>
TheCommieDuck: str doesn't look like a format string, is that missing?
<companion_cube>
TheCommieDuck: you might need ikfprintf in the "else" case
<pippijn>
that was a nice read
<TheCommieDuck>
ggole: let printferr str fm = if (!is_verbose) then (Printf.eprintf str fm) else () and I assumed it would infer....stuff
<companion_cube>
look at the type of your eprintf wrapper
<TheCommieDuck>
I think ikfprintf is it, though
ontologiae_ has quit [Ping timeout: 245 seconds]
<pippijn>
why was the ocaml llvm backend bad?
<companion_cube>
pippijn: apparently, GC
<ggole>
TheCommieDuck: hmm, that types fine here
travisbrady has joined #ocaml
<pippijn>
hmm
<pippijn>
how come?
<ggole>
LLVM didn't support precise collection well
<companion_cube>
I don't understand much, but whitequark and Drup seem to say that LLVM's support for GC is bad
<ggole>
It's been improved considerably since
<pippijn>
so we could try again?
<Drup>
the patch for GC roots is not merged yet
<Drup>
planned for 3.7
<pippijn>
okay
<pippijn>
after that we can try again?
<Drup>
yeah
<TheCommieDuck>
...It now works.
<TheCommieDuck>
o.0
<Drup>
according to whitequark, there are other issues to debox things
<ggole>
They seemed to have taken it seriously because Apple used LLVM for FTL, a Javascript JIT compiler
<pippijn>
Drup: do you know which issues?
<Drup>
basically, the ocaml compiler boxes a lot
<Drup>
and llvm will not optimise a lot if everything is boxed
<Drup>
so you need to debox things before asking llvm to optimize
<pippijn>
hm
<pippijn>
I see
<ggole>
LLVM will optimise more if it is given accurate types
<pippijn>
so you mean like Some x?
<ggole>
But those are dropped early in the compilation pipeline on the OCaml side
<Drup>
I don't know the details, to be honest
<pippijn>
ggole: can that be changed?
<pippijn>
preserve more types in transformation passes?
<ggole>
Sure, it's just ASMOP
<Drup>
well, it will be better in 4.03
<pippijn>
Drup: ah?
<Drup>
(flambda !)
<pippijn>
I should apply for a job at ocamlpro
<pippijn>
they do cool stuff
<companion_cube>
are you still in Paris? :)
<pippijn>
no, I'm in london now
badon has quit [Disconnected by services]
badon_ has joined #ocaml
badon_ is now known as badon
ontologiae_ has joined #ocaml
<pippijn>
Drup: flambda makes things slightly better, but it's still far away from the kind of type preservation as described in the acc paper
<pippijn>
Drup: having that in ocamlc would be cool
<Drup>
I doubt that's possible
<pippijn>
because it's not a purely functional language?
<Drup>
the Acc representation works because they have an extremely constrained small language
<pippijn>
right
TheCommieDuck has left #ocaml ["Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is"]
<Drup>
OCaml is neither small nor extremely constrained :D
<pippijn>
well, it can't be like acc
<pippijn>
because ocaml is translated from bytes to bytes
<Drup>
and types are much more complicated than just "base types and tupes"
<pippijn>
base, union, product
<pippijn>
ignoring classes :)
<Drup>
ahah
<ggole>
And abstract types, and open types, and polymorphic variants, and GADTs, and etc etc
<ggole>
And modules
<Drup>
and modules, and functions (with optional and named arguments)
<Drup>
and, and
<Drup>
it's easy to forget 90% of the language and say it's easy to embed in GADTs
<ggole>
It starts off so easy
<MercurialAlchemi>
if you don't like the problem, change the problem :)
<Drup>
ggole: ML is far too cute :p
<ggole>
type _ term = Int : int -> int term | Bool : bool -> bool term (* rest is an exercise for the reader *)
<pippijn>
I'm thinking about how much these things can be desugared
<Drup>
ah, well
<Drup>
pippijn: someone is doing a phd in ocamlpro on that n_n
<pippijn>
while preserving enough type information to give llvm optimisation hints
<pippijn>
Drup: that's interesting
<ggole>
Doing it specifically for LLVM might be significantly easier
<Drup>
ggole: that reminds me my issues with the formalization of eliom
<ggole>
eg, you just need to indicate that foo and bar are different record types, no need to drag in the full enchilada
<Drup>
"everything works fine, everything works fine, POLYMORPHISM, *die*"
dav has quit [Ping timeout: 245 seconds]
<ggole>
I don't think that would be a problem for TBAA
<ggole>
There are rules like "this can point at anything" for C already
<Drup>
TBAA ?
<ggole>
Type based alias analysis
<pippijn>
alias ana
<pippijn>
yes
<Drup>
ah, yes
<ggole>
eg, info that would allow LLVM to promote record fields, etc more aggressively
dav has joined #ocaml
Algebr has joined #ocaml
WraithM has joined #ocaml
binarybi1me has left #ocaml [#ocaml]
larhat has quit [Quit: Leaving.]
mal`` has quit [Ping timeout: 252 seconds]
shinnya has quit [Ping timeout: 252 seconds]
<dmbaturin>
Where are the docs for the syslog package that is in opam?
mcc has joined #ocaml
travisbrady has quit [Quit: travisbrady]
<dmbaturin>
Or it's just "use the source, Luke" and there are no docs?
bytbox has quit [Ping timeout: 246 seconds]
mcc has quit [Quit: This computer has gone to sleep]
<MercurialAlchemi>
in opam or in lwt?
<dmbaturin>
MercurialAlchemi: In opam. Lwt has its own syslog module?
mal`` has joined #ocaml
AlexRussia has quit [Ping timeout: 255 seconds]
<MercurialAlchemi>
dmbaturin: it can log to syslog, at least
<MercurialAlchemi>
if that's what you want
travisbrady has joined #ocaml
<companion_cube>
I think dsheets_ is looking more and more like the prophet that will bring us documentation
<Drup>
ahah xD
<MercurialAlchemi>
companion_cube: well, good luck to him, there is a lot of writing to do
<MercurialAlchemi>
:p
avsm has joined #ocaml
<companion_cube>
:)
rgrinberg has joined #ocaml
<companion_cube>
gosh, is ounit 2 defining a module OUnit at all?
darkf has quit [Quit: Leaving]
rgrinberg has quit [Ping timeout: 264 seconds]
<MercurialAlchemi>
is it?
<MercurialAlchemi>
the suspense is killing me
<dmbaturin>
MercurialAlchemi: It does, and the API is not compatible with OUnit2.
<MercurialAlchemi>
sweet
<dsheets_>
documentation tools... i won't write it for you ^_^
<MercurialAlchemi>
dsheets_: damn, I thought you were a hero
<dsheets_>
hero of shame -- my tools will show the world how poor your docs are and then you'll have to fix them up
<dsheets_>
unfortunately they are still rough around the edges so they produce bad-looking docs :-(
<adrien_znc>
companion_cube: I knew you were moving to Core!
<companion_cube>
tsk tsk
cdidd has quit [Ping timeout: 256 seconds]
badkins has quit [Ping timeout: 244 seconds]
ghostpl_ has quit [Remote host closed the connection]
segmond has quit [Ping timeout: 264 seconds]
travisbrady has quit [Quit: travisbrady]
swgillespie has joined #ocaml
dav__ has joined #ocaml
dav has quit [Ping timeout: 245 seconds]
zpe has quit [Remote host closed the connection]
octachron has quit [Quit: Leaving]
travisbrady has joined #ocaml
emias has quit [Ping timeout: 264 seconds]
segmond has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
gal_bolle has quit [Ping timeout: 256 seconds]
Anarchos has joined #ocaml
psy_ has joined #ocaml
`eeks has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
`eeks has joined #ocaml
arj has quit [Quit: Leaving.]
emias has joined #ocaml
seangrov` has left #ocaml ["ERC Version 5.3 (IRC client for Emacs)"]
Haudegen has quit [Ping timeout: 256 seconds]
seangrov` has joined #ocaml
Edgar has quit [Quit: Page closed]
vfoley- has joined #ocaml
rgrinberg has joined #ocaml
<vfoley->
What's a good way in Menhir to silence warnings about unused tokens?
etehtsea has joined #ocaml
etehtsea has quit [Max SendQ exceeded]
jao has joined #ocaml
jao has quit [Changing host]
jao has joined #ocaml
<thizanne>
remove these unused tokens
Haudegen has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
rgrinberg has quit [Ping timeout: 252 seconds]
MrScout_ has quit [Read error: Connection reset by peer]
MrScout_ has joined #ocaml
gal_bolle has joined #ocaml
matason has quit [Quit: leaving]
matason has joined #ocaml
A1977494 has quit [Read error: Connection reset by peer]
badkins has joined #ocaml
srcerer has quit [Quit: ChatZilla 0.9.91.1 [Firefox 35.0.1/20150122214805]]
ptc has joined #ocaml
ptc is now known as Guest97868
matason has quit [Ping timeout: 264 seconds]
larhat has joined #ocaml
waneck has quit [Quit: Leaving]
Guest97868 has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
ptc_ has joined #ocaml
srcerer has joined #ocaml
gal_bolle has quit [Ping timeout: 264 seconds]
divyansh_ has joined #ocaml
ggole has quit []
axiles has quit [Ping timeout: 264 seconds]
bytbox has joined #ocaml
Kakadu has quit [Quit: Page closed]
yomimono has quit [Ping timeout: 246 seconds]
axiles has joined #ocaml
dsheets_ has quit [Ping timeout: 245 seconds]
avsm1 has joined #ocaml
avsm has quit [Ping timeout: 264 seconds]
gal_bolle has joined #ocaml
Haudegen has quit [Ping timeout: 245 seconds]
lordkryss has quit [Quit: Connection closed for inactivity]
sol__ has quit [Disconnected by services]
gal_bolle has quit [Ping timeout: 252 seconds]
Haudegen has joined #ocaml
nullcat has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
dsheets has joined #ocaml
divyansh_ has quit [Quit: Computer has gone to sleep.]
WraithM has quit [Quit: leaving]
paradoja has quit [Ping timeout: 265 seconds]
<Algebr>
Syntax errors are killing me when refactoring, anything to help this out
rgrinberg has joined #ocaml
Kakadu has joined #ocaml
emias has quit [Quit: Bye]
girrig has joined #ocaml
MrScout_ has quit [Remote host closed the connection]
MrScout_ has joined #ocaml
travisbrady has quit [Quit: travisbrady]
olauzon has joined #ocaml
avsm1 has quit [Quit: Leaving.]
bytbox has quit [Remote host closed the connection]
WraithM has joined #ocaml
ptc_ has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
travisbrady has joined #ocaml
ghostpl_ has joined #ocaml
ghostpl_ has quit [Remote host closed the connection]
ghostpl_ has joined #ocaml
tnguyen has quit [Ping timeout: 252 seconds]
tnguyen has joined #ocaml
emias has joined #ocaml
WraithM has quit [Quit: leaving]
c355E3B has joined #ocaml
laughing-octo-sh has joined #ocaml
swgillespie has joined #ocaml
swgillespie has quit [Client Quit]
olauzon has quit [Quit: olauzon]
Anarchos has joined #ocaml
travisbrady has quit [Quit: travisbrady]
ptc has joined #ocaml
ptc is now known as Guest81921
travisbrady has joined #ocaml
bytbox has joined #ocaml
MercurialAlchemi has quit [Remote host closed the connection]
MercurialAlchemi has joined #ocaml
<Algebr>
Drup: did you have a short list of how to add stuff to opam correctly?
rgrinberg has quit [Ping timeout: 256 seconds]
JuggleTux has joined #ocaml
<_obad_>
is Lwt_preemptive the right choice to use a block device driver from an Lwt application?
<_obad_>
I meant *blocking* device driver
<_obad_>
it's a char device
<_obad_>
i.e. I want to make blocking calls but let my Lwt application keep running
<MercurialAlchemi>
bignum or zarith?
rgrinberg has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
Guest81921 has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<Drup>
MercurialAlchemi: zarith
<smondet>
_obad_: I dunno if it is The Right Choice™ , but it should work pretty well :) Lwt_preemptive maybe adds an overhead not negligible for some applications
<Drup>
_obad_: yes
<_obad_>
drup, smondet: thanks! I'm just going to try it. what's the oasis flag for the -thread flag? or do I have to change _tags?
<smondet>
_obad_: I think you may need `-thread` somewhere yes, but also the `lwt.preemptive` separate library
<Drup>
add thread to your dependencies
<Drup>
and that's enough
<Drup>
(and lwt.preemptive, of course)
<Drup>
Algebr: look at the opam manual ;)
<_obad_>
I added lwt.preemptive of course, however builddepends: thread gives an error
<Drup>
threads ?
<_obad_>
W: Field 'pkg_thread' is not set: Command ''/home/obd/.opam/4.01.0/bin/ocamlfind' query -format %d thread > '/tmp/oasis-bc11a9.txt'' terminated with error code 2
<_obad_>
E: Cannot find findlib package thread
<Drup>
with an s
<_obad_>
thanks, it compiles! someone should mention that in the oasis manual
<MercurialAlchemi>
Drup: thanks
<Algebr>
Drup: How does one write the install target so that the binary is installed under opam?
oscar_toro has quit [Ping timeout: 240 seconds]
gt2013 has joined #ocaml
<Drup>
Algebr: just have a --prefix argument
<Drup>
and install there
<Drup>
for libraries, install with ocamlfind
mort___ has joined #ocaml
segmond has quit [Ping timeout: 244 seconds]
<Algebr>
I'm not understanding what you mean, looking at other people's install target's and this is becoming a rabbit hole. I was thinking was something like install : mv my_binary $(opams_binary_directory)
_andre has quit [Quit: leaving]
segmond has joined #ocaml
JuggleTux has quit [Quit: leaving]
sol__ has joined #ocaml
pii4 has quit [Excess Flood]
pii4 has joined #ocaml
claudiuc has joined #ocaml
mort___ has quit [Quit: Leaving.]
emias has quit [Quit: Bye]
emias has joined #ocaml
travisbrady has quit [Quit: travisbrady]
badon has quit [Disconnected by services]
badon_ has joined #ocaml
badon_ is now known as badon
olauzon has joined #ocaml
laughing-octo-sh has quit [Ping timeout: 244 seconds]
c355E3B has quit [Quit: Leaving]
travisbrady has joined #ocaml
laughing-octo-sh has joined #ocaml
<Algebr>
I'm at the opam-publish submit project.version stage but I'm getting permissions errors...which is super strange. do I need to have permissions from the opam repo?
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
swgillespie has joined #ocaml
jwatzman|work has joined #ocaml
Anarchos has joined #ocaml
<tizoc>
what do ocamlers usually use to talk to postgresql? pgocaml?
Algebr has quit [Remote host closed the connection]
Algebr has joined #ocaml
<Algebr>
Others encountered this issue before of opam-publish giving # fatal: Could not read from remote repository ? wget on the url works fine..
hilquias has joined #ocaml
ptc has joined #ocaml
<tokenrove>
is it possible to use "module type of" with first-class modules? i.e., what would be the correct syntax for ``let m = (module Set : module type of Set)''?
ptc is now known as Guest65423
badkins has quit []
oscar_toro has joined #ocaml
Submarine has quit [Remote host closed the connection]
SomeDamnBody has joined #ocaml
<SomeDamnBody>
is it possible to tell opam to consume a local opam file when installing a package?
<SomeDamnBody>
i have a package install failing, and I need to be able to edit the opam and then execute that
Kakadu has quit [Remote host closed the connection]
<Algebr>
I think its opam pin
`eeks has quit [Ping timeout: 250 seconds]
<Drup>
SomeDamnBody: opam pin -e add foo foo.3.13
<SomeDamnBody>
why do I have to pin it to a specific version?
<SomeDamnBody>
is there any way that I can edit the opam file?
<SomeDamnBody>
and yet not pin it?
<SomeDamnBody>
Drup, actually, let me explain what is really happening
<SomeDamnBody>
basically, the opam file runs a configure command in a downloaded directory
<Drup>
the opam file is for a specific version
<Drup>
so ...
<SomeDamnBody>
oh
<SomeDamnBody>
in any case, the configure command cannot find the version of llvm
<SomeDamnBody>
but llvm installed is 3.4
<SomeDamnBody>
the error I get is actually this:
mort___ has quit [Quit: Leaving.]
<SomeDamnBody>
# E: Failed to find llvm library, consider using --with-llvm-version
<SomeDamnBody>
# or --with-llvm-config command line options, to point me on a
<SomeDamnBody>
# correct version of LLVM.
<SomeDamnBody>
that's why I was trying to edit the opam for the package...
bjorkintosh has quit [Remote host closed the connection]
badkins has joined #ocaml
bjorkintosh has joined #ocaml
carm has quit [Read error: Connection reset by peer]
avsm has joined #ocaml
monoprotic has quit [Ping timeout: 272 seconds]
carm has joined #ocaml
travisbrady has quit [Quit: travisbrady]
reem has joined #ocaml
antkong has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
Algebr has quit [Remote host closed the connection]
<whitequark>
post the entire output
<whitequark>
also, what is your OS?
<SomeDamnBody>
linux
<SomeDamnBody>
Ubuntu 14.04
<SomeDamnBody>
I managed to use the pin command to get past that
<SomeDamnBody>
but now I have a different error
<SomeDamnBody>
unbound value Http.Server.make
<SomeDamnBody>
during an ocamlfind ocamlopt compilation command
<SomeDamnBody>
run by opam
<SomeDamnBody>
whitequark,
tane has quit [Quit: Verlassend]
gt2013 has quit [Remote host closed the connection]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Algebr has joined #ocaml
reem has quit [Remote host closed the connection]
travisbrady has joined #ocaml
<whitequark>
hrm
bytbox has quit [Remote host closed the connection]
jbrown has joined #ocaml
ghostpl_ has quit [Remote host closed the connection]
Simn has quit [Quit: Leaving]
cdidd has joined #ocaml
reem has joined #ocaml
freling has quit [Quit: Leaving.]
shinnya has joined #ocaml
badkins has quit []
reem has quit [Remote host closed the connection]
Guest65423 has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
t4nk155 has joined #ocaml
t4nk155 is now known as Flakes
Haudegen has quit [Ping timeout: 272 seconds]
<SomeDamnBody>
how can I search for that module?
<SomeDamnBody>
Http.Server.make?
Flakes is now known as Flakers
<SomeDamnBody>
how do I find what package delivers that?
olauzon has quit [Quit: olauzon]
<Flakers>
My opam cant find any packages
<Flakers>
like it isnt connecting to the internet or something
<Flakers>
I just installed it
<Flakers>
Any ideas on how to fix this?
reem has joined #ocaml
<Drup>
you did opam init and all that ?
<Flakers>
I installed it
<Flakers>
then did opam init
<Flakers>
then selected yes for all the changes it wanted to make or w/e
<Drup>
then opam update ?
<Flakers>
yep
<Flakers>
I had this before on my mac side, and someone had a fix. They had me check opams connection or w/e and it went to local ip
<Flakers>
but I couldn't get anything working with gtksourceview on mac side so I got linux and now same problem ;_;
swgillespie has joined #ocaml
ghostpl_ has joined #ocaml
ptc has joined #ocaml
ptc is now known as Guest94374
Haudegen has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 240 seconds]
reem has quit [Remote host closed the connection]
ghostpl_ has quit [Ping timeout: 252 seconds]
<Flakers>
Opam can't find any packages I try to install
<Flakers>
And list -a doesnt give anything
laughing-octo-sh has quit [Ping timeout: 264 seconds]
Haudegen has quit [Ping timeout: 252 seconds]
reem has joined #ocaml
<SomeDamnBody>
how can I tell opam to use a local git repo to install a package