jemc changed the topic of #ponylang to: Welcome! Please check out our Code of Conduct => https://github.com/ponylang/ponyc/blob/master/CODE_OF_CONDUCT.md | Public IRC logs are available => http://irclog.whitequark.org/ponylang | Please consider participating in our mailing lists => https://pony.groups.io/g/pony
<jdhorwitz> My struggle has been going from writing almost all FP for a long while and grasping the OO aspects of Pony as well BertolucciTalks
jaro has quit [Ping timeout: 240 seconds]
khan has joined #ponylang
khan has quit [Ping timeout: 240 seconds]
khan has joined #ponylang
PrsPrsBK has quit [Quit: PrsPrsBK]
PrsPrsBK has joined #ponylang
khan_ has joined #ponylang
khan has quit [Ping timeout: 240 seconds]
khan_ is now known as khan
aturley has quit [Ping timeout: 268 seconds]
endformationage has quit [Quit: WeeChat 1.9.1]
aturley has joined #ponylang
aturley has quit [Ping timeout: 260 seconds]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
alxs has joined #ponylang
alxs has quit [Client Quit]
xllndr|wrk has quit [Quit: Leaving]
xllndr|wrk has joined #ponylang
alxs has joined #ponylang
khan has quit [Remote host closed the connection]
khan has joined #ponylang
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
alxs has joined #ponylang
_andre has joined #ponylang
khan has quit [Quit: khan]
alxs has quit [Ping timeout: 256 seconds]
aturley has joined #ponylang
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
aturley has quit [Read error: Connection reset by peer]
aturley has joined #ponylang
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
alxs has joined #ponylang
jaro has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
jaro has quit [Ping timeout: 260 seconds]
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
endformationage has joined #ponylang
inoas has joined #ponylang
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
alxs has quit [Client Quit]
inoas has quit [Quit: inoas]
inoas has joined #ponylang
<jdhorwitz> Do we have any Pony stickers or tshirts available for purchase?
<SeanTAllen> jdhorwitz: no, there used to be stickers available through sticker mule but they got rid of the "have your own store option"
<jdhorwitz> Is the image for that still available?
<SeanTAllen> there were two... the pony logo and the main the mascot
<SeanTAllen> which were you interested in?
<jdhorwitz> Probably both, I was thinking of maybe running a test run of each through redbubble or something similar to see how they turn out.
<SeanTAllen> main, the mascot, is freely available for use. pony logo not so much, so, what were you planning to do with the logo? create some stickers?
<jdhorwitz> the mascot is perfect then, yeah, just create some stickers
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
<SeanTAllen> jdhorwitz: do i have your email address? im not finding
<SeanTAllen> shoot me an email and i can get you the Main svg
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
alxs has joined #ponylang
<jdhorwitz> jdhorwitz@gmail.com
<SeanTAllen> sent jdhorwitz
<jdhorwitz> Thank you! Once I get it all figured out I can send some out to people who are interested
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
<vaninwagen> If you find a good source for getting stickers printed, maybe we can do a collective order, jdhorwitz? I am very interested in getting a bunch of stickers too
<jdhorwitz> Sure, let me do some research and see what I can get together
<jdhorwitz> Are people interested in T-Shirts as well?
alxs has joined #ponylang
<vaninwagen> I am
<jdhorwitz> Cool, let me look into stickers/t-shirts and then I can put together a group order
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
alxs has quit [Client Quit]
inoas has quit [Quit: inoas]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
inoas has joined #ponylang
inoas has quit [Client Quit]
<vaninwagen> Great! They even have mugs. I need some with the pony logo!
<jdhorwitz> And apparently they send me money or something if we sell a certain amount, which I would donate to where ever the community decided or how to best help Pony
alxs has joined #ponylang
xllndr has joined #ponylang
_whitelogger has joined #ponylang
<SeanTAllen> jdhorwitz: what do you mean?
<SeanTAllen> are you talking about Darach and Sylvan's talk?
<jdhorwitz> Yeah
<SeanTAllen> i dont remember what they said
<SeanTAllen> but at some point Darach decided that OTP in Pony didnt make much sense
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
aturley has quit [Quit: aturley]
alxs has joined #ponylang
alxs has quit [Client Quit]
alxs has joined #ponylang
alxs has quit [Quit: Computer's gone to sleep. ZZZzzz…]
xllndr has quit [Quit: Leaving]
_andre has quit [Quit: leaving]
aturley has joined #ponylang
alxs has joined #ponylang
<qweo> Would you recommend Pony for a programming newbie? Granted, it doesn't have a lot of docs nor libraries, nor much tooling, but it's the only language besides Rust with such an advanced memory management model, and Rust is really really complex
alxs has quit [Client Quit]
<SeanTAllen> qweo: i wouldnt not recommend it. i wouldnt not recommend rust either.
<SeanTAllen> this is what i would say
<SeanTAllen> programming is comlex
<SeanTAllen> some languages attempt to shield you from complexity
<SeanTAllen> and in the process make some things easy and some things much harder
<SeanTAllen> its a matter of tradeoffs.
<SeanTAllen> qweo: i think it depends in the end... what are you interested in doing as you learn to program?
<SeanTAllen> websites?
<SeanTAllen> network servers?
<SeanTAllen> games?
<SeanTAllen> mobile apps?
<SeanTAllen> i will say this, every "standard usage" programming language is in some ways bad to learn to program with.
<SeanTAllen> I think Racket and Smalltalk are two of the better languages to learn to program with.
<SeanTAllen> in the end, tiny little languages that each a concept or two are better than full blown "for use in industry" languages for learning.
<qweo> Potentially many things, from basic servers to scripting for games (Lua would be a better choice here obviously) to systems programming (like writing a basic environment not unlike what eighties micros had, though for that specifically, Forth looks more promising :-) )
<qweo> Lisp and Smalltalk captured my attention indeed. So you think it's more reasonable to go with one of those?
<SeanTAllen> Forth was my first "real language". It is certainly an interesting way to learn.
<SeanTAllen> What makes forth, racket and smalltalk "good" languages to learn with is that they are small languages
<qweo> Is Moore's book on designing/implimenting Forth available anywhere still?
<SeanTAllen> and you can focus more on learning concepts rather than the clangauge
<qweo> C++ is full of concepts and is alltogether too much to learn :-)
<SeanTAllen> the really important things to learn are how to structure a program and there, simple languages can help in the beginning
<SeanTAllen> c++ is several languages at this point
<SeanTAllen> you are better off learning with something simpler.
<SeanTAllen> you could learn with Pony. it will make you aware of some concerns much earlier than other languages and that can be hard.
<SeanTAllen> because its a language designed for concurrency, you'd be learning about abstraction and concurrency at the same time
<SeanTAllen> there's a con to that... learning each can be harder
<SeanTAllen> but, there's a pro to, you'll be learning both at the same time and there are plenty of abstractions that you learn in languages like ruby that are really bad for concurrency
<SeanTAllen> i would suggest picking a project that you want to do, and from that pick a tool to do it with
<SeanTAllen> i'd be happy to make language suggestions based on the project you select
<qweo> Is there any point in learning e. g. CSP earlier by the way?
<SeanTAllen> in the sense that it gets you learning about concurrency, yes
<SeanTAllen> in the same way learning about the actor model would
<SeanTAllen> or learning about threads and locks and what not would
<SeanTAllen> learning csp in particular, no i dont think so.
aturley has quit [Quit: aturley]
<SeanTAllen> serial programming, concurrenct programming and distributed programing are all very different
<SeanTAllen> however, most folks learn serial then try to apply the same patterns to concurrent and distributed
<qweo> So Scheme is a good "generic" pick I see. Besides, "Structure and implementation of computer programs" seemed a fun read :-)
<SeanTAllen> I prefer the "little schemer" series of books
<SeanTAllen> racket is a good learning language
<SeanTAllen> its very small
<SeanTAllen> and flexible and allows you to build lots of things up slowly
<qweo> How is distributed programming diffrent? Don't you just learn consensus models and whatnot then do essentially concurrent programming on top?
<SeanTAllen> not really no
<SeanTAllen> for example, programming with threads and locks is concurrenct programming
<SeanTAllen> and the patterns you learn there will not apply to distributed programming
<SeanTAllen> nor will CSP
<qweo> Won't it?
<SeanTAllen> actor model programming otoh, the patterns apply well to distributed programming
<SeanTAllen> i can do concurrent programming without any message passing
<SeanTAllen> i have to do message passing of some sort when doing distributed programming
<SeanTAllen> if you enjoy SICP, its a good way to learn
<qweo> Are functional languages inherently more suited to distributed programming? I know ~ zero about either
<SeanTAllen> no
<SeanTAllen> they arent worse either
<qweo> I've read the intro to either "Little Lisper" or "Little Schemer", seemed a fun book too
<SeanTAllen> i enjoyed both
<SeanTAllen> but read them after i already knew lisp
<SeanTAllen> my biggest piece of advice would be...
<SeanTAllen> when learning, most people gravitate towards languages that are "easy"
<SeanTAllen> often that easy is a lie
<SeanTAllen> for example, its easy to get C programs to compile
<SeanTAllen> but its not really easy
<SeanTAllen> there's a lot of hard work debugging segfaults that come from incorrect memory handling, pointer errors and what not
<SeanTAllen> a language like Rust or Ada is much harder to get to compile
<SeanTAllen> but
<SeanTAllen> protects you from those issues
<SeanTAllen> dont let "difficult" in the language dissuade you from learning it
<qweo> Ada seemed nice too. It was enough to dissuade Hoare himself though :-)
<qweo> But it's got one of the nicest syntaces, that's for sure. Only Sisal seemed nicer to me
aturley has joined #ponylang
<qweo> Speaking of projects, I wanted to do a messaging system that would enable access via multiple protocols, e. g. IMAP, NNTP (I believe Cyrus already does that?) and whatnot. Come to think of it, using existing implementations with some, like, shell glue code must be the best option :-)
aturley has quit [Ping timeout: 264 seconds]
<jdhorwitz> The Little Schemer is
<jdhorwitz> Excellent
<jdhorwitz> That is good as well
<qweo> Thanks for the link!
<jmiven> the released version is now at http://htdp.org/2018-01-06/Book/ it seems more recent
<jdhorwitz> Even better!
<jdhorwitz> If anyone can learn programming from SICP as a beginner I bow down to you
<qweo> Define "beginner". I tried to learn C beforehand, some Python, Ruby too, and glanced at other stuff as well. Haven't written anything but a (very) poor-man's-APT shell script though :-)
<jmiven> HtDP is great, I would recommend it to anyone. It is a textbook, though and can be a bit daunting on occasion. If you feel you're stalling I would recommend asking for help, for example on #racket
<jmiven> to stall might not be the correct verb but anyway I guess my advice is : don't hesitate to ask people if you need help :-)
<qweo> Don't they get tired of noob questions?
<qweo> And, speaking of language choice, do you think type inference is useful to have?
<endformationage> qweo: FWIW, though I was not new to programming prior to finding Pony, I was mostly new to concurrency, distributed programming.
<endformationage> And for that, i've learned tons by mearly by reading about Pony, its tut/docs/patterns/progs, and of course lurking here.
<qweo> Is the tutorial good?
* endformationage thinks people here are very helpful.
<qweo> Is there enough codebase to learn by example?
<endformationage> I found the tut helpful. It made me think about why concurrent programming is hard, and why Pony exists, and why even though it can be difficult to program in Pony, those difficulties would be less so than difficulties encountered sans the protections Pony offers.