<isd>
simpson: which subfield, ocap, programming lanugages, or...?
aeternity has joined #sandstorm
<simpson>
isd: In ocap, and also in PLT, since I don't really feel like Monte is *that* different from E.
samba_ has quit [Quit: WeeChat 1.7]
<isd>
I feel more qualified to talk about plt than ocap stuff.
<simpson>
I don't feel *qualified* to talk PLT. I just happen to have spent a lot of time building a language.
<isd>
oh?
<simpson>
Well, yeah. I'm not some PhD student producing a massive thesis like MarkM. I'm a musician dropout who just felt that a modern E dialect should be a thing.
<isd>
Is monte your project?
<simpson>
I'm gonna say that it's like 90% mine, based on code commits. I personally credit dash for writing a couple of the important compiler bits and also needling me to actually commit to learning the language fully.
<simpson>
I *thought* that we were going to be equal co-dictators, but nooo, he's got kids and stuff.
<isd>
That's how this stuff goes sometimes :p
<isd>
The number of times I've had a project parter flake out on me becuase of this silly life thing :P
<isd>
simpson: Poking through the docs and such. "Unlike Python, Haskell, and C, which use a mix of statements and expressions, Monte is an expression language, like Scheme." -- haskell is in the wrong category here -- no statements to speak of
harish_ has quit [Ping timeout: 260 seconds]
<isd>
Going afk for a bit.
Aurelius is now known as Aurelius`gym
aeternity has quit [Ping timeout: 240 seconds]
aeternity has joined #sandstorm
digitalcircuit has quit [Quit: Signing off from Quassel - see ya!]
digitalcircuit has joined #sandstorm
harish_ has joined #sandstorm
samba_ has joined #sandstorm
<kentonv>
isd: Well, the browser side had to be Javascript, obviously. What should the server have been in, if not Node? The popular options (Ruby, PHP, Python) are really no better, and would mean having a third main language in the codebase (in addition to C++ and Javascript).
<kentonv>
isd: I would maybe have been excited to do a server in C++ but I don't think people would like that idea from a security perspective.
<kentonv>
isd: Java? Ugh.
<kentonv>
isd: Meanwhile, I very much like Meteor's "reactive" approach (updating the UI "automatically" when the displayed data changes server-side). At the time we started, that was a fairly new thing to have built-in to a framework.
<kentonv>
with all that said, there is also the fact that Jade worked for Meteor before Sandstorm. But I wouldn't have chosen it if I didn't think it was a reasonable choice.
<isd>
There are enough languages that compile to javascript; I wouldn't take having it be the main client side language for granted.
<isd>
Go would have been pretty viable back then too. And I can think of some other stuff that make some sense to me at least until you start looking at attracting contributors.
<kentonv>
realistically, manipulating client-side UI from emscripted is not pretty. It's more intended for cases where you have opengl rendering code or headless code you want to run...
<kentonv>
emscripten*
<kentonv>
if I were starting over, though, I'd use TypeScript
<isd>
I'd point to elm, but I don't know that it was in quite the same shape 3 years ago.
<isd>
But yeah -- I'm probably biased by a perspective that has some better options.
<isd>
just because of passage of time.
<isd>
gopherjs is not bad. I'm told there are bindings to react...
<kentonv>
does elm have much of an ecosystem? It seems like a cool enough language but I'd be hesitant to choose a fringe language for fear of having to implement everything from scratch...
<simpson>
I wish I could offer you a cap-safe language in the same space as Java. :c
<kentonv>
Well... I dislike Go. >_>
<isd>
kentonv: fair enough.
<isd>
Re: elm, it's improving. At the time the answer was probably no.
<isd>
Go is a deeply flawed language. I get why not everybody likes it.
<kentonv>
yeah, and I'm also biased from having had to work with Rob Pike.... <_<
<isd>
I am probably the only person on the planet who works in Haskell and Go and likes both of them. Those communities don't see eye to eye.
<kentonv>
haha, yeah those seem like opposite ends of the spectrum...
<kentonv>
I think TypeScript is probably the right answer client-side since you get a type system but can easily interact with preexisting Javascript APIs. That said, I haven't really tried it yet.
<simpson>
The Haskell community is tough. I feel like I've taken more ideological insults on the snout in that community than anywhere else.
<isd>
I don't know that I believe there's a "right" answer. But I suspect that would certainly be a step up.
<simpson>
Well, if Monte had libraries and battle-testing and were a little speedier, then I would just tell you to write stuff in Monte and rejoice.
<simpson>
'Cause cap-safety is absolutely a killer feature right now.
<isd>
And yeah, there's definitely that element in the haskell community.
<isd>
simpson: I'd still prefer something with some type safety.
<isd>
These days there's also elixir/phoenix for the backend.
<isd>
I *think* the erlang vm's ordering semantics are basically e-order.
<isd>
assuming erlang process <-> object
<isd>
No types, still, but I'd be cozier with that than js.
<isd>
I'm also not sure I think there needs to be that much going on client-side. You've mostly got a border around an iframe, I don't know that server-side rendering is out of the question.
<isd>
kentonv: what's your opinion of rust?
<isd>
(Just in general, not as in this use case).
<kentonv>
isd: rust is exciting in that it basically encodes and enforces the style that I already use in C++14, but to be honest I haven't actually used it yet.
<isd>
I've only played with it.
<isd>
Toyed around with trying to build a sandboxy thing in it (just a late night diversion). Ended up submitting a patch to their libc bindings...
<simpson>
isd: I guess? You can build as much of a type system as you want. I'm wary of static typing since (IMO) it cannot encode The Network fully, which makes it less-than-helpful for any distributed system.
<isd>
I meant specifically static types.
<isd>
Not sure what you mean by not being able to "encode The Network"?
<simpson>
I mean that if you extend a program across two computers, then The Network fundamentally messes with attempts to prove correctness of your system by static type analysis of the two halves. It's not exactly a normal idea, and I haven't made it rigorous, but it seems obvious to me.
<isd>
simpson: I'm not talking about trying to do a fully-verified-provably-bug-free-for-this-abstract-definition-that-maybe-makes-sense-I-guess. I just want to be able to catch a respectable amount of bugs at compile time, and I want something that's strict enough to lean on for refactoring
<isd>
The latter part being I think *exactly* what kenton was alluding to in that commit message.
<simpson>
isd: Ah, sure. I do that in Monte today, using our gradual typing features.
<isd>
I'll have to look at the language a bit more then -- from the landing page it (a) sounds like it's entirely dynamically typed, and (b) sounds like it is ideologicially adamant about that.
<isd>
But I will have to look closer then.
<isd>
In any case, I need to get going. Later all.
<simpson>
Peace.
jemc has quit [Ping timeout: 255 seconds]
jemc has joined #sandstorm
aundro has quit [Ping timeout: 260 seconds]
samba_ has quit [Quit: WeeChat 1.7]
<ill_logic>
Do I remember correctly that virtualenvs should be "always include"ed?
<ill_logic>
by recommendation?
jemc has quit [Ping timeout: 255 seconds]
jemc has joined #sandstorm
jemc has quit [Ping timeout: 268 seconds]
leeola has quit [Quit: Connection closed for inactivity]
kentonv has quit [Remote host closed the connection]
harish_ has quit [Ping timeout: 260 seconds]
FredFredFred has joined #sandstorm
xming_ has joined #sandstorm
tg` has joined #sandstorm
ecloud has quit [Write error: Broken pipe]
tg has quit [Quit: Leaving]
FredFredFred_ has quit [Write error: Broken pipe]
xming has quit [Quit: No Ping reply in 180 seconds.]
Zertrin has quit [Quit: No Ping reply in 180 seconds.]
tg` is now known as tg
ecloud has joined #sandstorm
Zertrin has joined #sandstorm
harish_ has joined #sandstorm
gambatte has quit [Ping timeout: 258 seconds]
gambatte has joined #sandstorm
aundro has joined #sandstorm
yeehi_ has joined #sandstorm
yeehi_ has quit [Client Quit]
yeehi has joined #sandstorm
CcxWrk has quit [Ping timeout: 260 seconds]
CcxWrk has joined #sandstorm
yeehi has quit [Ping timeout: 260 seconds]
samba_ has joined #sandstorm
aundro has quit [Ping timeout: 260 seconds]
aundro has joined #sandstorm
samba_ has quit [Ping timeout: 252 seconds]
samba_ has joined #sandstorm
FredFredFred_ has joined #sandstorm
FredFredFred has quit [Ping timeout: 240 seconds]
FredFredFred has joined #sandstorm
FredFredFred_ has quit [Ping timeout: 240 seconds]
samba_ has quit [Ping timeout: 260 seconds]
yeehi has joined #sandstorm
yeehi_ has joined #sandstorm
yeehi has quit [Ping timeout: 268 seconds]
jemc has joined #sandstorm
bodisiw has joined #sandstorm
leeola has joined #sandstorm
yeehi has joined #sandstorm
yeehi_ has quit [Ping timeout: 252 seconds]
indoleringmatrix has quit [K-Lined]
M-hrjet has quit [K-Lined]
johndoe123[m] has quit [K-Lined]
eternaleye has quit [K-Lined]
thekyriarchy has quit [K-Lined]
simonv3 has quit [K-Lined]
hannes[m] has quit [K-Lined]
JonTheNiceGuy has quit [K-Lined]
davidar_ has quit [K-Lined]
gillisig has quit [K-Lined]
wakest has quit [K-Lined]
nolan_d has quit [K-Lined]
thejohnhenry[m] has quit [K-Lined]
davidar has quit [K-Lined]
srenatus[m] has quit [K-Lined]
JulianFoad[m] has quit [K-Lined]
hannes[m] has joined #sandstorm
FredFredFred_ has joined #sandstorm
FredFredFred has quit [Ping timeout: 260 seconds]
JulianFoad[m] has joined #sandstorm
srenatus[m] has joined #sandstorm
eternaleye has joined #sandstorm
davidar_ has joined #sandstorm
davidar has joined #sandstorm
simonv3 has joined #sandstorm
JonTheNiceGuy has joined #sandstorm
gillisig has joined #sandstorm
thejohnhenry[m] has joined #sandstorm
M-hrjet has joined #sandstorm
wakest has joined #sandstorm
thekyriarchy has joined #sandstorm
indoleringmatrix has joined #sandstorm
nolan_d has joined #sandstorm
johndoe123[m] has joined #sandstorm
yeehi has quit [Quit: Konversation terminated!]
yeehi has joined #sandstorm
FredFredFred has joined #sandstorm
FredFredFred_ has quit [Ping timeout: 240 seconds]
funwhilelost has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
yeehi_ has joined #sandstorm
yeehi has quit [Ping timeout: 264 seconds]
Jan\ has joined #sandstorm
Jan\ has quit [Read error: Connection reset by peer]
yeehi has joined #sandstorm
yeehi_ has quit [Ping timeout: 240 seconds]
samba_ has joined #sandstorm
<zarvox>
ill_logic: to answer your question from last night about virtualenvs: "yes, probably easiest to just alwaysInclude that path"
funwhilelost has joined #sandstorm
xet7 has quit [Quit: Leaving]
funwhilelost has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
samba_ has quit [Ping timeout: 245 seconds]
funwhilelost has joined #sandstorm
funwhilelost has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
nicoo has quit [Ping timeout: 260 seconds]
funwhilelost has joined #sandstorm
xet7 has joined #sandstorm
Telesight has joined #sandstorm
nicoo has joined #sandstorm
nwf has quit [Read error: Connection reset by peer]
nwf has joined #sandstorm
FredFredFred_ has joined #sandstorm
FredFredFred has quit [Ping timeout: 255 seconds]
Zarutian has joined #sandstorm
Aurelius`gym is now known as Aurelius
samba__ has joined #sandstorm
bodisiw has quit [Quit: Leaving]
Telesight has quit [Remote host closed the connection]
funwhilelost has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
funwhilelost has joined #sandstorm
Zarutian has quit [Quit: Zarutian]
samba__ has quit [Ping timeout: 240 seconds]
samba__ has joined #sandstorm
funwhilelost has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<isd>
So, I'm attempting to build ekam, and getting a test failure for capnp/capability-test. Is there a way to get it to give me more output? All I've got to go on now is the fact that the word "test" is red and the generic make failure message.
<isd>
separately, I investigated some warnings about strict aliasing in the output elsewhere, which pointed to e.g. this use of reinterpret_cast: