tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
AlexRussia has quit [Ping timeout: 248 seconds]
ollehar has quit [Read error: Connection reset by peer]
ollehar1 has joined #ocaml
AltGr has joined #ocaml
<AltGr>
github still under attack... that's crazy...
<struktured>
so far haven't suffered from that yet
<Denommus>
neither have I
<Denommus>
what is the usual approach for dynamic dispatch? A record field that stores the function? Objects? Some sort of module sorcery?
<Drup>
objects
<Drup>
but give details.
tianon has quit [Read error: Connection reset by peer]
AlexRussia has joined #ocaml
tianon has joined #ocaml
myst has quit [Read error: Connection reset by peer]
<Denommus>
I have a value that has a single "method" that produces a new value of the same type
det has joined #ocaml
<Drup>
it doesn't seem to be a very interesting value if you have only that
det has left #ocaml ["Leaving"]
<Denommus>
yeah, I guess I'm overly complicating things
<Drup>
what do you want to actually do ?
<oriba>
Drup, I mixed Bytes and string, became messages like I should not use Bytes.copy. I removed bytes.copy and had Bugs because of mutable strings.... so I decided to use Bytes.copy and accept the message from the compiler but have working code...
<Denommus>
remember my AFRP library?
<Denommus>
so, I need to step somehow, and I'm thinking of the best approach for that
<Drup>
oriba: you added -safe-string ?
<Denommus>
but maybe I should just step the signal functions themselves, passing the current POSIX Time and the current wire value
<Drup>
Denommus: define "to step"
<Denommus>
Drup: let's call the signal functions "wires" to simplify things
<Denommus>
Drup: I need to produce a new wire from the previous wire every iteration
<oriba>
Drup, no.
<Drup>
oriba: then Bytes = String
<Drup>
except you will have various deprecation warnings
jwatzman|work has quit [Quit: jwatzman|work]
<Drup>
try to add -safe-string and figure things out
<Drup>
Denommus: hum, really ?
<oriba>
Drup, aha. But why then this warning? It should only occur with "-safe-string" then, I think. otherwise it's confusing
<Drup>
orbitz: no, the point is to encourage people to use -safe-string
<Drup>
by giving them a warning if they use string in a mutable way
<Denommus>
Drup: so, I'm thinking if I should provide steppers that do this kind of step in different strategies, like fixed time step or variable time step
<oriba>
Drup, if something onlky works, if the code AND some compile-switches are used, then it's IMHO bad.
<Drup>
oriba: don't overstate things, those are deprecation warnings
<Drup>
it works, you are just warned
<oriba>
Drup, hmhh... a warning means, something might be wrong. But this is rather a recommendation, and also means, that when follwoing it, it can break code.
<oriba>
The warnbing did not mention -safe-strings
<oriba>
as far as I remember
<Drup>
sure it can break code, that's why it's not already by default.
<Drup>
(which it will be, at some point)
<oriba>
But then -safe-string should be daefault to (or built-in and not possiuble to change)
<Drup>
if -safe-string is the default, half the ocaml ecosystem breaks overnight
<oriba>
you see...
<Drup>
I see that you are not really reading what I'm writing :)
<oriba>
if its not default, but you follow the 2warnings", code also breaks
<oriba>
All in all, it means: ignore warnings...
<Drup>
Denommus: it's not very arrow-y.
<Drup>
oriba: or fix your damn code to stop using string mutably.
<Drup>
other people did it
<Denommus>
Drup: what part is not arrow-y?
<Drup>
Denommus: Session
<oriba>
Drup, maybe later. I will just use String.copy and anything works fine.
<Drup>
"data Wire s e m a b" /me type variable overflow
<Drup>
serious, more letters, it was hard ? gree
<Drup>
Denommus: ok, I got it
<Drup>
state exception monad input output
<Drup>
why do you need dynamic dispatch ?
<Denommus>
Drup: lazy evaluation has its shortcommings. The "s" is the type that defines the stepping, the "e" is the type for inhibition (I'm not sure why this needed to be exposed), the "m" is a monad to "force" evaluation every iteration, and then input and output
<Drup>
inhibition ?
<Denommus>
Drup: different stepping strategies, I guess
<Denommus>
Drup: inhibition is the term for when a wire isn't outputting a value
<Drup>
error then.
<Drup>
:D
<Denommus>
Drup: well, I'm just using the terminology of the documentation
<Drup>
not sure why it's hardcoded in the type, seem to be it could be an overlay
<Drup>
to me*
<Drup>
anyway.
<Drup>
do you have a start in OCaml ?
<Denommus>
Drup: not yet, I'm just scratching. I literally started today XD
<Drup>
well, you could already have a sketch
<Denommus>
*sketching
<Denommus>
I started and erased five times as of now
<Drup>
sign It's progressing the, what does the last iteration look like ?
<Drup>
then*
<Denommus>
I was implementing the wires as functions from signal to signal and thought "no, wait, this is stupid", and started from scratch all over again
ghostpl_ has joined #ocaml
<Drup>
seem to me we could take the same constructor than Wire
<Denommus>
type 'a signal = float -> 'a;; type ('a, 'b) sf = 'a signal -> 'b signal
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
<Denommus>
Drup: hm. I guess I should really start from Wire instead of hitting my head against step, indeed
<Denommus>
Drup: I can probably work out through step later
<Drup>
the implementation of stepWire is not even complicated
<yminsky>
Do you think we're generating our constraints in the wrong way?
ericwa has quit [Quit: Leaving...]
<AltGr>
(We are in the process of adding such info to the automated tests, so that you can get such information at PR time)
<Drup>
yminsky: hard to say, but it's rather convoluted
<AltGr>
(e.g. "Your PR is OK but it will make package xxx uninstallable")
<Drup>
and in the haskell community, they tend to use very tight constraints like, and the result was ... annoying.
hugomg has joined #ocaml
hugomg has quit [Client Quit]
<Drup>
like that*
<yminsky>
Is there some simpler way of handling it? I suppose we could re-release all of our packages every time, locking them to each other in version-space. I'm not sure if that would be better or worse.
<Drup>
yminsky: another solution is to switch to semantic versioning and use that for version constraints (not sure what's your versioning scheme is currently)
<AltGr>
Drup: the issue with loose constraints is that it very quickly becomes impossible to test and verify that they indeed work
<yminsky>
Semantic versioning is not really an option for us.
<Drup>
ok
<yminsky>
We develop these packages together, in a tightly coupled mono-repo.
<Drup>
yes, but you do know when you break compat, don't you ?
<yminsky>
The version numbers are our internal version numbers, and it's just hard to imagine how we'd backfit a semantic versioning scheme on top.
<AltGr>
(I have some plans to attempt to test min/max allowed versions though)
<yminsky>
It looks like what we do in practice is widen out the constraints when new versions come up. We must have missed core_bench last time somehow.
<Drup>
yes
<AltGr>
so the tests I'm planning would have helped in that case, good to know
ygrek_ has joined #ocaml
<AltGr>
yminsky, I think a new version of core_bench was added then removed from the repo for some reason ?
<yminsky>
I don't know why. I reported it on github
cesar_ has joined #ocaml
s1n4 has joined #ocaml
cesar_ is now known as Guest64238
shinnya has quit [Ping timeout: 252 seconds]
<Drup>
Denommus: I'm not sure we really need the s
kdef has quit [Ping timeout: 264 seconds]
<Drup>
in Wire, the s seem to be a state used to retrieve the current time
badon has quit [Ping timeout: 246 seconds]
<Denommus>
Drup: could we just accept a float, or a function from unit to float?
Guest64238 has quit [Ping timeout: 265 seconds]
<Drup>
Denommus: is the s is really used with different instanciations or is it in practice almost always the same thing ?
<Denommus>
Drup: in practice it's mostly the Session type
<Drup>
Denommus: the session type is itself parametrized by an s
<Drup>
so, huh, not helping.
<Denommus>
Drup: that's because stepSession generates a new Session of the same type
<Denommus>
Drup: WConst and WId are givin me an error because they don't fit in the type signature
<Denommus>
Drup: ah!
<Denommus>
Drup: ok, thanks
<Drup>
I don't think you need the 'e
<Drup>
if your thing doesn't update all the time, put it in the type.
<Drup>
(_, int option, int) wire
<Drup>
no need to hardcode the Result
<Drup>
I think.
<Denommus>
Drup: it actually makes sense
<Drup>
(not sure why they did in the haskell version)
<Drup>
(maybe you could ask them)
<Denommus>
Drup: you were not the first to point that out, I guess it's a valid complaint
<Denommus>
Drup: but the reason is probably so that some of their built-in switches work better. But I can probably just replace them by ones with the types explicit
darkf has joined #ocaml
<Drup>
maybe
<Drup>
"The type signatures in Netwire are known to be scary. =) But like most of the library the underlying meaning is actually very simple." <- I stop counting how many I heard that about haskell libraries :D
<Denommus>
"simple" is an overloaded term, hence the problem XD
badkins has quit []
ghostpl_ has joined #ocaml
tnguyen has joined #ocaml
ghostpl_ has quit [Ping timeout: 245 seconds]
<Drup>
Denommus: yeah, the only nice solution for having a flexible 's parameter is a functor, which wouldn't be so nice
JuggleTux has quit [Remote host closed the connection]
The_Mad_Pirate has joined #ocaml
badon has joined #ocaml
claudiuc has quit [Remote host closed the connection]
claudiuc has joined #ocaml
claudiuc has quit [Ping timeout: 256 seconds]
nullcat has quit [Ping timeout: 252 seconds]
nullcat has joined #ocaml
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
peterbb has quit [Ping timeout: 250 seconds]
peterbb has joined #ocaml
swgillespie has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest31015
Guest31015 has quit [Ping timeout: 265 seconds]
kdef has joined #ocaml
mcclurmc has joined #ocaml
mcclurmc has quit [Ping timeout: 256 seconds]
larhat has quit [Ping timeout: 250 seconds]
keen__________30 has quit [Ping timeout: 264 seconds]
sdothum has quit [Quit: ZNC - 1.6.0 - http://znc.in]
siddharthv_away is now known as siddharthv
ggole has joined #ocaml
nullcat has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
AlexRussia has quit [Ping timeout: 272 seconds]
struk|desk has quit [Ping timeout: 265 seconds]
struk|desk has joined #ocaml
ghostpl_ has joined #ocaml
ghostpl_ has quit [Ping timeout: 246 seconds]
nullcat_ has joined #ocaml
AlexRussia has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest62182
Guest62182 has quit [Ping timeout: 256 seconds]
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
AlexRussia has quit [Ping timeout: 248 seconds]
AlexRussia has joined #ocaml
ygrek_ has quit [Ping timeout: 252 seconds]
tianon has quit [Read error: Connection reset by peer]
testcocoon has quit [Quit: Coyote finally caught me]
tianon has joined #ocaml
testcocoon has joined #ocaml
testcocoon has quit [Quit: Coyote finally caught me]
ghostpl_ has joined #ocaml
testcocoon has joined #ocaml
ghostpl_ has quit [Ping timeout: 250 seconds]
kdef has quit [Quit: Leaving]
freling has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
cdidd has joined #ocaml
MercurialAlchemi has joined #ocaml
_obad_ has quit [Ping timeout: 265 seconds]
ygrek_ has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
larhat has joined #ocaml
martintrojer has quit [Max SendQ exceeded]
martintrojer has joined #ocaml
testcocoon has quit [Quit: Coyote finally caught me]
cesar_ has joined #ocaml
cesar_ is now known as Guest55149
freling has quit [Quit: Leaving.]
larhat has quit [Quit: Leaving.]
testcocoon has joined #ocaml
Guest55149 has quit [Ping timeout: 245 seconds]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
_obad_ has joined #ocaml
testcocoon has quit [Quit: Coyote finally caught me]
nullcat_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
testcocoon has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
dsheets has quit [Ping timeout: 265 seconds]
darnuria has quit [Ping timeout: 252 seconds]
myyst has joined #ocaml
myyst is now known as myst
testcocoon has quit [Quit: Coyote finally caught me]
ghostpl_ has joined #ocaml
darnuria has joined #ocaml
badon has quit [Disconnected by services]
badon_ has joined #ocaml
badon_ is now known as badon
testcocoon has joined #ocaml
badon has quit [Excess Flood]
ghostpl_ has quit [Ping timeout: 256 seconds]
badon has joined #ocaml
The_Mad_Pirate has quit [Ping timeout: 256 seconds]
Simn has joined #ocaml
Submarine has quit [Remote host closed the connection]
mort___ has joined #ocaml
larhat has joined #ocaml
testcocoon has quit [Quit: Coyote finally caught me]
testcocoon has joined #ocaml
The_Mad_Pirate has joined #ocaml
snikkers has quit [Quit: Lost terminal]
dsheets has joined #ocaml
mengu has joined #ocaml
dav has quit [Read error: Connection reset by peer]
testcocoon has quit [Quit: Coyote finally caught me]
Guest41125 has joined #ocaml
lordkryss has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
testcocoon has joined #ocaml
govg has joined #ocaml
ghostpl_ has joined #ocaml
milosn has quit [Ping timeout: 264 seconds]
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
cesar_ has joined #ocaml
cesar_ is now known as Guest66443
mengu has quit [Read error: Connection timed out]
ghostpl_ has quit [Ping timeout: 255 seconds]
mengu has joined #ocaml
Haudegen has quit [Ping timeout: 256 seconds]
Guest66443 has quit [Ping timeout: 265 seconds]
mengu has quit [Remote host closed the connection]
ghostpl_ has joined #ocaml
ghostpl_ has quit [Ping timeout: 256 seconds]
AlexRussia has quit [Ping timeout: 244 seconds]
johnelse has joined #ocaml
johnelse is now known as Guest99512
Haudegen has joined #ocaml
_obad_ has quit [Ping timeout: 265 seconds]
_obad_ has joined #ocaml
kakadu has joined #ocaml
Guest99512 is now known as johnelse
toolslive has joined #ocaml
AlexRussia has joined #ocaml
<toolslive>
anybody succeeded in befriending OUnit and Cmdliner?
ghostpl_ has joined #ocaml
lewis1711 has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
lewis1711 has quit [Client Quit]
psy_ has quit [Ping timeout: 250 seconds]
Hannibal_Smith has joined #ocaml
milosn has joined #ocaml
badon has quit [Ping timeout: 252 seconds]
psy_ has joined #ocaml
badon has joined #ocaml
<bernardofpc>
Drup> ollehar1: why are http://ocsigen.org/tuto/4.2/manual/application not good ? -> well, it lacks a bit of examples about "what would be the nice ocsigen way of doing <foo>"
tianon has quit [Read error: Connection reset by peer]
milosn has quit [Read error: Connection reset by peer]
<bernardofpc>
for example, I had to suffer a lot to discover that I needed a POST service in a button and could not put a POST in a link, even if a link would be more practical
tianon has joined #ocaml
badon_ has joined #ocaml
milosn has joined #ocaml
<bernardofpc>
on the other side, sometimes OCsigen (or Eliom, not sure exactly which) got into the way of functionnal stuff, like say I have a POST service with some 5 arguments (ugly defined as a ** b ** c ** d ** e type) and in some cases I'd like to use a form with just 3 out of the 5 and pass the two others by currying... I did not find how to doi it, and from docs I just noticed preapply that's only good for GET
psy_ has quit [Ping timeout: 252 seconds]
psy_ has joined #ocaml
badon has quit [Ping timeout: 252 seconds]
badon_ is now known as badon
Haudegen has quit [Ping timeout: 250 seconds]
jonludlam has joined #ocaml
Hannibal_Smith has quit [Ping timeout: 248 seconds]
paolooo has joined #ocaml
govg has quit [Remote host closed the connection]
Haudegen has joined #ocaml
paolooo has quit [Quit: Page closed]
sdothum has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
ghostpl_ has quit [Remote host closed the connection]
Hannibal_Smith has joined #ocaml
tianon has joined #ocaml
ghostpl_ has joined #ocaml
toolslive has quit [Ping timeout: 252 seconds]
cesar_ has joined #ocaml
cesar_ is now known as Guest31173
Guest31173 has quit [Ping timeout: 265 seconds]
toolslive has joined #ocaml
toolslive has quit [Remote host closed the connection]
<bernardofpc>
Drup> try to add -safe-string and figure things out -> is there a _tags for that ?
_andre has joined #ocaml
milosn has quit [Ping timeout: 245 seconds]
milosn has joined #ocaml
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
TheLemonMan has joined #ocaml
Hannibal_Smith has quit [Quit: Leaving]
kushal has quit [Ping timeout: 256 seconds]
ygrek_ has quit [Ping timeout: 256 seconds]
kushal has joined #ocaml
ygrek_ has joined #ocaml
octachron has joined #ocaml
<Drup>
"I did not find how to doi it, and from docs I just noticed preapply that's only good for GET" hum, that would deserve a bug report
<flux>
I guess native version will have to wait :)
tianon has quit [Read error: Connection reset by peer]
<haesbaert>
it seems I could avoid that by setting stderr to nonblocking
<Drup>
haesbaert: if you have a blocking issue, just use Lwt_preemptive
<Drup>
(in general)
tianon has joined #ocaml
<Drup>
(don't know about stderr specifically)
<adrien_znc>
if you set something to non-blocking you must be prepared to handle EAGAIN and EWOULDBLOCK
<haesbaert>
I don't actually, I'm just curious to see how this works internaly
<haesbaert>
from my readings, any write operation on a fd that is blocking in lwt, goes trough the async method
<haesbaert>
adrien_znc: lwt handles that if the fd is nonblocking
kdef has joined #ocaml
<haesbaert>
it's just awkward that you do a eprintf, and that spawns a system thread
<haesbaert>
especially since when you're doing eprintf, you might be dealing with some resource starvation, so the last thing you want, is to do more work
<adrien_znc>
run_job() spawns a system thread?
<haesbaert>
well that's what I still didn't get it
<haesbaert>
I might be totally misreading this, mind you
<adrien_znc>
I'd be surprised lwt would do thart
<adrien_znc>
that*
<adrien_znc>
in any case, if you want to write to stderr and maybe block, you can still use Printf's fprintf/eprintf
<haesbaert>
according to the documentation, it invokes the async method on things that would block, (to get a nonblocking) behavour
<haesbaert>
adrien_znc: ack, I was trying to be nice and use all lwt things.
<adrien_znc>
well, if you want the "regular" behaviour and not lwt's...
<haesbaert>
ack, to be honest I end up binding all my eprintfs
<haesbaert>
which would give me the blocking behaviour, more or less
emaczen has joined #ocaml
mcclurmc has joined #ocaml
milosn has joined #ocaml
larhat has quit [Quit: Leaving.]
larhat has joined #ocaml
tashjash has quit [Quit: Leaving]
tashjash has joined #ocaml
tashjash has quit [Max SendQ exceeded]
tashjash has joined #ocaml
emaczen has quit [Remote host closed the connection]
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
ollehar has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
darkf has quit [Quit: Leaving]
mcclurmc has joined #ocaml
<Drup>
ping dsheets ?
<dsheets>
hellpo
ghostpl_ has quit [Remote host closed the connection]
<Drup>
what are you using tower for ?
<dsheets>
Drup, will be static site gen applications like ocamllabs web site
<dsheets>
the template system will probably be broken out
<dsheets>
why?
ghostpl_ has joined #ocaml
MrScout has joined #ocaml
<Drup>
because the template system is precisely the part I didn't do when I first did my first mirage-blog generator revamp :>
<dsheets>
what's that?
<Drup>
cowabloga*
<dsheets>
oh, hmm that project is... odd
<Drup>
I know
<haesbaert>
btw, I've confirmed, an eprintf in lwt will be run as an async job in another thread
<Drup>
I mean that you can rewrite a set of files to fill the holes, but can't give the values of the holes by cli :p
slash^ has joined #ocaml
<dsheets>
there is also no user interface to directly supply bindings, no
<Drup>
right
<Drup>
I vote toml
<dsheets>
why do you want to bind on the command-line?
<Drup>
or in a file
<dsheets>
yeah, hmm... toml is a bit crap, tbh
<Drup>
not compared to yaml.
mcclurmc has quit [Remote host closed the connection]
<dsheets>
well, yaml is right out -- no parser
<Drup>
even if there was a parser >_>
<Drup>
this file format is insane
<dsheets>
yeah... it's got buy-in from the jekyll-heads already, though which is why it would be considered
<Drup>
dsheets: by "toml" is a bit crap, you mean the file format or the OCaml library ?
<dsheets>
the file format
<Drup>
because the file format is very similar to the opam one.
<Drup>
which is .. not terrible
<dsheets>
except dates are first-class wtf
<dsheets>
and the people in charge are... questionable
mcclurmc has joined #ocaml
<Drup>
no opinion on that
<haesbaert>
smondet: a pool of threads, so only one extra thread, but from reading the code, it only creates system threads if the current ones are busy
<haesbaert>
smondet: if I set stderr to nonblocking, the system threads are never created, which gives a nicer behaviour imho.
<haesbaert>
just confirmed
<Drup>
anyway, as long as it's simple k/v binding without too much syntactic overhead, I don't really care.
<dsheets>
also, i am considering using the templating in codoc
<Drup>
dsheets: yeah
<dsheets>
and removing the cow dep
<Drup>
Yes.
<Drup>
:D
<dsheets>
so now camlp4 and no xml trees... should be much faster
mort___ has quit [Quit: Leaving.]
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
<smondet>
haesbaert: how did you effectively put stderr in non-blocking mode? I heard that non-blocking non-socket FDs on Linux were a joke (I think Jeremi dimino said that on some mailinglist)
<haesbaert>
I've used the Lwt_unix.set_blocking, which I assume it's just a wrapper for fcntl
<smondet>
then the question is, are they really non-blocking? (do they ever return "I'm not ready")
mort___ has joined #ocaml
<adrien_znc>
non-blocking FDs on linux definitely work
<Drup>
dsheets: do you plan to take back on cowabloga for the website part or a new thing from scratch ?
<adrien_znc>
for FDs on block devices it might be slightly special
<adrien_znc>
but that's pretty much it
<Drup>
the whole blog/wiki/tickets/rss feed is well cleaned up in my fork, so there is that
<adrien_znc>
smondet: stderr returning EAGAIN/EWOULDBLOCK is trivial
<adrien_znc>
2>/dev/null
<adrien_znc>
err
<adrien_znc>
2>/dev/zero
<haesbaert>
smondet: well it makes lwt behaves differently because it checks the flag, I'd doubt _very_ hard if the fd was not set to nonblocking though, I can't see why would it be hard to implement (linux-wise)
<adrien_znc>
(actually that's maybe the wrong error but redirect to anything that will be slow)
<smondet>
can't find the email any more …
<haesbaert>
now there is one behaviour I don't know how to explain:
<Anarchos>
i included companion_cube modules in http://lpaste.net/129925 But i want to put TermeMultiSet out of MultiEquation. Any advice ? (i removed the types and values, only keep the module/functor architecture)
<Drup>
Algebr: I would tend to propose a blade duel, at midday, in the middle street.
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
_andre has quit [Quit: leaving]
ollehar has joined #ocaml
lordkryss has quit [Quit: Connection closed for inactivity]
ghostpl_ has joined #ocaml
nullcat__ has joined #ocaml
<nullcat__>
I am writing a project and get warning 40 from the compiler. I googled for similar problem but the answer from SO is not clear for my case. https://github.com/marklrh/otter
<nullcat__>
"Warning 40: token was selected from type Oauth_client.Client.temporary_credentials.
<nullcat__>
It is not visible in the current scope, and will not
<nullcat__>
be selected if the type becomes unknown."
psy_ has quit [Ping timeout: 250 seconds]
<companion_cube>
it means you have a record r:Oauth_client.temporary_credentials
<nullcat__>
yes
<companion_cube>
and you're accessing a field without qualifying it with the module nam
<nullcat__>
it seems there is no way I can specify the module name there, if I understand your meaning correctly
<companion_cube>
try resp.Client.token
<Algebr>
Drup: heh. I changed the hostname on my machine and now ocsigen craps out. How is ocsigen figuring out the hostname, via /etc/hostname or like echo $HOST?
<companion_cube>
or something along this
<Algebr>
I think Galois died midday in a duel
<nullcat__>
companion_cube: Thank you! I never know that
<Algebr>
Also, can ocaml talk to c++/vice versa?
<nullcat__>
Is it explained in the official document somewhere?
<companion_cube>
probably in the manual
<nullcat__>
good...
<nullcat__>
thank you
<companion_cube>
no pb
<Drup>
Algebr: literally no idea
<Drup>
but tbh, if ocsigen craps out, it's probably not going to be the only one on the system, and you have other problem
<Drup>
(and who changes it's hostname ?! That's one of the "NOPE DON'T" in linux)
<Drup>
Algebr: OCaml doesn't have a different FFI to C++, you need to go through C
<Drup>
Denommus: I read the answer
<Anarchos>
Algebr yes it can : i already did it
javamonn has quit [Remote host closed the connection]
<Drup>
Denommus: not sure I get the whole interval deal
javamonn has joined #ocaml
<mrvn>
could be fun to teach ctypes about c++ name mangling and classes
<Denommus>
Drup: he was referring to the fact that a Netwire user usually creates a wire that emits between two events, and inhibits otherwise, instead of directly dealing with events
<Drup>
I see
Hannibal_Smith has quit [Remote host closed the connection]
<Denommus>
Drup: for instance, a wire that emits between mouse down and mouse up, to create a "mouse pressed" stream
<Drup>
I see
<Denommus>
he calls those wires intervals
<Denommus>
that won't stop us from experimenting with ever-emitting wires, though
psy_ has joined #ocaml
thomasga has quit [Quit: Leaving.]
<nullcat__>
companion_cube: and then I tried this case, why does OCaml decide "r" has type "P.s"?
<Algebr>
So what's the easiest way to just call a javscript script
<Drup>
F and D implements HTML5_TOOLS
<Drup>
just use that if that's what you want to use
ptc has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
javamonn has quit [Remote host closed the connection]
seanmcl has joined #ocaml
WraithM has quit [Quit: leaving]
<Denommus>
is the "standard" for naming module types to use all caps?
<Drup>
It is a unfortunate convention, yes
<cmtptr>
disgusting
<Drup>
I don't disagree :p
c355E3B has joined #ocaml
<cmtptr>
even so, I'm going to think less of you for it
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
<Algebr>
Drup: Why does each service need to be matched up with a Eliom_registration/
<Drup>
instead of ?
<Algebr>
I don't know
<Drup>
basically, you first declare the access path
<Drup>
and then you say "hey, this access path trigger this function"
larhat has quit [Quit: Leaving.]
<Drup>
you declare them before registering them because it allows you to call them by name, instead of repeating the path every where you want to do a link, avoiding dead link and stuff
<Drup>
does that answer the question ?
<Algebr>
yes
ontologiae has quit [Ping timeout: 256 seconds]
<Algebr>
Drup: ocsigen's usage of post/gets termingology confuses me, I keep thinking they should be reversed
ollehar has quit [Quit: ollehar]
badkins_ has joined #ocaml
ingsoc has quit [Quit: Leaving.]
destrius has quit [Ping timeout: 250 seconds]
badkins has quit [Ping timeout: 264 seconds]
struktured has joined #ocaml
<Drup>
why O_o
ontologiae has joined #ocaml
<Drup>
they exactly map to the web terminology
<Algebr>
Drup: for Eliom_registration.String.register, what is the meaning of the second of that (string * string ) tuple?
ontologiae has quit [Ping timeout: 252 seconds]
<Drup>
The doc says: "Eliom service registration for services that returns "byte"-string contents. The page content is a pair (raw_content, content_type)."
mcclurmc has quit [Remote host closed the connection]
madroach has quit [Ping timeout: 264 seconds]
tianon has quit [Read error: Connection reset by peer]
tianon has joined #ocaml
madroach has joined #ocaml
nullcat_ has joined #ocaml
seanmcl has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<Algebr>
Is there a self contined example showing how to get a string out of Lwt_io.open_file?
nullcat_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]