digitalmars.D.announce - Per popular demand, here are Adam D Ruppe's presentation slides
- Andrei Alexandrescu (3/3) May 23 2014 Adam graciously shared the slides of his DConf 2014 talk with us:
- Mattcoder (3/7) May 23 2014 Hehe, I'm just imagining what Walter will say: "Lack of images"!
- Adam D. Ruppe (95/96) May 23 2014 Heh, I actually went through a few idea stages here:
- John (4/104) May 23 2014 Your presentation was awesome. I wish there was more time
- Adam D. Ruppe (15/17) May 24 2014 My poor throat was getting dry near the end anyway...
- Nick Sabalausky (2/8) May 24 2014 It seems a very "Talking Heads" irony, I like it :)
- Nick Sabalausky (11/17) May 24 2014 My favorite way to be counter-culture is to use slang terms in
- Nick Sabalausky (3/4) May 24 2014 s/golly/jolly/
- Adam D. Ruppe (8/11) May 26 2014 heh yeah, but I've been trying to quit cussing entirely. Which is
- Adam D. Ruppe (18/19) May 26 2014 oh a fun addendum to this, I told a friend of mine (whom I
- Nick Sabalausky (19/33) May 26 2014 Similar story here: I've never been one to shy away from swearing (not
- Adam D. Ruppe (10/13) May 28 2014 I don't think I'm /that/ much different; I rarely start threads,
- Tolga Cakiroglu (5/14) May 24 2014 I liked your presentation as well. When you started talking about
- Adam D. Ruppe (22/24) May 24 2014 Aye, programming on DOS was cool (and of course, so was
- Nick Sabalausky (3/4) May 24 2014 Real programmers used Mode X!
- Adam D. Ruppe (3/4) May 24 2014 Yea! ...I never really got into it tho and kept going back to 13
- Piotrek (2/6) May 23 2014 I didn't know zipped pesentasion file can be still readable ;)
- Steven Schveighoffer (4/6) May 23 2014 Oh cool! finally the conference-goers can see the slides :)
- Gary Willoughby (2/6) May 23 2014 Ha, I really liked his talk :)
- Adam D. Ruppe (53/53) May 23 2014 You can see some margin notes I added this morning about stuff I
- Adam D. Ruppe (56/56) May 24 2014 Another thing I said but want to expand upon now: near the end, I
- sclytrack (3/3) May 24 2014 On Saturday, 24 May 2014 at 20:11:22 UTC, Adam D. Ruppe wrote:
- Adam D. Ruppe (20/21) May 24 2014 Nope, I never actually got around to creating any.
- sclytrack (6/27) May 24 2014 I would have preferred slides though. I'm not so good at
- Adam D. Ruppe (17/19) May 24 2014 Yea, they were on my todo list, I was just too lazy and/or
- Dicebot (5/9) May 28 2014 This was best marketing for Adam book possible :) Someone who can
Adam graciously shared the slides of his DConf 2014 talk with us: http://imgur.com/hHCN3OL Andrei
May 23 2014
On Friday, 23 May 2014 at 19:29:12 UTC, Andrei Alexandrescu wrote:Adam graciously shared the slides of his DConf 2014 talk with us: http://imgur.com/hHCN3OL AndreiHehe, I'm just imagining what Walter will say: "Lack of images"! Matheus.
May 23 2014
On Friday, 23 May 2014 at 19:59:23 UTC, Mattcoder wrote:Hehe, I'm just imagining what Walter will say: "Lack of images"!Heh, I actually went through a few idea stages here: 1) I'd list the druntime functions. I determined this to be boring and subject to change anyway. But I spent like a month without better ideas and it was too boring for me to even do... so yeah nothing got done. 2) I'd write a little bare metal program to use as the slide show that demonstrates various language features and highlights their source code with animations and responses to timers and keyboard input. The "slides" would then be the source to that program. Probably would have been cool, but I never found the time to actually write it. (I wrote the foundation for it, the timer interrupt handler, the text video output, the bulk of D working... but the program itself just kept being put off in favor of other things) 3) Then, a big breakthrough happened: I had that day with the friends walking on that bridge guard rail. (BTW it wasn't actually 50 miles high, but it is no exaggeration that I was terrified for the guy who walked all the way across it. One other person there walked across part, but she had the good sense to get back on the regular road once we got over the water. But the one guy is a madman, a madman!) That got me thinking about cost/benefit with experimentation and I realized that story made a good contrast with the test.d files I make so often and the talk plan changed. At this point, my plan was to get a handful of photographs to illustrate each concept... but again, things just kept coming up. Last week, I decided to stop stressing over it and just accept that I was going to be unprepared. (Which actually worked out well enough for me in church last month when I got a literally last minute request to substitute teach there and it went ok for everybody but my armpits lol. But if I can fill an hour improvising a reasonably productive discussion on faith and prophets, surely I can do it about D.) Anyway, by moving the goalposts from "nice visual presentation" to "I'll improvise it live!", I went from worrying about being unprepared to being content with just knowing the big idea and let my mind go back to other things. That said, I didn't want to improvise *everything* because I had an experience back in the 5th grade that taught me otherwise. The science teacher gave me a chance to do a planetarium presentation. I knew how to work the projection machine and knew a little bit of material, but I didn't actually have even a lesson outline prepared and I leaned HEAVILY on the teacher to bail me out. However, before I knew it, it was already May 22, I was in California, and firewalled out of my desktop computer. So I did the next best thing: got out my notebook and pen and scribbled down a page of topics to touch. I expected to have to open the floor to questions after like 20 minutes and spend the rest of the time just talking with people, but to my surprise, it filled the whole hour. (Actually, that shouldn't be so surprising, just Monday night I spent an hour talking with a couple friends about half a page of notes. But that's a totally different audience and a totally different set of topics so I wasn't sure it would pad out the same way.) Regardless, it was pretty ok, if a bit wandering at times. Could have been a lot worse. BTW re the last "cool stuff" header note, here's the code I slapped together to demo that idea: import std.stdio; align(1) struct foo { //align(16): ubyte c; ushort d; uint b; ushort a; } pragma(msg, diagram!foo); string diagram(T)() { import std.string, std.conv; string ret; T t; int offset = 0; foreach(idx, item; t.tupleof) { int off = t.tupleof[idx].offsetof; int size = t.tupleof[idx].sizeof; if(off > offset) { // padding foreach(i; 0 .. off-offset) ret ~= format(" internal padding\n"); offset += off-offset; } foreach(i; 0 .. size) ret ~= format(" %s\n", t.tupleof[idx].stringof[2..$]); offset += size; } foreach(i; 0 .. T.sizeof-offset) ret ~= format(" struct padding to %d\n", T.sizeof); return ret; } Of course, I ultimately used my fingers as bytes but here you can play with it a bit more and see different combinations as to struct layout so have some fun with it!
May 23 2014
On Friday, 23 May 2014 at 23:56:39 UTC, Adam D. Ruppe wrote:On Friday, 23 May 2014 at 19:59:23 UTC, Mattcoder wrote:Your presentation was awesome. I wish there was more time available. And btw, you were looking great too! :)Hehe, I'm just imagining what Walter will say: "Lack of images"!Heh, I actually went through a few idea stages here: 1) I'd list the druntime functions. I determined this to be boring and subject to change anyway. But I spent like a month without better ideas and it was too boring for me to even do... so yeah nothing got done. 2) I'd write a little bare metal program to use as the slide show that demonstrates various language features and highlights their source code with animations and responses to timers and keyboard input. The "slides" would then be the source to that program. Probably would have been cool, but I never found the time to actually write it. (I wrote the foundation for it, the timer interrupt handler, the text video output, the bulk of D working... but the program itself just kept being put off in favor of other things) 3) Then, a big breakthrough happened: I had that day with the friends walking on that bridge guard rail. (BTW it wasn't actually 50 miles high, but it is no exaggeration that I was terrified for the guy who walked all the way across it. One other person there walked across part, but she had the good sense to get back on the regular road once we got over the water. But the one guy is a madman, a madman!) That got me thinking about cost/benefit with experimentation and I realized that story made a good contrast with the test.d files I make so often and the talk plan changed. At this point, my plan was to get a handful of photographs to illustrate each concept... but again, things just kept coming up. Last week, I decided to stop stressing over it and just accept that I was going to be unprepared. (Which actually worked out well enough for me in church last month when I got a literally last minute request to substitute teach there and it went ok for everybody but my armpits lol. But if I can fill an hour improvising a reasonably productive discussion on faith and prophets, surely I can do it about D.) Anyway, by moving the goalposts from "nice visual presentation" to "I'll improvise it live!", I went from worrying about being unprepared to being content with just knowing the big idea and let my mind go back to other things. That said, I didn't want to improvise *everything* because I had an experience back in the 5th grade that taught me otherwise. The science teacher gave me a chance to do a planetarium presentation. I knew how to work the projection machine and knew a little bit of material, but I didn't actually have even a lesson outline prepared and I leaned HEAVILY on the teacher to bail me out. However, before I knew it, it was already May 22, I was in California, and firewalled out of my desktop computer. So I did the next best thing: got out my notebook and pen and scribbled down a page of topics to touch. I expected to have to open the floor to questions after like 20 minutes and spend the rest of the time just talking with people, but to my surprise, it filled the whole hour. (Actually, that shouldn't be so surprising, just Monday night I spent an hour talking with a couple friends about half a page of notes. But that's a totally different audience and a totally different set of topics so I wasn't sure it would pad out the same way.) Regardless, it was pretty ok, if a bit wandering at times. Could have been a lot worse. BTW re the last "cool stuff" header note, here's the code I slapped together to demo that idea: import std.stdio; align(1) struct foo { //align(16): ubyte c; ushort d; uint b; ushort a; } pragma(msg, diagram!foo); string diagram(T)() { import std.string, std.conv; string ret; T t; int offset = 0; foreach(idx, item; t.tupleof) { int off = t.tupleof[idx].offsetof; int size = t.tupleof[idx].sizeof; if(off > offset) { // padding foreach(i; 0 .. off-offset) ret ~= format(" internal padding\n"); offset += off-offset; } foreach(i; 0 .. size) ret ~= format(" %s\n", t.tupleof[idx].stringof[2..$]); offset += size; } foreach(i; 0 .. T.sizeof-offset) ret ~= format(" struct padding to %d\n", T.sizeof); return ret; } Of course, I ultimately used my fingers as bytes but here you can play with it a bit more and see different combinations as to struct layout so have some fun with it!
May 23 2014
On Saturday, 24 May 2014 at 00:36:31 UTC, John wrote:I wish there was more time available.My poor throat was getting dry near the end anyway... But I was kinda worried that I was getting too negative at times. My theme was supposed to be encouraging, go ahead and try it, and instead I started complaining about triple faults and ugly code. But oh well, the agony of defeat contributes to the thrill of victory after you finally make it work!And btw, you were looking great too! :)thanks! Part of that was that I wanted to be deliberately counter-culture. I almost never see anyone in these tech videos wearing a tie, and while in the facebook building I think I was the only one there too. (the irony, a conservative business suit is my anti-authoritarian apparel lolololol) Of course, that's not the /only/ reason I wore it, but it was a nice bonus.
May 24 2014
On 5/24/2014 3:49 PM, Adam D. Ruppe wrote:thanks! Part of that was that I wanted to be deliberately counter-culture. I almost never see anyone in these tech videos wearing a tie, and while in the facebook building I think I was the only one there too. (the irony, a conservative business suit is my anti-authoritarian apparel lolololol)It seems a very "Talking Heads" irony, I like it :)
May 24 2014
On 5/24/2014 3:49 PM, Adam D. Ruppe wrote:thanks! Part of that was that I wanted to be deliberately counter-culture. I almost never see anyone in these tech videos wearing a tie, and while in the facebook building I think I was the only one there too. (the irony, a conservative business suit is my anti-authoritarian apparel lolololol)My favorite way to be counter-culture is to use slang terms in unexpected contexts. Like using a meme to make a point on a very technical topic. Or more commonly, well gee, I think deadpan delivery of anachronistic slang is just swell, dawg. Bonus pizzoints for mixing all those swingin' tubular eras...I really can dig that (Again, deadpan delivery be paramount). Or concocting me up some pluralities of formalism levels. Similarly, mixed cussing is golly good f**king fun. Word. (I really do like to deliberately use outdated slang, and the more deadpan the better.)
May 24 2014
On 5/25/2014 1:18 AM, Nick Sabalausky wrote:Similarly, mixed cussing is golly...s/golly/jolly/ Ugh...
May 24 2014
On Sunday, 25 May 2014 at 05:18:39 UTC, Nick Sabalausky wrote:Similarly, mixed cussing is golly good f**king fun.heh yeah, but I've been trying to quit cussing entirely. Which is harder than you might think, even though I didn't even go that wild with it before, it is still a bit of a habit to sprinkle in some random f-bombs just to set the mood or something. And quitting makes singing along with the angry video game nerd theme song difficult :P(I really do like to deliberately use outdated slang, and the more deadpan the better.)dats da bomb yo
May 26 2014
On Tuesday, 27 May 2014 at 01:42:27 UTC, Adam D. Ruppe wrote:heh yeah, but I've been trying to quit cussing entirely.oh a fun addendum to this, I told a friend of mine (whom I haven't actually known that long) that I was trying to quit, and she was incredulous that I even swore at all. She said "I can't picture you swearing... there's a whole other side to you!" Of course, I think /today/ was the.... fourth time she's ever seen me not wearing a tie of some sort too. She knows me as the proper Mormon, if a bit lighthearted, but I can come across as an angry, homophobic sailor when playing shooters online. BTW that's one thing about in-person conferences that is kinda meta-fascinating too, seeing people rather than just email text. Even if I knew what some of you look and sound like from previous videos or pictures, it was still a bit of a surprise to meet there. Of course, at the same time, while I'm fairly talkative and even a little forward on emails, in person I tend to prefer to just hide in a corner until someone approaches me, but even then just kinda slinker off and go back to hiding before long.... so yeah.
May 26 2014
On 5/26/2014 9:57 PM, Adam D. Ruppe wrote:On Tuesday, 27 May 2014 at 01:42:27 UTC, Adam D. Ruppe wrote:Similar story here: I've never been one to shy away from swearing (not that I normally seek it out just for the heck of it or anything - though some might might that surprising <g>), but back in high school it seemed like *every* time I'd swear, there was always somebody around who'd get a deer-in-the-headlights look on their face and say "Nick! I've never heard you swear before!" My mental-only response was always "Uhh, you must not have heard me talk much before..." ;) Which was probably quite likely, mainly since...heh yeah, but I've been trying to quit cussing entirely.oh a fun addendum to this, I told a friend of mine (whom I haven't actually known that long) that I was trying to quit, and she was incredulous that I even swore at all. She said "I can't picture you swearing... there's a whole other side to you!"BTW that's one thing about in-person conferences that is kinda meta-fascinating too, seeing people rather than just email text. Even if I knew what some of you look and sound like from previous videos or pictures, it was still a bit of a surprise to meet there. Of course, at the same time, while I'm fairly talkative and even a little forward on emails, in person I tend to prefer to just hide in a corner until someone approaches me, but even then just kinda slinker off and go back to hiding before long.... so yeah.Yea, same here. I can be a regular chatterbox in this NG, but in person I've always tended to be very quiet. Used to be *really* shy for a long time. Not quite so much now (HS and college developed a rebellious "fuck this shit"/"just don't give a rat's ass" ballsy streak in me), but I still tend toward the quiet and socially-awkward side whenever I'm not around people I already know really well. I always chalked it up to the whole "nerd" thing: Inverse relationship in outgoingness between in-person vs semi-anonymous. (Although I'm probably closer to "otaku" nerd than "taped-glasses" nerd, FWIW). That, and on-the-fly comms is more difficult than "prep first then send" anyway.
May 26 2014
On Tuesday, 27 May 2014 at 05:23:03 UTC, Nick Sabalausky wrote:I always chalked it up to the whole "nerd" thing: Inverse relationship in outgoingness between in-person vs semi-anonymous.I don't think I'm /that/ much different; I rarely start threads, for example, but will talk in replies, which is analogous to waiting for someone else to approach me in person then having the discussion before going back into the shadows once it runs its course. I also lurk on forums for a pretty long time before posting, similarly to how I sit quietly in bigger groups until I get to know the people (and generally until someone on the inside takes me under their wing).
May 28 2014
On Friday, 23 May 2014 at 23:56:39 UTC, Adam D. Ruppe wrote:On Friday, 23 May 2014 at 19:59:23 UTC, Mattcoder wrote:I liked your presentation as well. When you started talking about writing your Floppy Disk driver for your kernel without using BIOS or DOS, I remembered my 11 years ago days. Wish there was more time and you could continue.Hehe, I'm just imagining what Walter will say: "Lack of images"!Heh, I actually went through a few idea stages here: 1) I'd list the druntime functions. I determined this to be boring and subject to change anyway. But I spent like a month without better ideas and it was too boring for me to even do... so yeah nothing got done. ...
May 24 2014
On Saturday, 24 May 2014 at 18:12:40 UTC, Tolga Cakiroglu wrote:When you started talking about writing your Floppy Disk driver for your kernel without using BIOS or DOS,Aye, programming on DOS was cool (and of course, so was programming without DOS too!) It is actually frustrating to know what the hardware can do then being limited by some abstraction or emulation that does less. This is why doing terminal work on Linux annoys me: the VT100 emulation is sooooo much less capable than the plain old VGA hardware (or the X11 protocol, of course). That's one reason why I started making my own terminal emulator <https://github.com/adamdruppe/terminal-emulator> so I can do custom extensions to get some of this back. Key up notifications, easy output when jumping around, etc. Of course, my terminal.d library, like ncurses, can do a lot of that too, there's still the annoying underlying limitations that really don't have to be there. And good old mode 13h! But yeah, the floppy disk drive is fun too and doing that driver was something I played with a long time ago with 16 bit code, now that was something painful to get right too! Resetting and aligning the motor, etc., fun. Like I alluded to at the end though, my favorite part is the noise the drives make :) Real computers are noisy!
May 24 2014
On 5/24/2014 3:41 PM, Adam D. Ruppe wrote:And good old mode 13h!Real programmers used Mode X! (I mainly used 13h though ;) )
May 24 2014
On Saturday, 24 May 2014 at 23:47:58 UTC, Nick Sabalausky wrote:Real programmers used Mode X!Yea! ...I never really got into it tho and kept going back to 13 for the plain simplicity.
May 24 2014
On Friday, 23 May 2014 at 19:29:12 UTC, Andrei Alexandrescu wrote:Adam graciously shared the slides of his DConf 2014 talk with us: http://imgur.com/hHCN3OL AndreiI didn't know zipped pesentasion file can be still readable ;)
May 23 2014
On Fri, 23 May 2014 12:29:12 -0700, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> wrote:Adam graciously shared the slides of his DConf 2014 talk with us: http://imgur.com/hHCN3OLOh cool! finally the conference-goers can see the slides :) -Steve
May 23 2014
On Friday, 23 May 2014 at 19:29:12 UTC, Andrei Alexandrescu wrote:Adam graciously shared the slides of his DConf 2014 talk with us: http://imgur.com/hHCN3OL AndreiHa, I really liked his talk :)
May 23 2014
You can see some margin notes I added this morning about stuff I was thinking about saying to fill time! For example, being willing to experiment helps with speed, like Walter said. It also applies here: disassemblies might be scary the first time, but if you dive into it and see about toying with it, just tinker, guess and check your way to better benchmarks... you'll probably find success before too long. And the key point with the "just try it gnashing of teeth" note is that you really don't have much to lose! Except time perhaps, but once you've done it a few times you'll be able to find shortcuts. And besides put a time limit on yourself to make sure you don't waste your whole life and you'll be ok. LOL up top I called myself a "web/dynamic god". See what I said about my ego? I praise me even in notes to self! Up top, I made a note to self after Don's talk, where he talked about getting serious with industrial use. Well, I say back to fun... but at the same time, knowing the whole library is useful. Not only is it good to know the underlying stack when abstractions start leaking, but there's actually practical applications to playing with the runtime: 1) Special performance or size requirements (Sociomantic, I think Mike Parker did that for some games too, or embedded stuff) 2) Organization-wide lint kind of stuff. You can use a custom object.d for RTInfo for example to do checks and not worry about third-party integration so much because you are only interested in "works for me" without the hassle of redistribution. 3) Running D in places like a platform that only has a C compiler or maybe converting to JavaScript (that's how I started this, it was dtojs forked off Daniel Murphy's D->C converter that first got me playing without the runtime) might find use of these functions being implemented differently or ignored. So while I still tend to say half the stuff I mentioned there is useless info, the general idea of being willing to play with it might not be - you never know when one of these random ideas will work out. * * * Two other margin notes that came up during the conference: Walter mentioned UFCS with the first argument as the "this" thing.... but when you do a method on a struct, the this reference is actually passed as a (hidden) last argument! So I just lol'd a bit at it not being quite so uniform. The other one is moving the language to object.d. For example, some of the chatter after Don's talk was about size_t being unsigned. So annoying! I think it would be kinda nice if that could actually be redefined somehow. I've also talked before about how it might be cool to to "alias int = __int;" to use builtin ints or "int = RangedChecked!(0, 100);" to make the int type behave differently in the case of that custom runtime. To my surprise though, I ran out of time and even had to cut some questions short :( Oh well, y'all can always find me here. PS sorry I had to run out early today during the lightning talks! My ride back to the airport was already there, they wanted to avoid rush hour traffic.
May 23 2014
Another thing I said but want to expand upon now: near the end, I started blabbing about stack frame setup in assembly, something I actually learned from C. (When I was writing assembly a bit more seriously - always still just a hobbyist btw - I would just use the registers, push/pop, and sometimes a global scratch buffer inside functions for computations. Actually, that worked really well, ideally compilers want to do that too with efficient register allocation, but the stack frame is nevertheless a useful concept to know.) But anyway, the key point there isn't one specific technique, it is rather that digging a bit deeper into a new language can teach you new ideas in your existing languages. Of course, most languages can do everything any others can do fairly easily (and you can always do the x86 emulator and jit your other stuff to it if not :P), but you don't always /consider/ doing something else until a new language puts it in your face. C got me thinking about stack frames in assembly. Assembly, in turn, helps understand just what those C constructs do so you can get a bit more out of them, e.g. a switch being a jump table makes sense when you think about the code it generates as well as other rationales in the standards like Scott Meyers talked about - do it, iff there's zero runtime cost. With that idea and some knowledge of the generated code, what previously looked like a set of contradictory, arbitrary rules now fit together and make sense. (You might still disagree with them, but at least now that disagreement will have some common ground of understanding to talk about instead of you thinking the authors are just idiots.) Similarly, C++ was my introduction to virtual functions. Before playing with C++, I rarely used function pointers at all in C. They were always there; it was always possible to do that kind of generic indirection interface stuff in C, but until using C++, I just never even considered doing it. Don's talk was fascinating to me on this same vein: slices are extremely common in D and super super useful. True, you can do the same kind of thing in C or C++ using a pointer and length combo (and it isn't even all that uncommon), and with a little care, you can handle memory ownership without the GC's help too (BTW I stand by what I said there about liking the gc. It isn't always right, but it really is so nice to have that standard owner, to not worry so much about things like double free bugs. It doesn't mean you can stop thinking entirely about ownership since the data may be stomped - immutable gc objects more or less do though lol - but it does really simplify a lot of things). But anyway, I digress again, the point is yes you can do slices in C++, but just like doing vtables in C, is that a paradigm you'd have seriously considered if you didn't see it done so easily in D? Isn't the ease of use D offers still a nice advantage over borrowing the concept in C++, just like how C++'s virtual keyword is a nice addition to doign it in C? I say yes. So bottom line, the new languages can teach us stuff about our old languages and then if we really like idea, the new language can be compelling anyway just because it is that much easier to use. So to sum up, I think it is a nice analogy to say D's slices wrt C++ could be argued to be like C++'s virtual functions wrt C.
May 24 2014
On Saturday, 24 May 2014 at 20:11:22 UTC, Adam D. Ruppe wrote: Were there actual slides? I mean that sheet of paper was an emergency right?
May 24 2014
On Saturday, 24 May 2014 at 20:46:30 UTC, sclytrack wrote:Were there actual slides?Nope, I never actually got around to creating any. I just had an outline on my desktop of stuff I was thinking about creating, but just didn't finish it. The paper was my recreation of that outline from memory. Here's the outline.txt stuff I didn't mention on the paper btw: * Replacing functions with the linker * Reflection: Using RTInfo's lint to enforce ownership rules (e.g. make it a compile time error to define a struct with a mutable slice. This has a few pros and a lot of cons.) * Doing a custom calling convention with naked functions and mixins * Talk about ABI details and the implementation of scope statements (e.g. scope(exit). I briefly talked about it being lowered to finally {} but didn't go into the asm like I was considering * The -betterC switch and what I want more from it. Otherwise, my memory was pretty decent for remembering what I had in mind! Then my random on-the-spot digressions padded out the time.
May 24 2014
On Saturday, 24 May 2014 at 20:53:18 UTC, Adam D. Ruppe wrote:On Saturday, 24 May 2014 at 20:46:30 UTC, sclytrack wrote:Okay, busy guy.Were there actual slides?Nope, I never actually got around to creating any.I just had an outline on my desktop of stuff I was thinking about creating, but just didn't finish it. The paper was my recreation of that outline from memory. Here's the outline.txt stuff I didn't mention on the paper btw: * Replacing functions with the linker * Reflection: Using RTInfo's lint to enforce ownership rules (e.g. make it a compile time error to define a struct with a mutable slice. This has a few pros and a lot of cons.) * Doing a custom calling convention with naked functions and mixins * Talk about ABI details and the implementation of scope statements (e.g. scope(exit). I briefly talked about it being lowered to finally {} but didn't go into the asm like I was considering * The -betterC switch and what I want more from it. Otherwise, my memory was pretty decent for remembering what I had in mind! Then my random on-the-spot digressions padded out the time.I would have preferred slides though. I'm not so good at listening. The visual impact helps ME better at remembering. Yeah, your memory is fine. :-)
May 24 2014
On Saturday, 24 May 2014 at 21:01:13 UTC, sclytrack wrote:I would have preferred slides though. I'm not so good at listening. The visual impact helps ME better at remembering.Yea, they were on my todo list, I was just too lazy and/or distracted to do it. But I'm not sure they would have been really informational anyway; I think a talk is a terrible way to deliver information and one of the reasons I was stalled/procrastinating on this is I didn't have a good solution to that problem. If I want to deliver info, I'd prefer to do it in writing such as emails, blogs or traditional code documentation. (The best idea I had to work around this deficiency was to script it ahead of time with supporting photographs or occasional data tables to give you an associated image to remember the concept, and post the script along with any supporting material to the 'net later. But I didn't know how many words would fit in an hour and writing a script is a pain anyway so my laziness kicked in.) But ultimately, I decided my primary goal wasn't to deliver information but to instead sell a feeling so you might be stirred to try some new things on your own.
May 24 2014
On Friday, 23 May 2014 at 19:29:12 UTC, Andrei Alexandrescu wrote:Adam graciously shared the slides of his DConf 2014 talk with us: http://imgur.com/hHCN3OL AndreiThis was best marketing for Adam book possible :) Someone who can talk for an hour without any visual helpers while still maintaining good information structure must be really good at writing books ;)
May 28 2014