FreeBirdLjj has quit [Remote host closed the connection]
<jamesst20>
Drup: They use it just like a regular variable
<jamesst20>
Drup: Error: This expression has type 'a option but an expression was expected of type int Is what I get with the same code
<Drup>
the default value is None, so it's supposed to be an option, not an int
<jamesst20>
Drup: but h_limit is meant to be an height limit, there must be a way to use it as an int. I wouldn't have done it this way, but our teacher is forcing us
<jamesst20>
match .. Some (Some c) -> c. Got it. Weird syntax though
FreeBirdLjj has joined #ocaml
mengu has joined #ocaml
<jamesst20>
Drup: This is really how the parameter should look when used 0_0 ? ?h_limit:(Some (Some 3))
<jamesst20>
Drup: Why not just ?h_limit:(Some 3)
mengu has quit [Ping timeout: 240 seconds]
mengu has joined #ocaml
mengu has quit [Ping timeout: 240 seconds]
wtetzner has quit [Remote host closed the connection]
jabroney has quit [Quit: Leaving.]
FreeBirdLjj has quit [Remote host closed the connection]
govg has quit [Ping timeout: 260 seconds]
copy` has quit [Quit: Connection closed for inactivity]
jamesst20 has quit [Remote host closed the connection]
jamesst20 has joined #ocaml
jamesst20 has quit [Ping timeout: 240 seconds]
FreeBirdLjj has joined #ocaml
john51 has joined #ocaml
pon1980 has joined #ocaml
jeffmo_ has joined #ocaml
wagle_ has joined #ocaml
Enjolras_ has joined #ocaml
ohama has quit [Disconnected by services]
vbmithr has joined #ocaml
jmasseo_ has joined #ocaml
xaimus_ has joined #ocaml
ohama has joined #ocaml
shon_ has joined #ocaml
cthuluh_ has joined #ocaml
jstolare1 has joined #ocaml
def`_ has joined #ocaml
fds_ has joined #ocaml
profan_ has joined #ocaml
Cypi_ has joined #ocaml
AdmWiggin has joined #ocaml
haesbaer1 has joined #ocaml
stux|RC-only has joined #ocaml
shinnya has quit [Ping timeout: 260 seconds]
freehck has quit [Ping timeout: 260 seconds]
AlexRussia has quit [Ping timeout: 260 seconds]
_habnabit has quit [Ping timeout: 260 seconds]
jmasseo has quit [Ping timeout: 260 seconds]
rwmjones has quit [Ping timeout: 260 seconds]
jstolarek has quit [Ping timeout: 260 seconds]
Guest76058 has quit [Ping timeout: 260 seconds]
vbmithr_ has quit [Ping timeout: 260 seconds]
tokenrove has quit [Ping timeout: 260 seconds]
philtor has quit [Ping timeout: 260 seconds]
Soni has quit [Ping timeout: 260 seconds]
haesbaert has quit [Ping timeout: 260 seconds]
CcxWrk has quit [Ping timeout: 260 seconds]
StatelessCat has quit [Ping timeout: 260 seconds]
asm89 has quit [Ping timeout: 260 seconds]
zapu has quit [Ping timeout: 260 seconds]
eikke has quit [Ping timeout: 260 seconds]
jeffmo_ has joined #ocaml
jeffmo_ has quit [Changing host]
stux|RC has quit [Ping timeout: 240 seconds]
jeffmo has quit [Ping timeout: 240 seconds]
lukky513 has quit [Ping timeout: 240 seconds]
so has quit [Ping timeout: 240 seconds]
john51_ has quit [Ping timeout: 240 seconds]
cthuluh has quit [Ping timeout: 240 seconds]
troydm has quit [Ping timeout: 240 seconds]
nightmared_ has quit [Ping timeout: 240 seconds]
peddie has quit [Ping timeout: 240 seconds]
cheater2_ has quit [Ping timeout: 240 seconds]
jerith has quit [Ping timeout: 240 seconds]
hnrgrgr_ has quit [Ping timeout: 240 seconds]
Enjolras has quit [Ping timeout: 240 seconds]
pigoz has quit [Ping timeout: 240 seconds]
Johann has quit [Ping timeout: 240 seconds]
xaimus has quit [Ping timeout: 240 seconds]
shon has quit [Ping timeout: 240 seconds]
d0nn1e has quit [Ping timeout: 240 seconds]
wagle has quit [Ping timeout: 240 seconds]
calculemus has quit [Ping timeout: 240 seconds]
gnuyoda has quit [Ping timeout: 240 seconds]
def` has quit [Ping timeout: 240 seconds]
fds has quit [Ping timeout: 240 seconds]
frefity has quit [Ping timeout: 240 seconds]
profan has quit [Ping timeout: 240 seconds]
Cypi has quit [Ping timeout: 240 seconds]
gregoire has quit [Ping timeout: 240 seconds]
tianon has quit [Ping timeout: 240 seconds]
so_ has joined #ocaml
jeffmo_ is now known as jeffmo
nightmared_ has joined #ocaml
Soni has joined #ocaml
gnuyoda has joined #ocaml
shinnya has joined #ocaml
rwmjones has joined #ocaml
peddie has joined #ocaml
lukky513 has joined #ocaml
gregoire has joined #ocaml
zapu has joined #ocaml
pigoz has joined #ocaml
CcxWrk has joined #ocaml
StatelessCat has joined #ocaml
d0nn1e has joined #ocaml
_habnabit has joined #ocaml
troydm has joined #ocaml
tokenrove has joined #ocaml
Johann has joined #ocaml
frefity has joined #ocaml
philtor has joined #ocaml
AlexRussia has joined #ocaml
al-damiri has quit [Ping timeout: 255 seconds]
asm89 has joined #ocaml
ggherdov has quit [Ping timeout: 255 seconds]
cheater2 has joined #ocaml
john51 has quit [Read error: Connection reset by peer]
hnrgrgr has joined #ocaml
MorTal1ty has quit [Ping timeout: 258 seconds]
eikke has joined #ocaml
john51 has joined #ocaml
kandu has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
jerith has joined #ocaml
kandu is now known as Guest90511
al-damiri has joined #ocaml
MorTal1ty has joined #ocaml
ggherdov has joined #ocaml
ggherdov has quit [Excess Flood]
ggherdov has joined #ocaml
jamesst20 has joined #ocaml
mengu has joined #ocaml
lopex has quit [Ping timeout: 240 seconds]
lopex has joined #ocaml
mengu has quit [Ping timeout: 240 seconds]
so_ has quit [Ping timeout: 260 seconds]
eikke has quit [Ping timeout: 260 seconds]
Johann has quit [Ping timeout: 260 seconds]
eikke has joined #ocaml
cheater2_ has joined #ocaml
jerith_ has joined #ocaml
lopex has joined #ocaml
lopex has quit [Changing host]
peddie has quit [Ping timeout: 240 seconds]
jerith has quit [Ping timeout: 240 seconds]
cheater2 has quit [Ping timeout: 240 seconds]
hnrgrgr has quit [Ping timeout: 240 seconds]
hnrgrgr has joined #ocaml
so has joined #ocaml
Johann has joined #ocaml
peddie has joined #ocaml
rgrinberg has quit [Ping timeout: 260 seconds]
ygrek has quit [Ping timeout: 260 seconds]
al-damiri has quit [Quit: Connection closed for inactivity]
FreeBirdLjj has joined #ocaml
jamesst20 has quit [Remote host closed the connection]
jamesst20 has joined #ocaml
jamesst20 has quit [Ping timeout: 268 seconds]
slash^ has joined #ocaml
MercurialAlchemi has joined #ocaml
bobbypriambodo has joined #ocaml
bobbypriambodo has quit [Client Quit]
mengu has joined #ocaml
mengu has quit [Ping timeout: 240 seconds]
nahra` has quit [Quit: ERC (IRC client for Emacs 25.1.1)]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
FreeBird_ has joined #ocaml
mengu has joined #ocaml
moei has quit [Quit: Leaving...]
moei has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 240 seconds]
govg has joined #ocaml
freusque has joined #ocaml
FreeBird_ has quit [Remote host closed the connection]
nahra has joined #ocaml
FreeBirdLjj has joined #ocaml
jamesst20 has joined #ocaml
jamesst20 has quit [Ping timeout: 240 seconds]
djellemah_ is now known as djellemah
_whitelogger has joined #ocaml
TheLemonMan has joined #ocaml
Simn has joined #ocaml
abeaumont has joined #ocaml
AlexDenisov has joined #ocaml
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #ocaml
jnavila has joined #ocaml
mengu has quit [Quit: Leaving...]
fraggle_ has quit [Remote host closed the connection]
octarin has joined #ocaml
shinnya has quit [Ping timeout: 240 seconds]
rand__ has joined #ocaml
fraggle_ has joined #ocaml
octarin has quit [Ping timeout: 255 seconds]
octarin has joined #ocaml
octarin has joined #ocaml
octarin has quit [Changing host]
FreeBirdLjj has quit [Remote host closed the connection]
jamesst20 has joined #ocaml
FreeBirdLjj has joined #ocaml
jamesst20 has quit [Ping timeout: 255 seconds]
mfp has joined #ocaml
FreeBirdLjj has quit [Ping timeout: 240 seconds]
abeaumont has quit [Ping timeout: 260 seconds]
<jerith>
Leonidas: I've looked through your review, but I have to head out for a bit this afternoon. I should have an update for you later today.
haesbaert has joined #ocaml
moei has joined #ocaml
moei has quit [Read error: Connection reset by peer]
jerith_ is now known as jerith
haesbaer1 has quit [Quit: leaving]
snhmib has joined #ocaml
bobbypriambodo has joined #ocaml
cbot has quit [Quit: Leaving]
TheLemonMan has quit [Remote host closed the connection]
Cypi_ is now known as Cypi
octachron has joined #ocaml
infinity0 has quit [Remote host closed the connection]
infinity0 has joined #ocaml
TheLemonMan has joined #ocaml
jnavila has quit [Ping timeout: 255 seconds]
fre has joined #ocaml
tane has joined #ocaml
<Leonidas>
jerith: awesome. I've recently checked the releases and the last one was 3 years ago and there's > 100 commits since that. Time to create the a new release once your changes are in :)
<Leonidas>
(and fix up the bugs, but your testsuite will help a lot)
shinnya has joined #ocaml
fraggle_ has quit [Ping timeout: 255 seconds]
fraggle_ has joined #ocaml
profan_ is now known as profan
silver has joined #ocaml
jnavila has joined #ocaml
bobbypriambodo has quit [Ping timeout: 260 seconds]
jnavila has quit [Ping timeout: 240 seconds]
tobiasBora has quit [Ping timeout: 240 seconds]
_y has quit [Ping timeout: 264 seconds]
jamesst20 has joined #ocaml
<jerith>
Leonidas: I think I've addressed everything in the PR now.
<jerith>
[@@ocaml.deprecated] is really hard to find docs for.
jamesst20 has quit [Ping timeout: 260 seconds]
abeaumont has joined #ocaml
P4Titan has joined #ocaml
<P4Titan>
Hi all. I define a module A and then module B. Within module B, I reference the `type t` I defined in module A, however OCaml complains that "it is not visible in the current scope". I don't want to use A.<stuff> everywhere. What is good OCaml practice for this issue.
<jerith>
You can use "let open A in" to open the module in a local scope.
<jerith>
And "A.(<expr>)" to have it open for just one expression.
<P4Titan>
where in the Module would I use let open A in
<jerith>
In a function that need things from module A.
<P4Titan>
ic
<P4Titan>
but if I use this module everywhere, I should open A at the top of Module B
<P4Titan>
there's no other way
orbifx has joined #ocaml
<jerith>
If you need things from A all over the place in B, it's probably okay.
<P4Titan>
One more question
<P4Titan>
if I want to perform checks over a record type, ie: have an `is_valid` function that tests if a record is valid in a whole bunch of different ways
<P4Titan>
How could I write a bunch of sequential if statements cleanly
<P4Titan>
my point is, when doing a let check_a = ... in doesn't evaluated then and there, but when it is first used
<P4Titan>
is that the case?
<P4Titan>
or should I do let check_a () = ...
tane has quit [Quit: Leaving]
<jerith>
List.for_all (fun a -> a) [Uint256.leq hash target; BatList.for_all ((=) true) @@ BatList.map Transaction.is_valid blk.txs; ...]
<jerith>
And then you probably put one condition per line or something.
<jerith>
If you want short circuiting, you'll probably need the && expression or write your own recursive function.
<orbifx>
jerith: for all the elegance of that solution, it's probably not simple for his case
<orbifx>
P4Titan: without () it gets evaluated at that point
<P4Titan>
yeah
<jerith>
And in both cases, you'll need to put each expression in a function.
<P4Titan>
and then call them all as check_a () && check_b ()
<orbifx>
if you add a unit parameter, you will need to provide a unit before it's evaluated
<jerith>
If you're doing that, I'd probably just write "let check_a blk = ...".
<P4Titan>
jerith: what does that do differently than check_a ()
<P4Titan>
I've got `blk` defined from `is_valid`
<orbifx>
P4Titan: if you don't care much about someone understanding what each expression is for, or if they are clear enough, you can just inline them
<jerith>
Then you can call them separately if you want, and there's not much difference between passing () and passing blk.
<orbifx>
and putt each expression in a line
<P4Titan>
I suppose. I'm not quite understanding what you mean
<P4Titan>
are you two referring to the same thing?
<jerith>
I think we're talking about different things.
<jerith>
Well, similar things.
<jerith>
Let me rewrite your example in a couple of the ways I'm talking about.
<orbifx>
P4Titan: jerith's approach is more flexible and contains more constructs to provide this flexibility
<orbifx>
my approach the simple, plain, no frills way of doing some boolean operations
<P4Titan>
yea
<orbifx>
I haven't looked at what you are trying to achieve to recommend either
<orbifx>
you should use jerith's if you need something extendable and dynamic
<orbifx>
and what I recommended if you have a very fixed and simplex algorithm
<companion_cube>
List.fold_left (fun n b->if b then n+1 else n) 0
tane has joined #ocaml
shinnya has joined #ocaml
AlexDenisov has joined #ocaml
AlexDenisov has quit [Client Quit]
octachron has joined #ocaml
<Leonidas>
jerith: how about naming it method_ or method'? meth sounds kinda like we're dealing with drugs ;)
<Leonidas>
jerith: apart from that I consider it ready for merging
<Leonidas>
also, who would've known that 'method' is a keyword in a functional language? :D
<Leonidas>
(ok well, probably me, since I've used webmachine and that uses methods)
octarin has quit [Ping timeout: 240 seconds]
octarin has joined #ocaml
octarin has joined #ocaml
octarin has quit [Changing host]
jerme_ has left #ocaml [#ocaml]
fraggle_ has quit [Ping timeout: 255 seconds]
tizoc has quit [Read error: Connection reset by peer]
spew has quit [Ping timeout: 260 seconds]
tizoc has joined #ocaml
SpiceGuid has joined #ocaml
SpiceGuid has quit [Quit: ChatZilla 0.9.92 [SeaMonkey 2.46/20161213183751]]
SpiceGuid has joined #ocaml
shinnya has quit [Ping timeout: 255 seconds]
octarin has quit [Ping timeout: 240 seconds]
octarin has joined #ocaml
octarin has joined #ocaml
octarin has quit [Changing host]
AlexDenisov has joined #ocaml
jamesst20 has quit [Remote host closed the connection]
jamesst20 has joined #ocaml
ygrek has joined #ocaml
rpg has joined #ocaml
jamesst20 has quit [Ping timeout: 260 seconds]
rpg has quit [Ping timeout: 268 seconds]
rpg has joined #ocaml
octarin has quit [Ping timeout: 260 seconds]
<Drup>
octachron: why are ..( and .<( problematic ? I feel like they wouldn't conflict at all
abeaumont has joined #ocaml
octarin has joined #ocaml
octarin has joined #ocaml
octarin has quit [Changing host]
AlexDenisov has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<octachron>
Drup, they would probably works with some extra work at the parser level to recast the DOTOP token to either DOTDOT or DOT LESS
jamesst20 has joined #ocaml
<octachron>
Drup, but I was quite unconvinced by either ".." and ".<" , and not altering the rest of the parser sounded like a better alternative
<Drup>
You don't even need to do that if you recognize the delimiter directly in the lexer
<Drup>
the token would be DOTOPPAREN, paren included
<octachron>
Drup, good point
<Drup>
It would prevent writing "foo .~ (*potato*) [ x ]"
<Drup>
which is probably a good thing
<thizanne>
- : int = 0
<thizanne>
wait so we can.
<thizanne>
utop # [|0|] . ( (*potato*) 0);;
<Drup>
"a" (**) . (**) [ (**) 0 (**) ] ;;
<Drup>
This is correct OCaml.
<thizanne>
I don't believe in anything anymore
<Drup>
thizanne: that too: List (**) . (**) length ;;
<Drup>
OCaml is very space insensitive :p
<flux>
I imagine the same is true for most any language?-o
<jamesst20>
In an array Match, x::x’::r, what does x' means ? x is first element, r is the rest, but what is x'
<Drup>
jamesst20: the second element
ygrek has quit [Ping timeout: 260 seconds]
<flux>
' is just part of the name
<jamesst20>
Drup: Can we use that syntax for as many elements as we want ? :O
<flux>
not sure, but yes for any practically human-written code ;)
<jamesst20>
Thanks :D
groovy2shoes has quit [Ping timeout: 245 seconds]
<SpiceGuid>
souper...
SpiceGuid has quit [Quit: ChatZilla 0.9.93 [SeaMonkey 2.46/20161213183751]]
<octachron>
Drup, I will think about it; aka it is hard to choose between edge cases that I hope will stay fully theoretical
<Drup>
octachron: well, I don't see any harm in .<( )
<Drup>
or, at least, no more than .>( )
<octachron>
Drup, quite true; even if I could argue for the principle that .<( should be read as . <( and closed with )> but this is a absolutely minor point
<Drup>
(occasional hobby of mine: make emoji operators) .>(8-0)
<octachron>
Drup, I see that you also appreciated the acrobatics needed to extract back the operator in pprintast.ml
<Drup>
hum, that could be a good argument for not adding <
<Drup>
If later on, we want yet another kind of delimiters
<Drup>
octachron: even for regular operators, it's kinda ridiculous. But for mixfixs .. blerg
<octachron>
( speaking of delimiters, I just learned about ﴾ ﴿ )
groovy2shoes has joined #ocaml
<Drup>
octachron: vade retro, unicode
<octachron>
Drup, are you implying that you don't want flowered parentheses near your code editor? I am positively shocked :p
rgrinberg has joined #ocaml
<thizanne>
nooo no unicode pls
<thizanne>
there are far too much arrow symbols
<companion_cube>
:D
ygrek has joined #ocaml
wtetzner has joined #ocaml
<octachron>
thizanne, playing the devil's advocate: there are far more english words, and I understand better the difference betwen ⇒ and ⇀ than the difference between cerulean and azured
<thizanne>
☺
<thizanne>
.☺()
<Drup>
.« »
<octachron>
or ⟨a:int⟩ rather than <a:int>
<Drup>
With a sufficient amount of utf8, you can reach the point where the latex and the OCaml code related to your article are indistinguishable. :D
AlexDenisov has joined #ocaml
<flux>
in my MsC paper I had some fragments of OCaml.. the professor thought they were pseudo code.
<octachron>
Drup, only using greek characters at the type level does not sound like a very attractive feature
infinity0 has quit [Ping timeout: 268 seconds]
<Drup>
octachron: that's because you don't have the right XCompose shortcuts
tane has quit [Remote host closed the connection]
<Drup>
I have <compose> + <g> + letter = greek letter
infinity0 has joined #ocaml
<octachron>
Drup, not really, I just don't read ελλενιγ words very fluently
<octachron>
and learning to fluently read greek words for the sake of programming languages is an interesting twist to say the least
infinity0 has quit [Remote host closed the connection]
<flux>
..the more so for a person who wants to study a new language.
<Drup>
well, OCaml programmers have to learn frenglish to interact with the community, what's the difference ;)
spew has joined #ocaml
<octachron>
Drup, and what about the community in 日本 ?
<Drup>
true
<Drup>
(you can still find OCaml questions in japanese on stack overflow on a regular basis)
jamesst20 has quit [Remote host closed the connection]
<Drup>
Given Bjarne Stroustrup's history, I can't even tell if it's a joke or not
<Drup>
ah, 1 April
jamesst20 has joined #ocaml
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
tane has joined #ocaml
jamesst20 has quit [Ping timeout: 240 seconds]
infinity0 has joined #ocaml
infinity0 has quit [Remote host closed the connection]
zv has quit [Ping timeout: 268 seconds]
rpg has quit [Ping timeout: 240 seconds]
infinity0 has joined #ocaml
rpg has joined #ocaml
copy` has quit [Quit: Connection closed for inactivity]
tane has quit [Quit: Leaving]
kakadu has joined #ocaml
nightmared_ has quit [Quit: WeeChat 1.7]
AlexDeni_ has joined #ocaml
AlexDenisov has quit [Read error: Connection reset by peer]
jamesst20 has joined #ocaml
foo30303 has joined #ocaml
jamesst20 has quit [Ping timeout: 260 seconds]
yomimono has joined #ocaml
cthuluh_ is now known as cthuluh
cbot has joined #ocaml
rpg has quit [Ping timeout: 255 seconds]
<octachron>
I wonder for how many years ocamldoc debug mode has been broken
spew has quit [Ping timeout: 260 seconds]
ygrek has quit [Ping timeout: 240 seconds]
jnavila has joined #ocaml
slash^ has quit [Read error: Connection reset by peer]
octarin has quit [Ping timeout: 240 seconds]
<jerith>
Leonidas: Were you sitting there staring at github waiting for me to push a commit? :-P
<Leonidas>
jerith: :D nah, but my phone rings everytime I get a new email and merging is a task I can do without interrupting my other work
octarin has joined #ocaml
octarin has joined #ocaml
octarin has quit [Changing host]
<jerith>
You must get a *lot* less email than me.
<Leonidas>
I filter most of it away, though I still have a queue of 30 mails or so to deal with :(
<Leonidas>
like 25 rather average quality nodejs PRs
<jerith>
I wonder why my phone isn't going bloop when I'm mentioned on IRC.
<jerith>
Maybe IRCCloud's push notifications are broken at the moment.
<haesbaert>
jerith: I thought the same :D
mengu has joined #ocaml
ollehar has joined #ocaml
<jerith>
Leonidas: Should I rebase my tests branch (well, replace it with the already rebased verion I have handy) or open a PR for the session cache?
<jerith>
Or both?
<jerith>
I'm not sure what rebasing will do to the existing discussion on the tests. Probably not much, though -- the tests themselves don't change all that much.
<Leonidas>
jerith: I would first prefer the test branch. Don't know about the session cache, that's probably a bigger can of worms to do expiration correctly.
<Leonidas>
and maybe it would be useful to be able to serialize that cache somehow
micro__ has quit [Ping timeout: 245 seconds]
micro_ has joined #ocaml
micro_ is now known as Guest86370
sillyotter has joined #ocaml
<jerith>
Force-pushed the tests branch. I hope they still pass. :-P
<jerith>
(I should probably have run them first. Or even just compiled them.)
<Leonidas>
travis will let us know :D
<jerith>
Also, it would help if I ran these commands in the workspace with slacko in it rather than the workspace with the work puppet repo in it.
<jerith>
There, fixed.
* jerith
mutters under his breath about horrible maintainers making him rename functions and break all the things.
<jerith>
(The fix was about fifteen seconds of search/replace. Such hardship. I am truly cursed to be working on this code.)
sillyotter has quit [Quit: WeeChat 1.4]
<Leonidas>
heh
<jerith>
Oh, right. It's just gone midnight. That's why my sense of humour has gone all weird and I'm forgetting to run tests before pushing.
mengu has quit [Quit: Leaving...]
<Leonidas>
the good news is that said maintainers have researched the cohttp dependencies and found out something useful.
<jerith>
Yay for useful things.
<Leonidas>
jerith: which TZ are you?
<jerith>
UTC+2
<jerith>
(Cape Town, South Africa.)
<Leonidas>
that's a good time zone for camling :D
<jerith>
It is indeed.
<jerith>
Turns out it's also a good timezone for hacking on pypy, which I do very occasionally.
<jerith>
Yay for things based mostly in Europe rather than the US. :-)
* Leonidas
:)
cbot_ has joined #ocaml
<jerith>
Regarding deps, I generally prefer to leave them as broad as possible for libraries (it doesn't matter so much for applications) in case my libraries are being used alongside other libraries that share dependencies but have different version requirements.
<jerith>
I have been bitten by this before (although not in ocaml), where one of my deps requires an unnecessarily new version of something and another version requires an older version.
cbot has quit [Ping timeout: 240 seconds]
<Leonidas>
jerith: I see your point, at work we often have pretty crazy project.clj files fixing up all kinds of issues.
<jerith>
I don't think that's really a big deal here, but I was careful to only have the conduit requirement on the tests. For non-test builds, we don't depend on conduit and just get it thorugh cohttp.
<Leonidas>
jerith: yes, fair enough.
<jerith>
ollehar: Yeah. I don't have your blog server running on port 4000 on my laptop. ;-)
<Leonidas>
reading it now and it is quite interesting, thanks for that link ollehar
<ollehar>
jerith: ;)
<ollehar>
Leonidas: feel free to suggest changes or anything
octarin has quit [Quit: leaving]
<ollehar>
the discussion part is not finished yet
jnavila has quit [Remote host closed the connection]
<Leonidas>
ollehar: why do you need to name the types to get Tot int inferred?
<Leonidas>
also typo: "refinment"
<jerith>
I started learning F* a while ago, but I got to the bit where it was getting hard and then work stuff ate all my time.
<ollehar>
thanks for typo check
arj has joined #ocaml
<ollehar>
Leonidas: you don't
<ollehar>
(have to name the types)
<ollehar>
hm hm
<Leonidas>
ollehar: "turorial"
<jerith>
ollehar: "True and true are in fact not the same things in F\*" has a stray \ in it.
<ollehar>
yeah!
<Leonidas>
also in the == and = part
<ollehar>
vim can't handle markdown so good
<jerith>
In fact, I think all the F*s in info blocks do.
<ollehar>
and I need to install a spellcheck plugin...
<Leonidas>
typestate is nice, I emulated it in a crappy way in ocaml once
<jerith>
ollehar: That post looks really interesting. I'll have to read it tomorrow when I have more brain.
<ollehar>
jerith: thanks! :)
<ollehar>
Leonidas: I tried, but it couldn't handle mutable variables
<ollehar>
you'd have to wrap it in a monad (tip by gache)
<ollehar>
in F*, everything is already wrapped in monads (as I understand it)
* jerith
goes to bed.
<ollehar>
\o
AlexDeni_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
AlexDenisov has joined #ocaml
AlexDenisov has quit [Client Quit]
AlexDenisov has joined #ocaml
Jtj has joined #ocaml
AlexDenisov has quit [Client Quit]
AlexDenisov has joined #ocaml
<Leonidas>
gn8
AlexDenisov has quit [Client Quit]
jamesst20 has joined #ocaml
jamesst20 has quit [Ping timeout: 260 seconds]
planet_en has joined #ocaml
kakadu has quit [Remote host closed the connection]
rand__ has quit [Quit: leaving]
arj has quit [Quit: Leaving.]
ygrek has joined #ocaml
jamesst20 has joined #ocaml
rpg has joined #ocaml
foo30303 has quit [Quit: leaving]
jamesst20 has quit [Remote host closed the connection]
ski has joined #ocaml
rgrinberg has quit [Ping timeout: 260 seconds]
<nicoo>
o/ jerith
<jcloud>
why do you need to use both #directory and #load in order to use a module from some package in the toplevel? (I know you can use #require as a shorthand)
<jcloud>
the documentation says #load loads the object files into memory and that #directory only affects the search path
<jcloud>
but what do I need to search for if I have already loaded my module into memory?
<nicoo>
Since you mentioned PyPy, I mentioned the unspeakable GC patches to gasche :3
<nicoo>
jerith: ^
yomimono has quit [Quit: Leaving]
<octachron>
jcloud, the #directory is used by the toplevel to find *cmi* files
<jcloud>
octachron: cool, that makes sense. thank you!
abeaumont has quit [Ping timeout: 240 seconds]
rpg has quit [Ping timeout: 240 seconds]
Simn has quit [Read error: Connection reset by peer]