<TwoNotes>
That will be very helpful. Sometimes the tutorial (and this is not unique to Pony) explains how something works but does not tell you "why would I ever want to use this?"
<SeanTAllen>
My slowly moving documentation march continues...
<darach>
SeanTAllen: Nice. Does gitbook not support syntax highlighting?
<SeanTAllen>
It uses highlight.js
<SeanTAllen>
Pony support for that needs to be added to highlight.js
<SeanTAllen>
There's an email about that on pony+dev trying to get someone to take that on. So far, no takers Darach.
<darach>
Oh. I might pick that up if I get some time next week and the MIPS port goes well this weekend
<SeanTAllen>
Excellent.
lispmeister has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
aturley has quit [Ping timeout: 240 seconds]
tm-exa has quit [Quit: Computer has gone to sleep]
<jeremyheiler>
does anyone maintain the brew package for ponyc?
copy` has joined #ponylang
Matthias247 has joined #ponylang
<SeanTAllen>
jeremyheiler: sblessing was working on getting infrastructure in place for nightlies etc
<SeanTAllen>
which from that would come doing releases such as brew
<jeremyheiler>
ok cool
<SeanTAllen>
if you want to step in and help. woot.
<SeanTAllen>
the general plan that i came up with was...
<SeanTAllen>
dont worry about a release until the pipeline for doing nightlies is taken care of
<SeanTAllen>
then releases should be "easy" to do after that
<jeremyheiler>
was just noticing that the brew recipe points to old repos (even tho they redirect)
<SeanTAllen>
that doing non automated releases sucks
<jeremyheiler>
that makes sense
<SeanTAllen>
PR away on that
aturley has joined #ponylang
<jeremyheiler>
current master doesn't build hello wordl anymore ;-(
<jemc>
jeremyheiler: just checked - it builds for me on Fedora Linux
<jemc>
with LLVM 3.6
<jemc>
what LLVM do you use?
<jeremyheiler>
i'm on osx, have both 3.6.2 and 3.8 installed, not sure which one was pulled in tho
<jeremyheiler>
it looks like the makefile picks 3.8 first
<jeremyheiler>
setting LLVM_CONFIG doesn't seem to make a difference
<jeremyheiler>
oops, it does matter. was setting it wrong
<jeremyheiler>
works with 3.6.2, not 3.8
<jemc>
jeremyheiler: seems like we need to add the compiing of all examples to travis.yml
<jemc>
we don't necessarily need to run the examples, but building them would catch things like this
<jemc>
(assuming the problem is not just limited to your install of LLVM and ponyc)
<jeremyheiler>
i'm not sure if anything other than the location of llvm-config matters
<jeremyheiler>
but yeah, i agree compilign them woudl probably help
<Scramble1ams>
jemc: Not overriding, overloading. So, I could have "fun foo(bar: A)" and "fun foo(baz: B)". Without overloading, I have to define them as "fun fooTakesA(bar: A)" and "fun fooTakesB(baz: B)".
<jemc>
Scramble1ams: ah, I see
<jemc>
Scramble1ams: actually we have some form of that, it just isn't in the tutorial yet
<jemc>
it's called "case methods" - I'll try to find the ticket for you
<jemc>
basically it compiles to a single method with a `case` statement inside
<jemc>
hm, can't find the ticket, but give your example a try, naming the argument the same in both cases instead of different (bar, baz)
<jemc>
the feature exists, but has some limits, I think
<jemc>
still needs documentation and tutorial coverage
<jemc>
(and possibly some improvements on usability)
_andre has quit [Quit: leaving]
<Scramble1ams>
jemc: Ah, good to hear! I was hoping to see a feature like that.
<Scramble1ams>
Wonder why the name of the argument matters, rather than just matching on types. That seems an odd protruberance.
<jemc>
remember that you can use `where` keyword in arguments to call arguments by name
<Scramble1ams>
Hmm, I'm not seeing how that would make something decidable that wouldn't be equally so by looking at the type?
<jemc>
the case methods are not resolved at compile time - they're resolved at runtime using `case`
<Scramble1ams>
Ah, right. Then back to my original question: Why no old-fashioned (compile time!) overloading? :-D Just figured there might be a technical justification against it since it wasn't included and that made me curious.
<jemc>
since I can't find the ticket and wasn't around at the time this was implemented - I'm not sure what the technical or philosophical justification would be for taking the "case method" approach
<jemc>
might be a good question for the mailing list if you want an answer
<SeanTAllen>
jeremyheiler: that builds for me. try rm -rf build/* and do it again. see note on the issue.
<jeremyheiler>
I am. I did make clean config=release between builds.
<SeanTAllen>
Do the Reno e
<SeanTAllen>
Remove
<SeanTAllen>
Not clean
<SeanTAllen>
Rm -rd
<SeanTAllen>
Rf
<SeanTAllen>
It will work
<SeanTAllen>
And I'll update README
<SeanTAllen>
And open issue
<SeanTAllen>
I meant to do this last week when I found it
<SeanTAllen>
But forgot
<jeremyheiler>
still doesn't work :-(
<jeremyheiler>
is setting LLVM_CONFIG the only thing that needs to be done when selecting with version of llvm to use?
<SeanTAllen>
I normally don't set that
<SeanTAllen>
What was the rm you ran?
<jeremyheiler>
rm -rf build
<jeremyheiler>
the default llvm is 3.6.2 for me; same for you?
<SeanTAllen>
Nope
<SeanTAllen>
3.8
<jeremyheiler>
nvm, llvm-config-3.8 is on my path
<jeremyheiler>
same issue when i build without hte LLVM_CONFIG flag
<jeremyheiler>
so when i build explicity with 3.6.2, it works
<SeanTAllen>
I build on latest OS X w 3.8 constantly
<SeanTAllen>
And no issues
<SeanTAllen>
When I'm back at computer I can detail what I have
<jeremyheiler>
cool
<SeanTAllen>
I had the issue you did once when going from one llvm to another and not blowing away build
<SeanTAllen>
How'd you install llvm ?
<jeremyheiler>
llvm38 directly with brew, llvm 3.6.2 indirectly via installing ponyc with brew
<jeremyheiler>
in that order
<jemc>
SeanTAllen: it makes sense that it would work for you with 3.8 - also works for jeremyheiler with 3.8
<jemc>
err whoops, had that backwards - strike that :P
<jeremyheiler>
heh
<SeanTAllen>
Remove 3.8
<SeanTAllen>
Install again
<SeanTAllen>
Then you'll be in the same order as me
<jeremyheiler>
install 3.8 again?
<SeanTAllen>
If it works, I'll know where to look
<SeanTAllen>
Ya
<jeremyheiler>
ok
<SeanTAllen>
And rm everything in build
<jeremyheiler>
uinstalled llvm38, compiled pony, compiled helloworld, good