How the stack got stacked

Поділитися
Вставка
  • Опубліковано 7 лис 2024

КОМЕНТАРІ • 107

  • @valentinussofa4135
    @valentinussofa4135 Місяць тому +52

    The literary and historical research you've carried out is highly commendable. I've visited the site address you embedded, and there I can access papers and books from your extraordinary learning content. You have been a great teacher for a self learner like me. Thank you so much. 🙏

    • @6AxisSage
      @6AxisSage Місяць тому +1

      I love how my work brought me to to this channel, what an awesome couple of weeks, crack a problem where im suddenly deeply connected to the perspectives of many brilliant people hidden by the algo before.

  • @cellularmitosis2
    @cellularmitosis2 Місяць тому +53

    When you roll 20’s on both technical depth AND relaxing ASMR voice

    • @user-ky4jy8mc1x
      @user-ky4jy8mc1x Місяць тому +3

      Yes, except you don't roll on the technical dept, you develop it by putting in lots of effort over the years!

  • @shreyasdatar7251
    @shreyasdatar7251 Місяць тому +10

    "A sentence written by a 30 year old - Edsger Djikstra..." I audibly gasped. Love this format. Keep up the good work :))

    • @neoeno4242
      @neoeno4242  Місяць тому

      That's what I was hoping for 🤣 Thanks!

  • @klineaugust
    @klineaugust Місяць тому +8

    I loveee the way you work through history and tangible examples at the same time, your presentation of the material is great!

  • @vcv6560
    @vcv6560 8 днів тому

    This title authoring SW, i.e. that animates the operations and jumps between written statements of the algorithm is simply excellent as a teaching tool. Thanks for using this, and if you're also its author double cheers.
    Also those brief historical insights are a nice touch introducing the topic. I had a few favorite text books from college that used this approach.

  • @MarianoBustos-i1f
    @MarianoBustos-i1f Місяць тому +4

    Never cease to be amazed by the quality of the content and your superb pedagogic skills.

  • @drelephanttube
    @drelephanttube 14 днів тому

    Absolutely fantastic video! After watching it, I literally found myself thinking about our modern computers in a different way, reminding me of the seemingly limitless possibilities that attracted me to computing in the first place. Very excited to learn more. Thank you.

  • @richardd9634
    @richardd9634 24 дні тому +1

    Kay, your content is incredible. It's clear to see that you have a deep passion for the material that you teach. Congratulations on the launch of 0DE5. Keep going!!

  • @MrKeebs
    @MrKeebs Місяць тому +9

    What an amazing channel and amazing videos. I love the ASM series and this is also excellent. Thank you so much for putting those videos together!

  • @dageekoftheweek
    @dageekoftheweek Місяць тому +3

    This is an absolutely amazing video, your passion and respect for the history is evident and not seen enough in software in general in my opinion, it kind of strange how prevalent platforms like leetcode are that encourage fundamentals without any regard for where they come from and why, what you are doing is not only well constructed and entertaining but also important work. We may stand on the shoulders of giants but it feels like they get ignored far too often, you are helping to change that and as someone who was starting to feel like tech wasn't for me anymore, your passion has helped to re awaken a bit of my own that I had as a naive college student before the world beat me down so to speak.

    • @neoeno4242
      @neoeno4242  Місяць тому +1

      Thanks for the comment - this was really nice to read and I'm so glad to help in that :)

  • @shubhxms
    @shubhxms Місяць тому +2

    amazing video! i love how you explained everything, the details ofc and the editing!

  • @juwulez
    @juwulez Місяць тому +3

    such an incredible video!! i always enjoy them but this one was so very thorough and engaging and fascinating to watch! thank uuuu for sharing!!

  • @johanndewaal152
    @johanndewaal152 Місяць тому

    This video and the others on your channel is a better introduction to computer architecture then my university courses were. It is great to see others interested in this deeper understanding of computing and not simply "means to an end" knowledge like the specifics of some JS framework.

  • @Perezosos309
    @Perezosos309 27 днів тому

    Great video. Lots to understand but you make it comprehensible .
    Will listen to it more than once 😊

  • @mikhailmikheev8043
    @mikhailmikheev8043 Місяць тому +2

    Your content is phenomenal. Thank you very much, and please continue doing it!

  • @phyphor
    @phyphor Місяць тому +2

    I'm really enjoying this series. It fits neatly in my head alongside the work people like Ben Eater are doing with creating hardware.

  • @moormoor4281
    @moormoor4281 Місяць тому +17

    Thanking you most kindly from England

    • @phyphor
      @phyphor Місяць тому +5

      It's gone 3am! You should be asleep.
      ...
      It's gone 3am! *I* should be asleep!

    • @billbond2682
      @billbond2682 Місяць тому +2

      @@phyphor 😂

  • @latch909
    @latch909 29 днів тому

    Kay you're a legend this is great - thanks for linking all these resources

  • @marcsh_dev
    @marcsh_dev Місяць тому +4

    Great video, thanks!
    Brings back memories of learning to program and parse on my little home computer

  • @moormoor4281
    @moormoor4281 Місяць тому +13

    From a radio amateur very interesting information

  • @jemo_hack
    @jemo_hack Місяць тому +1

    Gosh, just found this channel, love the content and I can appreciate the effort that goes into making this type of content, thank you! On the subjects of stacks, I see you did not mention Forth, a stack based language, nor do you mention HW based stacks, and stack machines…. maybe a follow up video? Cheers!

  • @damianpanek8667
    @damianpanek8667 Місяць тому +2

    Beautiful work, as always. Thank you for your well prepared materials.

  • @apersonwhoskatesbad
    @apersonwhoskatesbad Місяць тому

    Hello! I've been loving your videos. The content you've been covering is the exact stuff I was dying to know when I first started learning about computing. You present the information beautifully, and the historical context here is very interesting, and more important than a lot of people realize I think. If only I could send these videos back in time to my teenaged self, they'd blow his mind!
    Anyway, just wanted to put in a comment to let you know I think your work is really great, and I'm looking forward to seeing what you cover next. It gives me a warm feeling to see computing concepts being explained in a personal way, with an emphasis on fun. Personally, and I think this may be true for a lot of us who do computer work, programming as a job can strip away a lot of the awe that comes with first learning to program computers. These videos have helped bring back a bit of that wonder for me - computers truly are beautiful machines! So, also, thanks for reminding me of that :)

    • @neoeno4242
      @neoeno4242  Місяць тому

      Thanks so much - this was really nice to read! Glad the fun part comes across :)

  • @kyouko5363
    @kyouko5363 Місяць тому

    6:30 - My brain immediately jumped to LISP when you said that. I didn't know there was so much more history behind this.

  • @jebuschrast
    @jebuschrast Місяць тому +2

    fascinating analysis, great presentation! Thanks for the lesson!
    looking forward to the next video

  • @csabaczcsomps7655
    @csabaczcsomps7655 Місяць тому

    Stack is first step, then recursive is beter stack is most value clarification and thx. This video is good to see link bethven details( hardware) and definition(software). Very very good video.

  • @lumotroph
    @lumotroph Місяць тому +2

    This is absolutely brilliant.

  • @Gersberms
    @Gersberms Місяць тому +2

    This is such a good video! I love the new font (NorB TypeWriter?) and the new indicators you're using as well. The pop filter seems to be working well too.

    • @neoeno4242
      @neoeno4242  Місяць тому +1

      Thanks! It was Monaspace Radon but thanks for introducing me to a new font, I like it

  • @PyroWolf90
    @PyroWolf90 Місяць тому

    wow to stumble on to a creator like you is rare, I am glad I have, subscribing for more great work!

  • @Humble_Electronic_Musician
    @Humble_Electronic_Musician Місяць тому +1

    Before i even watch the video: Here have a like for the great video title 👍
    All your videos are top notch content, so I'll now proceed watching it

  • @AvanaVana
    @AvanaVana Місяць тому +1

    Wonderful material
    Edit: and the presentation is equally wonderful, of course!

  • @eterr9000
    @eterr9000 Місяць тому

    wow this is so great.... and thank you for attaching resources and links to papers/books!

  • @6AxisSage
    @6AxisSage Місяць тому

    Omg! Your videos really made a lot of ideas click into place for me 🙏 Thank you for sharing your brilliant insights, hopefully people understand my work before while im around 😊

  • @paulchamberlain7942
    @paulchamberlain7942 Місяць тому

    I get the feeling that the understanding of the arithmetic expression evaluation mechanism is key to writing a compiler. More specifically, the major difference between writing an assembler and a compiler. I never understood how arithmetic expressions and precedence were actually parsed and calculated, many thanks!

  • @aliniaz6448
    @aliniaz6448 Місяць тому +2

    A subscriber can be earned by just one and first impressive video, which he did in my case ❤

  • @hosseinnajafi2181
    @hosseinnajafi2181 Місяць тому +2

    Thank you so much, you're the best in low level stuffs 🥳🥳🥳🥳🥳🥳🙏🙏

  • @karlosfy
    @karlosfy Місяць тому

    Loved the video. Super well put together.

  • @alphabitserial
    @alphabitserial Місяць тому

    This is a wonderful video, thank you!

  • @marcsh_dev
    @marcsh_dev Місяць тому +5

    {Some ramblings about Djykstra's comment about how to approach programming - especially learning}
    Yeah, so throughout my entire career Ive wrestled with the 2 wolves, 'treat computers as high level abstract devices -AND- treat computers as a machine with the specific needs and implications'
    I definitely bounce between the 2 and try to have each inform the others
    Take, for example, how fast caches are and hitting caches VS getting values from random places in memory.
    As you are well aware, a ton of really nice^0 algos bounce around memory, while bog standard (sort of boring) ones just use an array.
    I want to think about the program at a higher level, since at that level, I get a lot of leverage over the problems Im solving.
    But, computers _arent_ abstract calculation machines with 0 implications on how I respect the hardware. Sigh.
    I dont know if other folks wrestle with this or not.
    ^0 By nice I mean solve it well, and technically quicker than an array

    • @kevinscales
      @kevinscales Місяць тому +1

      It would be really nice to just think about algorithms caring only whether the output is correct, but the real world exists

    • @neoeno4242
      @neoeno4242  Місяць тому

      Agreed, it reminds me of the idea of a dialectic. I think that idea of 'abstract machine' vs 'electron machine' has powered a lot of creative tension over the decades. Came across this post about 'mercurial CPUs' yesterday which also seems like a similar idea at a massive scale x.com/petereliaskraft/status/1840011158347972765

    • @benholroyd5221
      @benholroyd5221 15 днів тому +1

      I think the trick is to turn the limitations into features.
      I suppose the poster child for this is forth. its based around a low level view of what a computer can easily do, and puts just enough varnish over it to make it seem higher level that it is.
      I suppose its also what makes it an engineering discipline. You can make a pretty building, but at the end of the day, it needs to not fall down, A program needs to run at a reasonable speed.

  • @rafaelomiya6048
    @rafaelomiya6048 19 днів тому

    captured me for good 40min. very good!

  • @SanjayB-vy4gx
    @SanjayB-vy4gx Місяць тому +2

    We need more videos like this mam

  • @realBenjaminFranklin_
    @realBenjaminFranklin_ Місяць тому +2

    Wow. Instant subscription. Well done!!

  • @bastabey2652
    @bastabey2652 Місяць тому

    that's an amazing quality content.. thank you very much for sharing

  • @pdougall1
    @pdougall1 Місяць тому +5

    This is a fantastic contribution to the graduate level CS education that I'm getting on YT 🙏
    thank you very much and I look forward to more 😄

  • @h7qvi
    @h7qvi Місяць тому +3

    Lacky's back ❤

  • @Notimetootime
    @Notimetootime Місяць тому +2

    you deserve more subs

  • @flflflflflfl
    @flflflflflfl Місяць тому +1

    I love your channel, thank you!

  • @6AxisSage
    @6AxisSage Місяць тому +3

    I see Alan Turing and I clicks ❤

  • @galactic_fx
    @galactic_fx Місяць тому +3

    amazing content ❤️🙏

  • @joebuydem
    @joebuydem Місяць тому +4

    cracked. as usual. good job.

  • @alfredooviedo9410
    @alfredooviedo9410 Місяць тому +2

    Love your videos!

  • @Felixdaq
    @Felixdaq 19 днів тому

    I really like your videos!

  • @tgd2096
    @tgd2096 23 дні тому

    Great video

  • @xbelanch
    @xbelanch Місяць тому

    kudos from Barcelona❤❤❤

  • @jespermikkelsen7553
    @jespermikkelsen7553 Місяць тому +8

    Matthew 19:30 But many who are first will be last, and many who are last will be first.
    How? Use a stack

  • @markteague8889
    @markteague8889 25 днів тому

    31:38. It sounds like Dijkstra was experiencing the same thing that Pascal felt when he became motivated to build a machine capable of carrying out addition / subtraction; or also, what Leibniz may have felt when he was motivated to extend Pascal's adding machine to incorporate multiplication / division. Arithmetic represents a kind of laborious chore for the mind seeking to relish in the abstract (i.e. on a higher level). Getting wrapped up in the details of how the machine intended to free your mind from that labor can just spoil it.

  • @nikbl4k
    @nikbl4k Місяць тому

    Hey, this is a hela interesting and informative vid

  • @pavalep
    @pavalep Місяць тому

    Thanks Kay :)

  • @ashtonsimmonds7042
    @ashtonsimmonds7042 Місяць тому

    Interesting stuff

  • @R.Daneel
    @R.Daneel Місяць тому +1

    Subbed! Great video. Alan Turing is a hero of mine. Was it string theory he was just starting to make interesting inroads into just prior to his suicide (aka manslaughter imho)?

    • @neoeno4242
      @neoeno4242  Місяць тому

      Thanks! I didn't come across string theory but I wouldn't be surprised - I did read a bit how he was working on biology and how complex biological structures get formed (in particular, I believe, pinecones). There's a little about it here - web.archive.org/web/20130324114121/www.wired.com/wiredscience/2011/02/turing-patterns/?pid=978&viewall=true

  • @mrpocock
    @mrpocock Місяць тому

    Thank you for this. It is an area of cs history that i didn't know. Would you be able to do a similar video on the haskel-style way of evaluating a program?

  • @pikuma
    @pikuma Місяць тому +1

    Very good content. Kudos. :)

  • @howwitty
    @howwitty Місяць тому +1

    That's great.

  • @pixelfingers
    @pixelfingers Місяць тому

    Amazing 😊👍

  • @onaecO
    @onaecO Місяць тому

    So cool

  • @satyarsh665
    @satyarsh665 Місяць тому +1

    Kay uploads, i click

  • @Leetneetcode1729
    @Leetneetcode1729 Місяць тому

    you are modern day Turing

  • @ProgrammingRainbow
    @ProgrammingRainbow Місяць тому

    Reverse Polish notation. Forth mentioned 🎉.

  • @b43xoit
    @b43xoit Місяць тому

    The CDC 6000-series computers had no address stack and did not support recursion.

  • @AlanCanon2222
    @AlanCanon2222 25 днів тому

    When I see Turing I click.

  • @cryplots2815
    @cryplots2815 Місяць тому +4

    😊

  • @jenpsakiscousin4589
    @jenpsakiscousin4589 16 днів тому

    Algol 60 implementation is a fun language and is a shame there are no compilers available. I have an old Algol 60 / Fortran translator that doesn’t work very well. There used to be a algol60 / simula-67 compiler on paper tape at work that was originally for the ibm360. It would be nice to find it and try to get it to run on an emulator. If you ever worked turbo pascal then Algol won’t look to strange.

  • @emptycode1782
    @emptycode1782 Місяць тому

    great videos , is the font in the recursive subroutines monospace radon ?

  • @moormoor4281
    @moormoor4281 Місяць тому +3

    Encryption on DMR is interesting subject

  • @benholroyd5221
    @benholroyd5221 15 днів тому

    Re 'bury / unbury'
    I think youre just reading too much into it. we have a mental model of call/return. burying/unburying is just different Call/return suggests that the calling procedure is the master, and the callee a slave, burying/unburying views in more as switching focus from one to the other. it isn't wrong, just unintuitive to our eyes.
    Thinking about it further, it may be more of a reference to the stack. You are in a sense burying the top of stack when you push another value.
    My favourite example of this type of thing is the Leeds Liverpool canal. the mile markers show you where you have come from, ie the side of the sign matches the direction that Leeds or Liverpool is. This is completely unintuitive to our eyes, but makes sense from a certain point of view

  • @emilyyyylime-
    @emilyyyylime- Місяць тому

    Why not implement some JavaScript checker for the RPN evaluator answer with a simple hash or something?

    • @neoeno4242
      @neoeno4242  Місяць тому +1

      Partly I've just not gotten around to it, and partly I like the emails! Good idea though, there'll be more like that in future for sure.

  • @ProgrammingRainbow
    @ProgrammingRainbow Місяць тому

    When you say subroutine, can you please do it in the voice of Majel Barrett Roddenberry. It just seems right.

  • @sacrify3449
    @sacrify3449 Місяць тому +1

    hello Kay, could you create a video about yourself? We would like to know more about you, as you are fascinating person

    • @neoeno4242
      @neoeno4242  Місяць тому

      Hi! :) The next one is actually a Q&A video so there'll be a little more about me in that one. If you want to ask any questions in particular you can email me at hello@0de5.net or leave a comment on the most recent video

  • @rasherbilbo452
    @rasherbilbo452 Місяць тому +1

    This dude's good.

  • @inerlogic
    @inerlogic Місяць тому +2

    All this talk of stacks and no mention of FORTH....

  • @Ahoora-o2v
    @Ahoora-o2v Місяць тому

    Hello, I had a question, which language is the best for making very strong and low-level malware, is there anything that can reach C? How about Rust or Zig language, which one would you suggest for these tasks and bypassing system security issues?

  • @SweepAndZone
    @SweepAndZone Місяць тому +1

    Wow. What a brilliant mind.

  • @ProgrammingRainbow
    @ProgrammingRainbow Місяць тому

    It's very popular to give Alan Turing a lot of undue credit. Maybe it's because of some wildly false movies. But most of what I see attributed to Turing is not his at all. This talk about recursion is interesting because it leaves out the actual creator, and ironically, Turing's Teacher Alonzo Church. He's the father of Recursion and Lamda calculus. 1936 I think we'll before any of the people who are given credit here. I also like to point out that both Church and Turing had ideas about how computing should be done. Alan, with the simple already obvious to everyone. Somehow, he is given credit for, with the help of Church. But also Church as the much more sophisticated one. The real British star of computing was Tommy Flowers, who gets no credit for anything. Both Flowers and Turing were badly treated by the government, but Turings was worse. However, recently, he has been given God-like status and gifted with the credit for all these things he didn't do. But this video was all about Alonzo Church. And yet his name didn't come up.

    • @neoeno4242
      @neoeno4242  Місяць тому +1

      Great comment - thank you. I'll be talking briefly about this in the next video where I'm going through some comments

    • @ProgrammingRainbow
      @ProgrammingRainbow Місяць тому

      ​@@neoeno4242I quite like your videos. Crafting executables from actual binary. I have only played with assembly on the 6502.

  • @skippyXG
    @skippyXG Місяць тому

    What an amazing video! Thank you 👍

  • @mrpocock
    @mrpocock Місяць тому

    Thank you for this. It is an area of cs history that i didn't know. Would you be able to do a similar video on the haskel-style way of evaluating a program?

    • @neoeno4242
      @neoeno4242  Місяць тому +1

      Thanks for the comment! Good idea - I believe one day I will do this, though it might be a little while before I get to it :)