Module ৮ · Recursion
ভেতরের কথা: stack frame, tail call আর stack overflow
Proপড়া
Kenji lesson 2-এর probe-টা run করল, input দিল 10000000। Playground-এ দিব্যি চলল: 10,000,000টা call গভীরে গিয়ে, 104,592 KB memory খরচ করে। ওর বন্ধু David একই file নিজের Linux laptop-এ build করল, সাধারণ gcc dive.c দিয়ে। একই input, আর উত্তর এল মাত্র এক লাইনে: Segmentation fault।
Pro lesson
এটা আরও গভীরে যায়
এই track এ আর Learn Pro তে এটা পাওয়া যায়। Skill Test এর প্রতিটা প্রশ্নের উত্তর free lesson থেকেই দেওয়া যায়, তাই এটা গভীরতা, certificate এর পথে বাধা না।
ভেতরের কথা: stack frame, tail call আর stack overflow এর ভেতরে কী আছে
- Stack কোথায় থাকে, আর কোথায় শেষ হয়
- Guard region আর signal: stack overflow আসলে কী
- একটাই crash, তিনটা নাম
- Tail call: call-এর পরে আর কোনো কাজ বাকি থাকে না
- n * factorial(n - 1) কেন tail call না
- -O2-তে GCC 12 দুইটাকে নিয়ে কী করে
- Rewrite বন্ধ করো, call ফিরে আসে
- Call-এর পরে কাজ বাকি থাকলে call থেকেই যায়
- Limit একটা setting, আর কোনো কোনো machine-এ প্রায় কিছুই নেই