دهه ۱۳۶۰
دهه ۱۳۶۰ صدو سی و ششمین دهه تقویم هجری خورشیدی است.

و از سال 1360 تا سال 1369 می باشد






جنگ ایران و عراق

جنگ عراق با ایران که در ایران با نام‌های «دفاع مقدس»، «جنگ تحمیلی»، و «جنگ هشت‌ساله»، و نزد اعراب با نام‌های «قادسیه صدام» و «جنگ اول خلیج» (به عربی: قادسیّة صدّام، حرب الخلیج الأولی) شناخته می‌شود، طولانی‌ترین نبرد کلاسیک در قرن بیستم و دومین جنگ طولانی این قرن پس از جنگ ویتنام بود.

در ۲۲ سپتامبر ۱۹۸۰ (۳۱ شهریور ۱۳۵۹) درگیری‌های پراکنده مرزی دو کشور با یورش همزمان نیروی هوایی عراق به ده فرودگاه نظامی و غیرنظامی ایران و تهاجم نیروی زمینی این کشور در تمام مرزها به یک جنگ تمام عیار تبدیل شد. پیش از آغاز جنگ روابط دو کشور به شدت تیره شده بود که خصومت شخصی صدام حسین و روح‌الله خمینی رهبران دو کشور و مهمتر از آن جاه‌طلبی‌های سیاسی، و اختلافات مرزی و ایدئولوژیکی دو کشور دلایل اصلی آن بودند. این جنگ در نهایت پس از حدود ۸ سال در مرداد ۱۳۶۷ با قبول آتش‌بس از سوی دو طرف و پس از به جا گذاشتن یک میلیون نفر تلفات و ۱۱۹۰ میلیارد دلار خسارات به دو کشور خاتمه یافت.

مبادلهٔ اسیران جنگی بین دو کشور از سال ۱۳۶۹ آغاز شد. ایران آخرین گروه از اسرای جنگی عراقی را در سال ۱۳۸۱ به عراق تحویل داد.

در این جنگ ارتش عراق به طور گسترده از جنگ‌افزارهای شیمیایی علیه کردهای عراقی و مردم و نظامیان ایران استفاده کرد. ولی ادعای استفاده ایران از سلاح‌های شیمیایی ثابت نشده‌است. همچنین دو طرف در مقاطعی اقدام به بمباران و موشک‌باران شهرها و اهداف غیرنظامی نمودند که در این مورد نیز عراق همواره پیش‌قدم بود. درگیری‌ها برای مدتی در اواخر جنگ به خلیج فارس کشیده شد و طی آن تعداد زیادی سکوی نفتی و کشتی‌های تجاری و نفت‌کش با پرچم کشورهای گوناگون آسیب دیدند.

ایالات متحده آمریکا در اواخر جنگ به شکل مستقیم وارد درگیری با ایران شد. از سوی دیگر کشورهای سوریه، کره شمالی و لیبی نیز از ایران حمایت تسلیحاتی و تکنولوژیکی کردند.

از بعد نظامی عراق با استفاده از عنصر غافلگیری در ابتدای جنگ موفق شد بخش‌هایی از خاک ایران از جمله شهر خرمشهر را اشغال نماید. ایران در سال‌های دوم و سوم جنگ موفق شد بیشتر مناطق اشغالی از جمله خرمشهر را آزاد نموده و در سال چهارم و پنجم جنگ نقاط مهمی همچون شبه جزیره فاو در جنوب و نیز ارتفاعات مشرف به سلیمانیه در شرق کشور عراق را تصرف کند.

شوروی یکی از دو ابرقدرت آن دوران از سال ۱۹۸۰ تامین نظامی هر دو کشور را متوقف کرده بود اما از سال ۱۹۸۲ به منبع اصلی عراق برای خرید سلاح‌های پیشرفته تبدیل شد. آمریکا نیز در سال ۱۹۸۵ در جریان مذاکراتی پنهانی اقدام به فروش سلاح به ایران کرد. ایران که از سال ۱۹۸۴ جنگ را به داخل خاک عراق کشانده بود، در فوریه ۱۹۸۶ موفق به تصرف فاو یکی از مهمترین بنادر صدور نفت عراق شد. در ۸ ژانویه ۱۹۸۷ ایران عملیات عظیمی به نام کربلای ۵ را برای تصرف بصره دومین شهر بزرگ عراق به انجام رساند که در جریان آن ۶۵ هزار سرباز ایرانی و ۲۰ هزار عراقی کشته شدند. ایران در ۲۶ فوریه این عملیات را متوقف کرد و در شرایطی که بن‌بست نظامی در جبهه جنوبی جنگ کامل شده بود جنگ نفتکش‌ها با حملات دو طرف به سوی کشتی‌های غیرنظامی در خلیج فارس به اوج خود رسید. کشتی‌های کویتی یکی از اهداف مورد علاقه ایرانی‌ها بودند. حملات نیروهای ایران به نفتکش‌های شوروی و آمریکا که در خدمت دولت کویت بودند و حمله غافلگیرانه یک جنگنده عراقی به کشتی جنگی آمریکایی که به آسیب شدید ناوچه یواس‌اس استارک و مرگ ۳۷ سرباز آمریکایی انجامید، کشتیرانی بین‌المللی را در معرض خطر قرار داده و زمینه مداخله بیشتر هر دو ابرقدرت را فراهم کرد به طوری‌که هر دو از قطعنامه‌های شورای امنیت که از دو طرف درخواست آتش‌بس داشت، حمایت می‌کردند.

شورای امنیت سازمان ملل متحد در کل ۸ قطعنامه در این خصوص صادر نمود که همگی به جز قطعنامه ۵۹۸ توسط ایران رد شد. دو کشور در طول جنگ آسیب‌های فراوان اقتصادی را متحمل شدند و بیش از یک میلیون نفر در این جنگ کشته یا مجروح شدند.





زمینه‌ها و دلایل آغاز جنگ

از زمان به قدرت رسیدن حزب بعث در عراق در سال ۱۹۶۸ میلادی، عراقی‌ها رویای رهبری جهان عرب را در سر می‌پروراندند. از سال ۱۹۷۳ تا ۱۹۸۰ درآمدهای نفتی عراق افزایش یافت. این موضوع به عراق کمک می‌کرد تا خلاء ناشی از مرگ جمال عبدالناصر در صدر رهبری اعراب را پر کنند. زیرا مصر پس از پیمان کمپ دیوید نفوذ خود در میان اعراب را از دست داده بود.

در جریان اعمال حاکمیت ایران بر جزایر سه‌گانه تنب بزرگ، تنب کوچک و ابوموسی عراق روابط دیپلماتیک خود را با ایران قطع کرد و از اتحادیه عرب خواست تا آنان نیز چنین کنند. درخواستی که از سوی اتحادیه عرب رد شد. عراق همچنین اعتراض رسمی‌ای به سازمان ملل نوشت که توسط این سازمان نادیده گرفته شد. عراقی‌ها که از همه جا سرخورده شدند، دست به اخراج ۷۰۰۰۰ ایرانی ساکن عراق زدند. در سال ۱۹۷۴ تنش در روابط دو کشور به اوج خود رسید و درگیری‌های نظامی مرزی پراکنده کم‌کم به جنگی تمام عیار تبدیل شد. تنش به قدری بالا گرفت که کورت والدهایم دبیرکل سازمان ملل متحد ناچار به مداخله و اعزام نماینده ویژه به مرزهای دو کشور شد. نتیجه گزارش این نماینده منجر به صدور قطعنامه ۳۴۸ شورای امنیت شد که در آن طرفین ملزم به حل اختلاف مرزی میان خود شدند.
در جریان پیمان‌نامه ۱۹۷۵ الجزایر ایران به‌طور ضمنی پذیرفت که در ازای رفع اختلافات مرزی آبی در اروند رود بر اساس خط تالوگ، دست از حمایت از کردهای عراق بردارد. این نقش را بعدها اسرائیل به تنهایی در برابر کردها برعهده گرفت. بنابراین عراق که در طول سال‌های بعد سیاست‌های ضدغرب و ضدصهیونیستی را تبلیغ می‌کرد، در سال ۱۹۸۰ و پس از سقوط شاه، سیاست ایرانی ستیزی را در دستور کار عراقی‌ها قرار داد. صدام متوجه خلاء ناشی از سقوط شاه ایران به عنوان ژاندارم خلیج فارس شده بود و تلاش داشت تا نقشی که پیش از آن محمدرضا پهلوی ایفا می‌کرد را برعهده گیرد. او برای این‌کار نیاز به مرز آبی کافی و تسلط بر خلیج فارس داشت. عراق از زمان عبدالکریم قاسم، خوزستان را بخشی از عراق می‌دانست که توسط حکومت عثمانی به ایران تقدیم شده بود و به همین دلیل از تجزیه طلبان خوزستان حمایت می‌کرد. حمایتی که با قرارداد الجزایر برای مدتی متوقف شده بود. ولی تحرکات تحریک آمیزی چون نمایش نقشه منطقه که در آن خوزستان «عربستان» نامیده شده و بخشی از خاک عراق بود از تلویزیون بصره ادامه داشت. به گفته جیمز بیل، دلیل اصلی شروع جنگ و مناقشات سیاسی قبل از آن را به طور کلی می‌توان در «تسلط یافتن بر خلیج فارس» دانست. تحقق این هدف برای مصر و عربستان سعودی و سایر شیخ نشینهای منطقه چندان ناخوشایند نبود. سفیر عراق در لبنان در ۱۲ آبان ۱۳۵۸ در مصاحبه با روزنامه النهار بیروت گفت:

بهبود شرایط با ایران منوط به تحقق ۳ شرط اصلی است: ۱-تجدیدنظر در پیمان نامه۱۹۷۵ الجزایر درباره اروند رود ۲-اعطای خودمختاری به عشایر کرد و بلوچ و عرب ۳-خروج نیروهای نظامی ایران از جزایر سه‌گانه ایرانی مورد مناقشه و سراسر خلیج فارس

صدام حسین مدعی بود که نظام بعثی از همان ابتدای انعقاد قرارداد مرزی ۱۹۷۵ در زمان شاه، خود را مغبون می‌دیده. به نظر می‌رسد که باور عمومی در میان مقامات عراق این بود که پس از انقلاب، ایران دچار ضعف شده و برای عراق فرصت مناسبی فراهم آورده تا توازن قبلی قوا در خلیج فارس را با یک حمله نظامی برهم زده و همزمان راه‌حل جدیدی برای مشکلات عراق با شیعیان جنوب و کردهای شمال این کشور جلوی پای آنان بگذارد. از سوی دیگر تنها دو ماه پیش از آغاز جنگ، صدام حسین و زیبیگنیو برژینسکی در عمان با یکدیگر دیدار کردند. باور بنی صدر این بود که برژینسکی در این ملاقات به صدام اطمینان داده که ایالات متحده مخالفتی با الحاق خوزستان به عراق ندارد.

پس از وقوع انقلاب ۱۳۵۷، عراق برخی ناآرامی‌های سیاسی را زیر سر سید محمد باقر صدر و با حمایت و تشویق ایران می‌دانست. صدام حسین، از وجود یک همسایه انقلابی شیعه در مرزهای شرقی خود احساس خوبی نداشت. رهبران ایران نیز رسماً اعلام می‌کردند که به سیاست صدور انقلاب ایران به سایر کشورها می‌اندیشیدند. روح‌الله خمینی معتقد به صدور انقلاب اسلامی به دیگر ملل بود و در نخستین سالگرد پیروزی انقلاب اسلامی (۲۲ بهمن ۱۳۵۸) اظهار داشت:






ما انقلابمان را به تمام جهان صادر می‌کنیم

عراق مدعی بود که وارد یک جنگ دفاعی شده و از حق مشروع خود برای دفاع از حاکمیت و تمامیت ارضی و بازپس‌گیری اراضی خود با توسل به زور استفاده می‌کند. آن‌ها معتقد بودند که حکومت ایران تمام راه‌های حل مسالمت‌آمیز اختلافات دو کشور را مسدود کرده‌است. پیش از آغاز یورش بارها ایران را به اقدامات تجاوزگرانه نسبت به عراق و دخالت در امور داخلی خود از جمله حمایت از حزب غیرقانونی الدعوه می‌کردند. رهبران ایران هم در بخش عربی رادیو دولتی این کشور به بدگویی شدید از حکومت بعث عراق پرداخته و آن را یک حکومت ضد اسلامی و دست‌نشانده قدرت‌های امپریالیستی معرفی می‌کردند. حکومت عراق نیز متهم می‌شد که به اقدامات تجاوزگرانه از جمله حمایت علنی از شورشیان جدایی‌خواه در خوزستان و قول کمک به آن‌ها برای آزادی «عربستان»، نامی که حکومت عراق بر این استان نهاده بود، می‌پردازد و دریادار احمد مدنی استاندار وقت خوزستان گفته بود که عراق برای شورشیان سلاح ارسال می‌کند. در چندین مورد حتی نیروهای عراق حملاتی را به شهرهای مرزی ایران ترتیب دادند که یکی از آن‌ها یورش به شهری در کردستان ایران در ژوئن ۱۹۷۹ و دیگری به شهر صالح‌آباد در جنوب بود که چندین کشته به جا گذاشت. در نیمه اول سال ۱۹۸۰ (زمستان ۵۸ و بهار ۵۹) چندین درگیری مرزی دیگر هم بین دو کشور رخ داد.

با این وجود یکسال پیش از جنگ، آمریکا دولت مهدی بازرگان را از احتمال بروز جنگ باخبر کرده بود. مقامات آمریکایی گزارش دادند:

مانورهایی با حضور مشترک یگان‌هایی مختلف و تمرین‌هایی برای گسیل و حرکت سریع یگان‌هایی بزرگ در مسیر شط‌العرب (اروند رود) رودی که مشخص‌کننده جنوبی‌ترین بخش مرز میان عراق و ایران است، در جریان است. عراق هم‌چنین مقادیر عظیمی ابزارآلات و تمهیدات جنگی را در این منطقه دارد جاساز می‌کند، این ابزارآلات و تمهیدات را پنهان و استتار می‌کند، و مشغول اجرای طرح‌های مهندسی نظامی‌ای است که حمله به ایران را برایش تسهیل خواهند کرد.






اختلافات مرزی

مهمترین اختلاف مرزی دو کشور یک اختلاف کهنه بر سر وضعیت شط العرب بود. قسمت انتهایی شط العرب یا اروند رود مرز دو کشور را تشکیل می‌دهد. دولت عراق معتقد بود که مرز دو کشور بایستی بر اساس مفاد قرارداد قسطنطنیه ۱۹۱۳ تعیین شود اما ایران مرز دو کشور را خط تالوگ یعنی عمیق‌ترین قسمت رودخانه می‌دانست. دو کشور یک بار در سال ۱۹۳۴ اختلاف خود را به جامعه ملل ارجاع دادند اما توافقی حاصل نشد. در سال ۱۹۳۷ نخستین معاهده مرزی دو کشور به امضا رسید. بر اساس این قرارداد مرز دو کشور در امتداد ساحل شرقی رودخانه بود اما یک قسمت لنگرگاهی چهار مایلی در کنار آبادان به ایران اختصاص داده شده و در این قسمت خط تالوگ مرز دو کشور را مشخص می‌کرد. عراق معتقد بود ایران از شرایط داخلی سیاسی نابسامان این کشور در آن زمان برای بهبود وضعیت خود در مذاکرات سود جسته است. ایران هم از این قرارداد ناراضی بود و در دهه ۱۹۶۰ آن را فسخ کرده و خواستار مذاکرات برای تعیین خط مرزی جدید شد و همزمان با حمایت از شورشیان کرد در شمال عراق این کشور را تحت فشار گذاشت. نهایتاً در سال ۱۹۷۵ در قرارداد الجزایر عراق خواسته‌های ایران در زمینه شط العرب را پذیرفت و خط تالوگ برای نخستین بار مرز رسمی دو کشور در این رودخانه شد و ایران هم در ازای آن تعهد کرد که به حمایت از شورشیان کرد پایان دهد. اما پنج سال بعد و پنج روز پیش از آغاز جنگ صدام حسین این قرارداد را فسخ کرده و مدعی شد این پیمان به دلیل عدم رعایت مفاد آن از سوی ایران اعتبار خود را از دست داده است.





قوای طرفین

در طول سال‌های جنگ قدرت نظامی ایران از نظر تجهیزات کاهش و قدرت نظامی عراق افزایش یافت. پیش از آغاز جنگ (سال ۱۹۸۰) ارتش عراق دارای ۴۴۳۰۰۰ نیروی انسانی بود و ایران ۳۹۰۰۰۰ ارتشی داشت. عراق ۲۷۵۰ تانک و ایران ۱۷۳۵ تانک داشت. عراق ۳۳۹ هواپیمای نظامی و ایران ۴۴۷ هواپیما داشتند، هشت سال بعد و در پایان جنگ (سال ۱۹۸۸) عراق دارای ۱۰۰۰۰۰۰ نیروی انسانی بود و ایران تنها ۶۰۰۰۰۰ نفر دراختیار داشت. عراق ۴۰۰۰ تانک در مقابل ۱۰۰۰ تانک ایران داشت. عراق ۶۰۰ هواپیما و ایران تنها ۵۰ هواپیمای جنگنده قابل پرواز داشت. با این تعداد هواپیمای جنگنده از انواع میگ-۲۹، سوخو-۲۴ و داسو میراژ اف۱، نیروی هوایی عراق در پایان جنگ به ششمین نیروی هوایی عظیم جهان تبدیل شده بود.





نیروهای عراق

ارتش عراق در آغاز جنگ، یک ارتش کاملاً وابسته به شوروی بود. ۸۵ درصد از تجهیزات این ارتش، طی ۵ سال پیش از جنگ از شوروی وارد عراق شده بود. صنایع نظامی فرانسه دومین صادرکننده تجهیزات و ادوات نظامی به عراق بودند. پس از این دو کشور، کشورهایی مانند برزیل، اسپانیا و ایتالیا قرار داشتند.

عراق جنگ را در حالی آغاز کرد که زرادخانه‌های این کشور پر از سلاح بود. ولی این کشور با بحران کمبود قطعات یدکی مواجه بود و در آغاز جنگ شوروی تنها بخش کوچکی از قطعات مورد نیاز عراق را تامین می‌کرد. ولی پس از شکست عراق در مرحله اول جنگ و از سال ۱۹۸۲، شوروی دوباره به مهمترین متحد نظامی عراق تبدیل شد. تا این مقطع عراق قطعات ساخت شوروی مورد نیاز خود را از کشورهایی مانند کره شمالی، مصر، چین و یوگوسلاوی تامین می‌کرد. همزمان سلاح‌های زیادی از جمله موشک‌های اگزوسه از فرانسه خریداری شد. فرانسه همچنین تا پیش از آنکه تولید نوع مخصوص ضد کشتی هواپیماهای میراژ اف-۱ به پایان رسد، پنج فروند جنگنده ضدکشتی سوپر اتاندارد خود را به عراق اجاره داد که در جنگ نفت‌کش‌ها و حمله به جزیره خارک مورد استفاده قرار گرفتند.

خلبانان عراقی، دست کم در نبردهای هوایی بسیار پائین‌تر از استانداردهای غربی رفتار می‌کردند. درواقع یکی از مهمترین مشکلات عراق در طول جنگ نداشتن نیروی انسانی کارآزموده برای استفاده از سلاح‌های مدرنی بود که به دست می‌آورد. عراق هیچ‌گاه نتوانست از حداکثر ظرفیت این سلاح‌ها استفاده کند. برای نمونه ۴ سال پس از تحویل هواپیماهای سوخو-۲۴ به عراق، هیچ‌کدام از این هواپیماها بهره‌برداری نشده بودند. حتی امروز نیز نمی‌توان تخمین زد که چه تعداد از عراقی‌های کشته شده در طول جنگ، مستقیم و در اثر رویارویی با ایران کشته شده‌اند و چه تعداد از آنان در اثر ضعف فرماندهی و یا اشتباه در استفاده از تسلیحات پیشرفته.

مشکل عدم بهره‌برداری صحیح از تسلیحات پیشرفته فقط در نیروی هوایی این کشور وجود نداشت. برای نمونه خدمه عراقی گونه‌ای از تانک‌های ساخت شوروی در طول جنگ هرگز از سیستم دید در شب این تانک‌ها استفاده نکرده‌بودند. چرا که آن‌ها درک نمی‌کردند که تانک‌های آنان به چنین سامانه‌ای مجهز است. تا سال ۱۹۸۳ عراق حدود ۲۰۰ هواپیمای خود را از دست داده بود و بیشتر این خسارت نه در جنگ با ایران، بلکه در اثر تصادفات و سوانح غیر جنگی و مشکلات تعمیر و نگهداری به وجود آمده بود.

خلبانان ایرانی در طول جنگ ایران و عراق نه تنها با عراقی‌ها می‌جنگیدند، بلکه با خلبانانی با ملیت‌های دیگری از سراسر دنیا. خلبانان برخی از میگ‌های ۲۱ و میگ‌های ۲۳ عراق مصری بودند و خلبانان برخی از میراژهای اف-۱ بین سال‌های ۱۹۸۵ تا ۱۹۸۶ بلژیکی، آفریقای جنوبی، استرالیایی و در یک مورد حتی آمریکایی نیز بودند. بعلاوه خلبانان فرانسوی و اردنی نیز به عنوان معلم‌خلبان کار می‌کردند. شوروی‌ها و آلمان شرقی‌ها به عنوان خلبان میگ-۲۵ در عملیات‌ها شرکت داشتند. بیشتر گزارش‌هایی که دربارهٔ استقرار خلبانان شوروی در عراق است حکایت از آن دارد که این خلبانان دائماً با اف-۱۴ها برخورد داشته و چندین میگ-۲۵ با خلبان روس سرنگون شده است. معمولاً شوروی‌ها چندین خلبان با تجربه خود را برای این عملیات می‌فرستادند.





نیروهای ایران

در طول دهه هفتاد میلادی، ایران یکی از بزرگترین واردکنندگان تجهیزات نظامی بود. بخش عمده‌ای از این تجهیزات پیشرفته همچون هواپیماهای اف-۱۴، تجهیزات الکترونیکی و موشک‌های فونیکس از ایالات متحده وارد می‌شد. آلمان غربی در ساخت بزرگترین زرادخانه اصفهان مشارکت داشت و انگلستان به ایران اسلحه می‌فروخت. برخی تجهیزات پدافند هوایی و ترابری نظامی ایران نیز از شوروی تامین می‌شد. این روند با وقوع انقلاب ایران متوقف شد و نیروهای نظامی ایران را در موقعیت دشواری قرار داد. ایران برای دور زدن این تحریم تسلیحاتی روش‌های زیر را به کار گرفت.

تلاش برای خرید قطعات یدکی مورد نیاز از هر منبع ممکن (مانند اروپای غربی، کره جنوبی، تایوان و حتی اسرائیل (در ماجرای ایران کنترا) که این قطعات را داشتند و یا آن را تحت لیسانس آمریکا تولید می‌کردند. ایران ناچار بود این قطعات را با قیمت گران و از بازار آزاد تهیه کند.
خرید لوازمی که خارج از حوزه تحریم تسلیحاتی بودند و تبدیل آن به تجهیزاتی که کاربرد نظامی داشتند. برای نمونه می‌توان به هواپیماهای سوئیسی، بالگردهای هلندی، کامیونهای آلمانی، مهمات ساخت چک اسلواکی، زره‌پوش‌های مجارستان، زره‌پوش‌ها و مهمات لهستان و خودروهای رومانیایی خریداری شده توسط ایران اشاره کرد.

یکی از مشکلات ایران در ابتدای جنگ، مسئله فرماندهان ارتش این کشور بود. از دید حکومت انقلابی ایران و از میان فرماندهان نظامی زمان پهلوی، تنها تعداد معدودی که در زمان دولت ملی محمد مصدق از فرماندهان بودند و یا کسانی که مخالف حکومت شاه بودند مناسب پست‌های فرماندهی نظامی بودند. چهل هزار مستشار آمریکایی که به عنوان آموزش با ارتش ایران همکاری می‌کردند با وقوع انقلاب از کشور اخراج شده بودند، تعداد زیادی از فرماندهان نظامی فرار کرده، بازنشسته شده و یا برکنار شده بودند، نظام سربازگیری ناکارا شده بود و بخشی از نیروهای نظامی کشور درگیر ناآرامی‌های داخلی (مانند گنبد کاووس) شده بودند.

در فاصله میان بهمن ۱۳۵۷ تا مهر ۱۳۶۱، ده‌ها تیمسار و افسر ارشد نظامی تعویض، کشته و یا برکنار شدند. ولی‌الله قرنی در تهران ترور شد. ولی‌الله فلاحی در یک سانحه سقوط هواپیما به شهادت رسید. سپهبد سعید مهدیون به جرم شرکت در کودتای نوژه اعدام و سرلشکر باقری نیز زندانی شد. سرهنگ فکوری که پنجمین فرمانده نیروی هوایی ایران به هنگام شروع جنگ بود همراه با سرتیپ فلاحی کشته شد. دریادار مدنی که استعفا داد و از کشور خارج شد و بالاخره دریادار بهرام افضلی که چهارمین فرمانده نیروی دریایی ایران به هنگام شروع جنگ بود و به جرم عضویت در حزب توده ایران در اردیبهشت ۱۳۶۲ دستگیر شد و به اتهام جاسوسی به همراه ۹ نفر دیگر از افسران بلندپایه ارتش در اسفند سال ۱۳۶۲ تیرباران شد نمونه‌هایی از فرماندهان نظامی تعویض شده بودند.

در این بین سپاه پاسداران نیز نیرویی تازه‌تاسیس متشکل از جوانان بود که امکانات و توانایی لازم برای جنگ را نداشت. فرماندهان رده بالای سپاه را غالباً جوانان کم تجربه تشکیل می‌دادند که از اصول کلاسیک رزم بی اطلاع بودند. برای نمونه محسن رضایی زمانی که در سال ۱۳۶۰ به فرماندهی کل سپاه منصوب شد، تنها ۲۷ سال سن داشت و تحصیلات او نیز دیپلم دبیرستان بود.

در سال ۱۹۸۲، مجلس اعلای انقلاب اسلامی عراق با پشتیبانی ایران در این کشور تأسیس شد و ایران شورشیان عراقی را برای مبارزه علیه کشور خود در این مجلس بسیج کرد. سپاه بدر که توسط سید محمدباقر حکیم تأسیس شد شاخه نظامی مخالفین عراقی شد. حزب الدعوه که در ایران حضور داشت و مورد حمایت دولت ایران بود علیه عراق فعالیت می‌کرد و دست به ترور طارق عزیز معاون وقت نخست وزیر این کشور زد.





خلاصه روند جنگ

نشانه‌های تنش نظامی میان عراق و ایران، تقریباً بلافاصله پس از وقوع انقلاب ایران آشکار شد. در ۱۳ فروردین ۱۳۵۸ عراق برای نخستین بار به حریم هوایی ایران تجاوز کرد. ۵ روز بعد، نیروهای عراقی به یک پست مرزی ایران در قصرشیرین حمله کردند. در اردیبهشت عراق به شهر مهران حمله هوایی کرد. پس از آن و تا آغاز همه‌جانبه جنگ، متجاوز از ۵۶۰ مورد درگیری در مرزهای ایران و عراق گزارش شده‌است.

در طی سخنرانی سعدون حمادی، نخست وزیر عراق در شورای امنیت سازمان ملل متحد در تاریخ ۱۵ اکتبر ۱۹۸۰ و چند روز بعد از شروع اولین درگیری‌ها، وی ایران را متهم کرد که از تروریستهایی که در خاک عراق اقدام به بمب‌گذاری‌های گسترده می‌کنند و در نتیجه تعداد زیادی از مردم عراق را می‌کشند، حمایت می‌کند.





آغاز رسمی جنگ، حمله و پیشروی عراق

عراق در ۳۱ شهریور ۱۳۵۹ (۲۲ سپتامبر ۱۹۸۰) حمله به ایران را آغاز کرد. نیروهای عراقی به‌گونه‌ای برنامه‌ریزی کرده بودند که نواحی بزرگی از غرب ایران را اشغال کنند.

در نخستین پیشروی ارتش عراق به خاک ایران حدود سی هزارکیلومتر مربع از خاک ایران به اشغال نیروهای متجاوز درآمد.طی دو روز نخست حمله، نیروهای عراقی به هیچ یگان نظامی ایرانی که در حد تیپ باشد، برنخوردند. در واقع آن‌زمان ایران فقط دو لشکر از نیروهای مسلح و دو لشکر موتوریزه پیاده‌نظام در غرب کشور داشت که آن‌ها هم همگی از مرزها فاصله گرفته بودند. در این روزها، واحدهای گوناگون نیروی زمینی ایران به دلیل از هم پاشیدگی با تأخیر توانستند خود را به جبهه جنوب برسانند. نیروی زمینی ارتش توان مقابله پایاپای را با عراق نداشت. در همین زمان قاسمعلی ظهیرنژاد نظریه دادن زمین در مقابل گرفتن زمان را مطرح کرد که با مخالفت اکثر فرماندهان ارتش روبرو شد.

نیروی زمینی عراق از سه جبهه و در هر جبهه با یک سپاه یورش زمینی خود را آغاز کرد. سپاه اول از جبهه شمالی حدود ۲۵ کیلومتر در اطراف قصر شیرین پیشروی کرد و سپاه دوم از جبهه میانی و در اطراف مهران، هردو پس از برخورد به مناطق کوهستانی متوقف شدند. این حملات برای پشتیبانی از حمله اصلی در خوزستان انجام شد. صدام تصور می‌کرد که مورد استقبال مردم خوزستان که بخشی از آنان عرب یا عرب‌زبان بودند قرار خواهد گرفت.

هدف اولیه بخش جنوبی ارتش عراق، تصرف برق‌آسای شهر مرزی خرمشهر و پس از آن آبادان، اهواز، دزفول و سوسنگرد بود. عراق کسب این هدف را یک پیروزی استراتژیک برای خود تلقی می‌کرد. ولی سه ستون زرهی عراقی که برای تصرف خرمشهر اعزام شده بودند با مقاومت ناهماهنگ و خودجوش مردم این شهر مواجه شدند و در کمین حدود ۳۰۰۰ غیرنظامی‌ای افتادند که سلاح‌های ناچیزی همچون تفنگ ام۱ گاراند، نارنجک و کوکتل مولوتوف داشتند، سازماندهی نشده بودند و از هر آموزش نظامی پیش از جنگ محروم بودند. ولی در عوض انگیزه بسیار زیادی برای جنگیدن داشتند. این نیروها موفق شدند جلوی پیشروی سریع ارتش عراق را بگیرند و عراق در همان مرحله اول جنگ، در رسیدن به اهداف خود ناکام ماند و درگیر یک نبرد خانه به خانه در کوچه‌های خرمشهر شد. تصرف خرمشهر برای عراق به ۱۵ روز زمان و۵۰۰۰ کشته نیاز داشت و پس از آن نیز عراق به مدت سه هفته درگیر نبردهای خیابانی در این شهر بود. شهری که مدت‌ها به افتخار این نبرد، خونین‌شهر نامیده می‌شد.

پس از تصرف خرمشهر، ارتش عراق موفق شد در اواخر آبان شهر آبادان را به‌طور کامل محاصره کند. عراقی‌ها که بر حمایت عرب‌های خوزستان از ارتش خود، دست‌کم در شمال خوزستان حساب کرده‌بودند، بازهم ناکام ماندند. حملات پیاپی عراق برای تصرف شهرهای سوسنگرد و اهواز عقیم ماند و ارتش عراق شانس غافلگیری را به‌خاطر مقاومت یک گروه کوچک مردمی از دست داد. نقشه اولیه صدام، یک پیروزی سریع در حداکثر چند هفته بود. صدام و حتی بسیاری از تحلیلگران غربی هرگز پیش‌بینی شکست عراق در دستیابی به این اهداف و آغاز یک جنگ فرسایشی طولانی را نمی‌کردند.

به گفته مقامات سابق ارشد عراق وظیفه اصلی ارتش عراق در یورش اولیه خود این بود که توپخانه ایران را از مرزهای عراق دور کرده تا قادر به بمباران شهرهای عراقی، به ویژه بصره، نباشند. این کار بایستی در طول سه تا هفت روز انجام می‌شد و سپس بغداد برای مذاکره با تهران وارد عمل می‌شد. این طرح بر اساس استراتژی جنگی استاندارد عربی آن دوران تهیه شد که بر یورش سنگین نخست و سپس مذاکره بر اساس «وضعیت جدید» تأکید داشت. بنابراین نیروهای عراقی در خاک ایران نمی‌بایست بیش از ۴۰ کیلومتر پیشروی کنند و هیچ برنامه‌ای برای حفظ خاک ایران در مدتی طولانی وجود نداشت. اما در عمل این ایده بی‌ثمر بود چراکه ایرانی‌ها حاضر به مذاکره نبودند، آن‌هم در شرایطی که نیروهای عراقی تا آن حد در خاک ایران پیشروی کرده بودند. ضمن اینکه روحانیت حاکم بر ایران علاقه‌مند به گسترش جنگ و استفاده از آن برای دستیابی به مقاصد خود بود. حمله عراق نه تنها باعث فروپاشی حکومت ایران از درون نشد بلکه درست برعکس به آن فرصت داد تا خود را در قدرت تثبیت کند. ارتش عراق هرچند به خوبی مجهز شده بود اما آمادگی کاملی برای جنگ نداشت و البته ایرانی‌ها از این نظر در وضعیت نامناسب‌تری قرار داشتند. مهمترین بخش ارتش عراق به طور غیرمنتظره‌ای خوب جنگید: حملات تانک‌های عراقی در دشت‌های میان شهرهای ایران بارها ایرانیان را غافلگیر کرده و صدمات سختی را به واحدهای پراکنده ایرانی در طول خط مقدم وسیع نبرد وارد کرد. هرچند بسیاری از تحلیل‌گران شیوه عملیاتی عراق را بر گرفته از سبک شوروی توصیف می‌کنند اما آن‌ها در واقع بسیار بیشتر تحت تاثیر نظریات جنگی بریتانیایی قرار داشتند هرچند ارتش عراق تقریباً به طور کامل با تانک‌ها، نفربرها، و توپخانه روسی تجهیز شده بود.

در جریان حمله جسورانه عراق به شرق کارون در اواخر مهرماه که مدافعین ایرانی را غافلگیر کرده و به آشوب کشانده بود، نیروی هوایی و هوانیروز ایران با وجود مشکلات اطلاعاتی برای هدف‌گیری رخنه‌هایی در مواضع عراقی پدید آورده و بسیاری از خودروهای عراقی را نابود کردند. در این حمله بخش‌هایی از سپاه پنجم مکانیزه و سپاه ششم زرهی عراق با ایجاد سرپل کوچکی در بخش شرقی رود در نزدیکی دارخوین نیروهای ایرانی را غافلگیر و مسیرهای تدارکاتی ایران را در معرض تهدید قرار دادند. آن‌ها از این نقطه می‌توانستند به سمت شمال و شرق پیشروی کرده و دزفول را به محاصره درآورند. در اواخر مهر نیز یک اسکادران اف-۱۴ برتری هوایی را بر فراز میدان جنگ در خوزستان تأمین کرده و با سرنگون کردن حدود ۱۲ جنگنده عراقی تنها در دو روز به نیروهای ایرانی اجازه داد تا پدافند هوایی عراق در منطقه را که شامل چندین پایگاه سام-۶ می‌شد پاکسازی کرده و شبکه تدارکاتی عراق را منهدم کنند.

در میان واحدهای نیروی زمینی ارتش ایران در هفته اول حمله عراق به ایران، تنها سرهنگ هوشنگ عطاریان در جبهه غرب کشور بود که با اتخاذ تاکتیک عملیاتی ضد حمله در روز هشتم از شروع جنگ توانست ارتش عراق را از خاک ایران بیرون نمایند، در گزارش جنگی جمهوری اسلامی در آن ایام آمده‌است:

بعد از ظهر امروز هوشنگ عطاریان فرمانده نیروی زمینی ارتش در جبهه غرب کشور، قصر شیرین را باز پس ستاند و در جبهه غرب کشور ۸۰ تانک عراقی را نابود کردند و نیروهای ما رادیو و تلویزیون را باز پس گرفتند

دو سال بعد، سرهنگ هوشنگ عطاریان به علت توده‌ای بودن دستگیر و به اتهام: عامل نفوذی عراق، تیرباران شد.





توقف پیشروی عراق

از زمستان ۱۳۵۹ که امید دست یافتن به یک پیروزی سریع برای عراق به یاس مبدل شد، شوروی حمایت تسلیحاتی خود از عراق را متوقف کرد. عراق نیز ناچار شد در مصرف تسلیحات خود محافظه‌کاری بیشتری نشان داده و عملیات نظامی خود را کندتر کند. از طرفی ایران نیز درگیر مشکلات داخلی خود شده‌بود. اختلافات میان سپاه پاسداران و ارتش از یک سو و اختلاف میان ابوالحسن بنی‌صدر و اکثریت مجلس شورای اسلامی از سوی دیگر موجب شده بود تا انسجام تصمیم گیری در زمینه جنگ وجود نداشته باشد. از سوی دیگر ایران نیز همچون عراق درگیر مسئله تامین تجهیزات نظامی مورد نیاز خود بود.

در همین زمان نیروی هوایی عراق به خاطر نگرانی از نابودی هواپیماهایش در زمین، ناگزیر شد تعداد زیادی از هواپیماهای خود را به فرودگاه «الولید» در غرب این کشور (۵۰ کیلومتری مرز اردن) منتقل کند تا از برد هواپیماهای ایران خارج باشند. با این حال خلبانان ایرانی توانستند با انجام عملیات سوخت گیری در هوا خود را به پایگاه «الولید» برسانند و در آنجا ۴۶ هواپیمای عراقی (۱۵ تا ۲۰ درصد از کل نیروی هوایی عراق در آن زمان) را روی زمین منهدم نمایند. این حمله به عملیات اچ-۳ معروف شده‌است.

نیروی هوایی حلقه فراموش‌شده‌ای بود که در نهایت کل عملیات جنگی عراق را به شکست کشانید. نیروی هوایی عراق نمی‌توانست با نیروی هوایی و هوانیروز ایران هماوردی کند چرا که از قدرت آتش، هواپیماهای توانا و تمرینات مناسب برخوردار نبود. حکومت عراق از این موضوع آگاه بود اما تصور می‌کرد که وضعیت نیروی هوایی و هوانیروز ایران هم به نابسامانی دیگر بخش‌های ارتش ایران باشد. آن‌ها همچنین امیدوار بودند که با حمله هوایی نخست خود به پایگاه‌های هوایی مهم ایران نیروی هوایی این کشور را زمین‌گیر کنند. اما در عمل نیروی هوایی ایران تنها پس از ۲۴ ساعت به یک دستگاه جنگی تبدیل شد و نه تنها به تمام خاک عراق حمله‌ور شد بلکه آسیب شدیدی هم به نیروی زمینی عراق وارد کرد. نیروی هوایی ایران تنها پس از سه هفته با نابود کردن کامل تدارکات عراق و اکثر پایگاه‌های نظامی آن در نزدیکی جبهه یورش نیروهای عراقی را متوقف کرد، و اگر وضعیت هوا در آن برهه زمانی آن قدر بد نبود، این کار در مدت کوتاهتری انجام می‌شد. نیروهای عراقی در شرایطی نبودند که قادر به مقابله با اف-۱۴های ایرانی باشند و حتی توانایی جلوگیری از خسارات سنگینی را که جنگنده‌های اف-۴ و اف-۵ و هلیکوپترهای کبرای ایرانی به نیروهای زمینی آنان وارد کردند، نداشتند. نیروی هوایی و هوانیروز ایران در نابودسازی خودروهای نظامی، ادوات توپخانه‌ای و تدارکات ارتش عراق به قدری موفق بود که توانایی هجومی ارتش عراق تقریباً از بین رفت. واحدهای زرهی و مکانیزه ارتش عراق دستور داشتند تا به جای درگیر شدن در جنگ شهری در فاصله بین شهرها پیشروی کرده و ارتباط آن‌ها را قطع کنند اما تلاش آن‌ها بی‌ثمر ماند چراکه برای محاصره شهرهای خوزستان به تدارکات نیاز داشتند و مسیرهای انتقال تدارکات آن‌ها در معرض حملات مداوم و سنگین نیروی هوایی ایران بود. در نتیجه آن‌ها فقط یک شهر مهم یعنی خرمشهر را که تنها چند کیلومتر از مرز فاصله دارد به تصرف خود درآوردند. عراق برای تصرف خرمشهر به جنگ شهری خانه به خانه روی آوردند که نیروی هوایی نمی‌توانست در آن چندان موثر باشد. با فتح خرمشهر ذخایر استراتژیک عراق به قدری کاهش یافته بود که آن‌ها تا چندین سال قادر به آغاز هیچ عملیات هجومی دیگری نبودند.





آغاز پیروزی‌های ایران

سرانجام ابوالحسن بنی‌صدر در ابتدای تابستان ۱۳۶۰ از ریاست جمهوری عزل شد. این امر موجب شد تا در زمینه جنگ در تهران تمرکز تصمیم‌گیری به وجود آید. از طرفی اختلافات میان ارتش و سپاه نیز حل و فصل شد و این دو نیرو آماده همکاری و انجام عملیات مشترک شدند. همزمان فرماندهی کل عملیات نظامی در جبهه‌ها به ولی‌الله فلاحی از امیران باتجربه ارتش سپرده شد. در کنار این مسئله کسب تجربه توسط فرماندهان جوان سپاه، موجب بهبود توان تاکتیکی، برنامه ریزی صحیح و اطلاعات و امنیت بهتر عملیات شد. پیروزی‌های ایران از این دوره آغاز شد.

در شهریور ۱۳۶۰ خبرنگاران غربی که برای نخستین‌بار از سوی ایران اجازه یافته بودند از جبهه‌های جنگ بازدید کنند، در گزارش‌های خود از شور و امید به زندگی در نیروهای ایرانی خبر دادند. در طی یک عملیات سه روزه ایران موفق شد شهر آبادان را پس از حدود یک سال از محاصره خارج کند و امیدهای صدام را برای به دست آوردن سهم بیشتر از اروندرود برباد دهد. این پیروزی آن‌چنان غیر منتظره بود که برخی گمان می‌کردند نظامیان عراقی در این جبهه علیه صدام کودتا کرده‌اند. همزمان نیروی هوایی تاسیسات نفتی کرکوک در شمال عراق و دو مرکز نفتی در کویت را که واسطه مبادله نفت خام عراق با محصولات سوختی بودند بمباران کرد.

در دوم فروردین ۱۳۶۱ ایران طی عملیات فتح‌المبین موفق شد مناطق استراتژیکی را از تصرف عراق خارج کند و دست‌کم ۱۵۰۰۰ عراقی را به اسارت بگیرد. پس از این عملیات ابتکار استراتژیک در جبهه‌ها به دست نیروهای ایرانی افتاده بود.






آزادسازی خرمشهر

مدتی پیش از فتح خرمشهر، تحلیلگران سازمان سیا در ایالات متحده به این نتیجه رسیدند که در صورت ادامه همین روند، عراق در جنگ با ایران شکست خواهد خورد. در سوم خرداد ۱۳۶۱ ایران به یک پیروزی بزرگ دیگر دست یافت. عراق که هنوز از شکست حصر آبادان ترمیم نیافته بود، خود را با عملیات بیت‌المقدس روبرو دید. این عملیات در سه محور جنوب سوسنگرد در شمال خوزستان، جاده اهواز خرمشهر در مرکز و خود شهر خرمشهر انجام شد و در هر سه محور به پیروزی ایران منجر شد. تنها کمتر از ۲۸ ساعت از آغاز عملیات، نیروهای ایرانی کنترل شهر را به دست گرفتند. در حین عملیات ۱۵۰۰۰ سرباز عراقی کشته و یا اسیر شدند.

تحلیلگران سیا پیش بینی می‌کردند که احتمال مداخله سایر اعراب در جنگ و منطقه‌ای شدن آن نیز وجود دارد. تا اوایل تیرماه ۱۳۶۱، رونالد ریگان به این نتیجه رسید که ایالات متحده نمی‌تواند اجازه دهد که عراق بازنده این جنگ باشد و باید به هر قیمتی جلوی شکست کامل عراق را بگیرد. رئیس بخش خاورمیانه شورای عالی امنیت ملی آمریکا در دولت ریگان، سال‌ها پس از پایان جنگ ایران و عراق و زمانی که آمریکا در دهه ۹۰ میلادی رو در روی صدام ایستاده بود در این باره گفت:

این‌گونه نبود که ما می‌خواستیم عراق «برنده» جنگ باشد. خیر. ما فقط مایل نبودیم عراق «بازنده» جنگ باشد. ما را واقعاً ساده فرض نکنید. ما می‌دانستیم که او (صدام حسین) یک «حرامزاده» است. ولی او، «حرامزاده» خودمان بود






طرح عربی صلح

آزادسازی خرمشهر نقطه عطف بزرگی در جنگ ۸ ساله ایران و عراق بود. دو کشور با تصمیم سرنوشت ساز ادامه جنگ یا اعلام آتش‌بس روبرو بودند. سازمان ملل به خواست صدام به ایران اصرار کرد که آتش‌بس را بپذیرد. ولی موانع زیادی بر سر این آتش‌بس وجود داشت. عراق همچنان بر نقض معاهده الجزایر و حق حاکمیت بر اروندرود پافشاری می‌کرد. از سوی دیگر عراق هنوز بخش‌های از خاک ایران را در تصرف خود داشت و روح‌الله خمینی هم می‌خواست صدام از قدرت کنار برود. این بود که ایران آتش‌بس پیشنهادی در قطعنامه ۵۱۴ شورای امنیت را نپذیرفت. اگرچه احمد خمینی پیش از مرگ تاکید داشت که روح‌الله خمینی با ادامه جنگ پس از آزادی خرمشهر مخالف بوده‌است.

آزادی خرمشهر نشان از پیروزی قریب‌الوقوع ایران در جنگ داشت. شرایطی فراهم شده بود که ایران بتواند غرامت قابل توجهی از عراق و متحدین عرب او (به ویژه عربستان سعودی) که به شدت ترسیده بودند دریافت کند. اسپنسر تکر در دانشنامه جنگ‌های خاورمیانه به طرح میانجیگرانه‌ای اشاره می‌کند که بر اساس آن، عربستان سعودی پس از آزادی خرمشهر پیشنهاد نمود تا غرامت جنگ توسط کشورهای عربی به ایران پرداخته شود و عراق نیز بخشی از خاک ایران را که در تصرف داشت ترک کند. به گفته اسپنسر تکر مقامات ایران این پیشنهاد را رد کرده و خواهان بازگشت یکصد هزار شیعه عراقی که توسط صدام اخراج شده بودند به کشور عراق شده بودند. به گفته تکر شرط دوم ایران پرداخت ۱۵۰ میلیارد دلار غرامت به جای ۷۰ میلیارد دلار پیشنهادی عربستان و شرط سوم برکناری صدام از قدرت بوده‌است. یک ژورنال تخصصی که در سال ۱۹۸۴ (دو سال پس از آزادی خرمشهر) منتشر شده‌است، مبلغ پیشنهادی عربستان را ۲۵ میلیارد دلار ذکر کرده‌است. در یک کتاب منتشر شده توسط مرکز تحقیقات استراتژیک امارات عربی متحده، بدون اشاره به مقدار غرامت پیشنهادی، این مبلغ «قابل ملاحظه» توصیف شده‌است. علی‌اکبر ولایتی اصل وجود چنین پیشنهادی در آن زمان را مورد تائید قرار داده و حتی هاشمی رفسنجانی در خاطرات روز ۱۵ اسفند ۱۳۶۰ خود می‌نویسد:

وابسته نظامی ایتالیا گفته: کشورهای نفت خیز منطقه مایلند شصت میلیارد دلار خسارات جنگ را از طرف صدام به ایران بدهند و ایران از شرط سوم که کیفر صدام است منصرف شود.





هاشمی رفسنجانی بعدها در مرداد ۱۳۸۹ در یادداشتی گفته‌است:

در گفتگوها هیچ ضمانتی برای جلوگیری از تکرار شرارت‌های صدام نمی‌دادند.... میانجی‌ها که اکثراً کشورهای عرب منطقه بودند... اقدام به انتشار شایعات بی اساس می‌کردند که یکی از خبیث ترین شایعات آنان پیشنهاد غرامت‌ها پس از فتح خرمشهر بود. شایعه‌ای که با همه بی اساس بودنش، در افواه افتاد

عزت‌الله سحابی و هدی صابر استدلال کرده‌اند که اگر هم برای ایران مقدور نبود که در این مقطع غرامت جنگ را از دولتهای عربی دریافت کند، نفس برقراری آتش‌بس و پذیرش صلح در سال دوم جنگ مانع گسترش و افزایش خسارت و تلفات می‌شد و این به مصلحت ایران بود.





توقف ایران

عراق در آغاز جنگ، ۱۳۶۰۰ کیلومتر مربع از خاک ایران را اشغال کرده بود. با انجام چهار عملیات موفقیت آمیز ایران با نام‌های عملیات ثامن‌الائمه، عملیات طریق‌القدس، عملیات فتح‌المبین و عملیات بیت‌المقدس، ۸۶۰۰ کیلومتر از این اراضی به شکل نظامی آزاد شد. از ۵۰۰۰ کیلومتر مربع باقی‌مانده، عراق به صورت داوطلبانه از ۲۵۰۰ کیلومتر مربع دیگر (پس از آزادی خرمشهر) عقب نشینی نمود. ولی ۲۵۰۰ کیلومتر مربع دیگر از خاک ایران (شامل شهرهای مهران و نفت شهر) همچنان و تا پایان جنگ در تصرف ارتش عراق باقی‌ماند.

اگرچه پس از آزادی خرمشهر ایران دو عملیات موفق دیگر نیز (ازجمله در منطقه سومار) انجام داد، ولی شکست نیروهای نظامی این کشور در مقابل ارتش عراق در عملیات رمضان (تابستان ۱۳۶۱) و در منطقه بصره موجب شد ایران برتری تبلیغاتی و روحی خود را از دست بدهد. گفته می‌شود که عملیات رمضان بزرگترین نبرد زمینی جهان پس از جنگ جهانی دوم بوده‌است. در این نبرد سه موج جداگانه از سپاهیان داوطلب در زمینی مسطح به سوی بصره حرکت کردند. عراق به سادگی از توپخانه برای قتل‌عام ۳۰۰۰۰ سرباز ایرانی استفاده کرد. عملیاتی که درواقع هیچ دستاوردی برای ایران نداشت. ژنرال ماهر عبدالرشید در این باره گفت:

برای نابود کردن هر حشره مزاحمی، حشره‌کش مناسب وجود دارد که بدون توجه به تعداد حشره‌ها، آنان را دفع می‌کند. و مهاجمان (ایرانی) بدانند که عراق حشره کش مناسب برای دفع آنان را دارد.





جنگ نفتکش‌ها

در سال چهارم جنگ، نیروهای زمینی دو طرف به تعادل رسیده بودند. ولی در خلیج فارس وضع به گونه دیگری بود. در یک مقطع دو ساله، کشورهای کویت، ایالات متحده، اردن و آفریقای جنوبی در یک همکاری تنگاتنگ، نفت خام هدیه شده از سوی کویت را در نفت‌کش‌های با پرچم آمریکا بارگیری کرده و به آفریقای جنوبی منتقل می‌کردند. آفریقای جنوبی در عوض سوخت مورد نیاز عراق را به بندری در اردن تحویل می‌داد. همزمان جزیره خارک به عنوان پایانه اصلی صدور نفت ایران توسط هواپیماهای پیشرفته‌ای که فرانسه به عراق تحویل داده بود، مسدود شد. به این ترتیب ایران وارد جنگ نفت‌کش‌ها شد.

طرف عراقی تنها در طول سال ۱۳۶۳ دست به حمله به ۳۳ نفت‌کش زد. ایران نیز با حمله به ۱۷ نفتکش به این عمل واکنش نشان داد. واکنش هاشمی رفسنجانی به این مسئله این بود که تهدید کرد اگر جلوی صادرات نفت ایران از خلیج فارس گرفته شود، آنگاه هیچ کشوری نخواهد توانست از نفت خلیج فارس استفاده کند. دو هفته بعد، شورای امنیت به این تهدید ایران واکنش نشان داد و با صدور قطعنامه ۵۵۲ طرفین را از حمله به کشتی‌های غیر نظامی بازداشت.
9:44 pm
برنامه‌نویسی

برنامه‌نویسی رایانه در فرهنگ واژه غیر متخصّصین ممکن است به تمام پروژه ساخت نرم‌افزار یا برنامهٔ رایانه‌ای گفته شود. با این همه برنامه‌نویسی تنها بخشی از فرایند توسعهٔ نرم‌افزار یا برنامه رایانه‌ای است. اهمیت، توجه و منابع اختصاص داده شده به برنامه‌نویسی، بسته به ویژگی‌های مشخص شده محصول و خواست افراد درگیر در پروژه و کاربران و در نهایت شیوهٔ انتخاب شده مهندسی نرم‌افزار متغیر است.

برنامه‌نویسی کامپیوتر (که اغلب در انگلیسی programming یا coding گفته می‌شود) فرایند نوشتن، اشکال زدایی(debug) و نگهداری کد منبع (source code) برنامه کامپیوتر می‌باشد. این کد منبع با یک زبان برنامه نویسی نوشته شده است. این کد منبع ممکن است تغییر داده شده یک کد قبلی و یا یک کد کاملاً جدید باشد. هدف برنامه نویسی ساختن یک برنامه می‌باشد که یک رفتار خواسته شده را به نمایش بگذارد.






تاریخچه
موضوع دستگاه‌هایی که به دنباله‌ای از دستورالعمل‌های از قبل تعریف شده عمل می‌کند بر می‌گردد به Greek Mythology.

برنامه نویسی مدرن
اندازه گیری کاربرد زبان

تعیین اینکه محبوب‌ترین زبان برنامه نویسی مدرن کدام است کار بسیار مشکلی است. بعضی از زبان‌ها در کاربردهای خاصی محبوب است و بعضی دیگر مرتباً در نوشتن کاربردهای گوناگون استفاده می‌شود. روش‌های اندازه گیری محبوبیت زبان شامل موارد زیر می‌باشد: شمردن تعداد آگهی‌های اشتغال و توجه به یک زبان، تعداد کتاب‌های آموزشی فروخته شده در مورد یک زبان، تخمین تعداد خطوط کد نوشته شده در یک زبان


پارادایم‌ها
زبان‌های برنامه‌نویسی گوناگون براساس قابلیت‌های درنظر گرفته شده از شیوهٔ خط‌های مختلف استفاده می‌کنند. موارد ریزتری مانند چگونگی برخورد با نیازهای پشت پردهٔ ماشین مانند مدیریت حافظه و مدیریت زباله نیز در زبان‌های مختلف متفاوت است. علاوه بر این‌ها، مفاهیمی متفاوت از (اجرای) یک برنامه تصور شده‌اند که پارادایم یا الگو نام دارند.



برنامه‌نویسی دستوری

برنامه‌نویسی دستوری (به انگلیسی: Imperative programming) در علوم رایانه یکی از شیوه‌های برنامه‌نویسی است که در آن مراحل اجرای یک برنامه کامپیوتری قدم به قدم توسط برنامه نویس بیان می‌شود. این بر خلاف زبانهای اعلانی است که در آنها تنها نتیجه انجام دستورات بیان می‌شود. به بیان دیگر در زبانهای دستوری چگونگی اجرای برنامه بیان می‌شود اما در زبانهای اعلانی چیستی نتیجه بیان می‌شود.

به عنوان مثال اگر قصد باز کردن دری را داشته باشیم و با زبان اعلانی این را بخواهیم بیان کنیم خواهیم گفت در را باز کن اما اگر با زبان دستوری بیان کنیم خواهیم گفت بلند شو، به طرف در نردیک شو، دستگیره را بگیر و در را به طرف بیرون هل بده.





زبان برنامه‌نویسی

زبان‌های برنامه‌نویسی ساختارهای زبانی دستورمداری در رایانه‌ها هستند که به‌وسیلهٔ آنها می‌توان یک الگوریتم را به‌وسیلهٔ ساختارهای دستوری متفاوت برای اجرای رایانه توصیف کرد و با این روش امکان نوشتن برنامه جهت تولید نرم‌افزارهای جدید بوجود می‌آید. معمولاً هر زبان برنامه‌نویسی دارای یک محیط نرم‌افزاری برای وارد کردن متن برنامه، اجرا، همگردانی و رفع اشکال آن هستند. عموماً زبانهای برنامه نویسی را به پنج نسل تقسیم می‌کنند:

نسل اول زبان ماشین - زبان صفرو یک
نسل دوم زبانهایی مانند اسمبلی -قابل فهم تر برای انسان
نسل سوم زبانهایی مانند کوبول و پی ال وان و... -دستورات قابل فهم تر برای انسان و نیاز به کمپایلرها
نسل چهارم مثل زبانهای اوراکل و فاکس پرو و اس کیو الها - نزدیک به محاوره‌های انسانی
نسل پنج زبانهایی مانند prolog , ops5 - تمرکز بر حل مسئله و استفاده از الگوریتمهای نوشته شده توسط

برنامه نویس

یک زبان برنامه نویسی یک زبان مصنوعی است که برای بیان محاسباتی که توسط یک ماشین (مخصوصا رایانه) قابل انجام است، طراحی شده‌است.زبان‌های برنامه نویسی برای ایجاد برنامه‌هایی به کار می‌روند که رفتار یک ماشین را مشخص می‌کنند، الگوریتم دقیق را بیان می‌کنند، و یا روشی برای ارتباط انسانند. بسیاری از زبان‌های برنامه نویسی تعدادی قالب از ویژگی‌های نوشته شده دستوری(syntax) و معناشناسی (semantics) دارند، چرا که رایانه‌ها دستورات دقیقاً مشخص نیاز دارند. برخی توسط سند خصوصیات (specification document) تعیین شده‌اند. (برای مثال یک استاندارد ISO)، در حالی که برخی دیگر دارای پیاده سازی غالبی می‌باشند.(مانند Perl) اولین زبان برنامه نویسی به قبل از اختراع رایانه باز می‌گردد، و برای هدایت رفتار ماشین‌هایی مانند دستگاه‌های نساجی اتوماتیک و نوازنده‌های پیانو به کار می‌رفت. هزاران زبان برنامه نویسی خلق شده‌اند، بیشتر در زمینهٔ رایانه، زمینه‌ای که هر ساله بسیاری دیگر ایجاد می‌شوند.


تقسیم‌بندی
زبان‌های برنامه نویسی را می‌توان از چهار دیدگاه متفاوت مورد بررسی قرار داده و تقسیم بندی کرد: الف)روش‌های برنامه نویسی ۱-زیر روالی ۲-ساخت یافته ۳-مدولار ۴-شئ گرا ب)نزدیکی به زبان ماشین ۱-سطح پایین ۲-سطح میانی ۳-سطح بالا ج)نوع ترجمه ۱-مفسری ۲-کامپایلری د)رابط برنامه نویسی ۱-مبتنی بر متن ۲-مبتنی بر گرافیک (ویژوال)



تعاریف

ویژگی‌هایی که غالباً برای تشکیل یک زبان برنامه نویسی مهم شمرده می‌شوند:

تابع :یک زبان برنامه نویسی، زبانی است که برای نوشتن برنامه‌های رایانه‌ای به کار می‌رود که رایانه‌ای را برای انجام محاسبات یا اجرای الگوریتم و یا احتمالاً کنترل دستگاه‌های خارجی مثل چاپگر، ربات و... درگیر می‌کنند.





هدف: زبان‌های برنامه نویسی با زبان‌های طبیعی تفاوت دارند و آن اینکه زبان‌های طبیعی فقط برای فعل و انفعالات بین مردم به کار می‌روند، در حالیکه زبان‌های برنامه نویسی همچنین به انسانها اجازه می‌دهد که از طریق دستورات با ماشین‌ها ارتباط برقرار کنند. برخی زبان‌های برنامه نویسی بوسیله یک دستگاه استفاده می‌شوند تا دستگاه دیگری را کنترل کند. برای مثال برنامه‌های پست اسکریپت(post script) غالباً توسط برنامه دیگری برای کنترل یک چاپگر و یا نمایشگر ایجاد می‌شوند.
ساختارها: زبان‌های برنامه نویسی ممکن است ساختارهایی برای تعریف و تغییر داده ساختارها یا کنترل جریان اجرا داشته باشند.
توان بیانگر: نظریه محاسبات، زبان‌ها را بوسیله محاسباتی که توان بیان آنها را دارند طبقه بندی می‌کند. تمام زبان‌های "کامل تورینگ" می‌توانند مجموعه یکسانی از الگوریتم‌ها را پیاده سازی کنند.ANSI/ISO SQL و Charity مثال‌هایی هستند از زبان‌هایی که کامل تورینگ نیستند، ولی غالباً زبان برنامه نویسی نامیده می‌شوند.

برخی مولفین اصطلاح" زبان برنامه نویسی" را محدود به آنهایی می‌کنند که می‌توانند تمام الگوریتم‌های ممکن را پیاده سازی کنند، گاهی اوقات اصطلاح" زبان رایانه" برای زبان‌های برنامه نویسی محدودتر به کار می‌رود. زبان‌های غیر محاسباتی، مانند زبان‌های مارک آپ(markup) HTML یا گرامرهای قراردادی مثل BNF، معمولاً زبان برنامه نویسی محسوب نمی‌شوند. یک زبان برنامه نویسی(که می‌تواند کامل تورینگ نباشد) ممکن است در این زبان‌های غیر محاسباتی (میزبان) تعبیه شوند.


کاربرد

زبان برنامه نویسی یک مکانیزم ساخت یافته برای تعریف داده‌ها، و عملیات یا تبدیل‌هایی که ممکن است بطور اتوماتیک روی آن داده انجام شوند، فراهم می‌کند. یک برنامه نویس از انتزاعات آماده در زبان استفاده می‌کند تا مفاهیم به کار رفته در محاسبات را بیان کند. این مفاهیم به عنوان یک مجموعه از ساده‌ترین عناصر موجود بیان می‌شوند(مفاهیم ابتدایی نامیده می‌شوند). زبان‌های برنامه نویسی با غالب زبان‌های انسانی تفاوتی دارد و آن این است که نیاز به بیان دقیق تر و کامل تری دارد. هنگام استفاده از زبان‌های طبیعی برای ارتباط با دیگر انسان‌ها، نویسندگان و گویندگان می‌توانند مبهم باشند و اشتباهات کوچک داشته باشند، و همچنان انتظار داشته باشند که مخاطب آنها متوجه شده باشد. اگرچه، مجازا، رایانه‌ها "دقیقاً آنچه که به آنها گفته شده را انجام می‌دهند." و نمی‌توانند "بفهمند" که نویسنده دقیقاً چه کدی مد نظر نویسنده بوده‌است] البته امروزه برنامه‌هایی برای انجام این کار تولید شده‌اند و تلاش‌های بسیاری در این زمینه انجام شده ولی هنوز به نتیجهٔ رضایت بخشی نرسیده است[. ترکیب تعریف زبان، یک برنامه، و ورودی برنامه بطور کامل رفتار خروجی را به هنگام اجرای برنامه (در محدوده کنترل آن برنامه) مشخص می‌کند. برنامه‌های یک رایانه ممکن است در یک فرایند ناپیوسته بدون دخالت انسان اجرا شوند، یا یک کاربر ممکن است دستورات را در یک مرحله فعل و انفعال مفسر تایپ کند.در این حالت "دستور"ها همان برنامه‌ها هستند، که اجرای آنها زنجیروار به هم مرتبطند.به زبانی که برای دستور دادن به برنامه‌ای استفاده می‌شود، زبان اسکریپت می‌گویند. بسیاری از زبان‌ها کنار گذاشته شده‌اند، برای رفع نیازهای جدید جایگزین شده‌اند، با برنامه‌های دیگر ترکیب شده‌اند و در نهایت استعمال آنها متوقف شده‌است. با وجود اینکه تلاش‌هایی برای طراحی یک زبان رایانه" کامل" شده‌است که تمام اهداف را تحت پوشش قرار دهد، هیچ یک نتوانستند بطور کلی این جایگاه را پر کنند. نیاز به زبان‌های رایانه‌ای گسترده از گستردگی زمینه‌هایی که زبان‌ها استفاده می‌شوند، ناشی می‌شود:

محدوده برنامه‌ها از متون بسیار کوچک نوشته شده توسط افراد عادی تا سیستم‌های بسیار بزرگ نوشته شده توسط صدها برنامه نویس است
توانایی برنامه نویس‌ها: از تازه کارهایی که بیش از هر چیز به سادگی نیاز دارند تا حرفه‌ای‌هایی که با پیچیدگی قابل توجهی کنار می‌آیند.
برنامه‌ها باید سرعت، اندازه و سادگی را بسته به سیستم‌ها از ریزپردازندها تا ابر رایانه‌ها متناسب نگه دارند.
برنامه‌ها ممکن است یک بار نوشته شوند و تا نسل‌ها تغییر نکنند، و یا ممکن است پیوسته اصلاح شوند.
در نهایت، برنامه نویس‌ها ممکن است در علایق متفاوت باشند: آنها ممکن است به بیان مسائل با زبانی خاص خو گرفته باشند.

یک سیر رایج در گسترش زبان‌های برنامه نویسی این است که قابلیت حل مسائلی با درجات انتزاعی بالاتری را اضافه کنند. زبان‌های برنامه نویسی اولیه به سخت‌افزار رایانه گره خورده بودند. همانطور که زبان‌های برنامه نویسی جدید گسترش پیدا کرده‌اند، ویژگی‌هایی به برنامه‌ها افزوده شده که به برنامه نویس اجازه دهد که ایده‌هایی که از ترجمه ساده به دستورات سخت‌افزار دورتر هستند نیز استفاده کند. چون برنامه نویس‌ها کمتر به پیچیدگی رایانه محدود شده‌اند، برنامه‌های آنها می‌تواند محاسبات بیشتری با تلاش کمتر از سوی برنامه نویس انجام دهند. این به آنها این امکان را می‌دهد که کارایی بیشتردر واحد زمان داشته باشند. "پردازنده‌های زبان طبیعی" به عنوان راهی برای ازبین بردن نیاز به زبان‌های اختصاصی برنامه نویسی پیشنهاد شده‌اند. هرچند، این هدف دور است و فواید آن قابل بحث است. "ادسگر دیجسترا" موافق بود که استفاده از یک زبان رسمی برای جلوگیری از مقدمه سازی ساختارهای بی معنی واجب است، و زبان برنامه نویسی طبیعی را با عنوان "احمقانه" رد کرد، "آلن پرلیس" نیز مشابها این ایده را رد کرد. مطابق با متدولوژی نامتجانس استفاده شده توسط langpop.com در سال ۲۰۰۸، ۱۲ زبان پرکاربرد عبارتند از: C, C++, C#, Java, JavaScript, Perl, PHP, Python, Ruby, Shell, SQL, and Visual Basic.




معناشناسی ایستا
معناشناسی ایستا محدودیت‌هایی بر روی ساختار مجاز متن‌ها تعیین می‌کند که بیان آنها در فرمول دستوری استاندارد مشکل و یا غیر ممکن است. مهمترین این محدودیت‌ها به وسیله سیستم نوع گذاری انجام می‌شود.


سیستم نوع گذاری
یک سیستم نوع گذاری مشخص می‌کند که یک زبان برنامه نویسی چگونه مقادیر و عبارات را در نوع(type) دسته بندی می‌کند، چگونه می‌تواند آن نوع‌ها را تغییر دهد و رفتار متقابل آن‌ها چگونه‌است. این کارعموما توضیح داده ساختارهایی که می‌توانند در آن زبان ایجاد شوند را شامل می‌شود. طراحی و مطالعه سیستم‌های نوع گذاری بوسیله ریاضیات قراردادی را تئوری نوع گذاری گویند.
زبان‌های نوع گذاری شده و بدون نوع گذاری

یک زبان نوع گذاری شده‌است اگر مشخصات هر عملیات، نوع داده‌های قابل اجرا توسط آن را با نشان دادن نوع‌هایی که برای آنها قابل اجرا نیست، تعیین کند. برای مثال، "این متن درون گیومه قرار دارد" یک رشته‌است. در غالب زبان‌های برنامه نویسی، تقسیم یک رشته با یک عدد معنایی ندارد. در نتیجه غالب زبان‌های برنامه نویسی مدرن ممکن است اجرای این عملیات را توسط برنامه‌ها رد کنند. در برخی زبان‌ها، عبارات بی معنی ممکن است هنگام ترجمه(compile) پیدا شود(چک کننده نوع ایستا)، و توسط کامپایلر رد شود، در حالی که در سایر برنامه‌ها، هنگام اجرا پیدا شود.(چک کننده نوع دینامیک) که به استثنای در حال اجرا منتج شود(runtime exception). حالت خاص زبان‌های نوع دار زبان‌های تک نوعند. این زبان‌ها غالباً اسکریپتی و یا مارک آپ هستند، مانند rexx وSGML و فقط یک داده گونه دارند—غالباً رشته‌های کاراکتری که هم برای داده‌های عددی و هم برای داده‌های سمبلی کاربرد دارند. در مقابل، یک زبان بدون نوع گذاری، مثل اکثر زبان‌های اسمبلی، این امکان را می‌دهد که هر عملیاتی روی هر داده‌ای انجام شود، که معمولاً دنباله‌ای از بیت‌ها با طول‌های متفاوت در نظر گرفته می‌شوند. زبان‌های سطح بالا که بی نوع هستند شامل زبان‌های ساده رایانه‌ای و برخی از انواع زبان‌های نسل چهارم.

در عمل، در حالیکه تعداد بسیار کمی از دیدگاه نظریه نوع، نوع گذاری شده تلقی می‌شوند(چک کردن یا رد کردن تمام عملیات‌ها)، غالب زبان‌های امروزی درجه‌ای از نوع گذاری را فراهم می‌کنند. بسیاری از زبان‌های تولیدکننده راهی را برای گذشتن یا موقوف کردن سیستم نوع فراهم می‌کنند.



نوع گذاری قوی و ضعیف

نوع گذاری ضعیف این امکان را ایجاد می‌کند که با متغیری به جای متغیری دیگر برخورد شود، برای مثال رفتار با یک رشته به عنوان یک عدد. این ویژگی بعضی اوقات ممکن است مفید باشد، اما ممکن است باعث ایجاد برخی مشکلات برنامه شود که موقع کامپایل و حتی اجرا پنهان بمانند.

نوع گذاری قوی مانع رخ دادن مشکل فوق می‌شود. تلاش برای انجام عملیات روی نوع نادرست متغیر منجر به رخ دادن خطا می‌شود. زبان‌هایی که نوع گذاری قوی دارند غالباً با نام "نوع-امن" و یا امن شناخته می‌شوند. تمام تعاریف جایگزین برای "ضعیف نوع گذاری شده" به زبان‌ها اشاره می‌کند، مثل perl, JavaScript, C++، که اجازه تعداد زیادی تبدیل نوع داخلی را می‌دهند. در جاوااسکریپت، برای مثال، عبارت ۲*x به صورت ضمنی x را به عدد تبدیل می‌کند، و این تبدیل موفقیت آمیز خواهد بود حتی اگر x خالی، تعریف نشده، یک آرایه، و یا رشته‌ای از حروف باشد. چنین تبدیلات ضمنی غالباً مفیدند، اما خطاهای برنامه نویسی را پنهان می‌کنند.

قوی و ایستا در حال حاضر عموماً دو مفهوم متعامد فرض می‌شوند، اما استفاده در ادبیات تفاوت دارد، برخی عبارت "قوی نوع گذاری شده" را به کار می‌برند و منظورشان قوی، ایستایی نوع گذاری شده‌است، و یا، حتی گیچ کننده تر، منظورشان همان ایستایی نوع گذاری شده‌است. بنابراین C هم قوی نوع گذاری شده و هم ضعیف و ایستایی نوع گذاری شده نامیده می‌شود.



معناشناسی اجرا

وقتی که داده مشخص شد، ماشین باید هدایت شود تا عملیات‌ها را روی داده انجام دهد. معناشناسی اجرا ی یک زبان تعیین می‌کند که چگونه و چه زمانی ساختارهای گوناگون یک زبان باید رفتار برنامه را ایجاد کنند.

برای مثال، معناشناسی ممکن است استراتژی را که بویسله آن عبارات ارزیابی می‌شوند را تعریف کند و یا حالتی را که ساختارهای کنترلی تحت شرایطی دستورها را اجرا می‌کنند.


کتابخانه هسته
اغلب زبان‌های برنامه نویسی یک کتابخانه هسته مرتبط دارند(گاهی اوقات "کتابخانه استاندارد" نامیده می‌شوند، مخصوصا وقتی که به عنوان قسمتی از یک زبان استاندارد ارائه شده باشد)، که به طور قراردادی توسط تمام پیاده سازی‌های زبان در دسترس قرار گرفته باشند. کتابخانه هسته معمولاً تعریف الگوریتم‌ها، داده ساختارها و مکانیزم‌های ورودی و خروجی پرکاربرد را در خود دارد. کاربران یک زبان، غالباً با کتابخانه هسته به عنوان قسمتی از آن رفتار می‌کنند، اگرچه طراحان ممکن است با آن به صورت یک مفهوم مجزا رفتار کرده باشند. بسیاری از خصوصیات زبان هسته‌ای را مشخص می‌کنند که باید در تمام پیاده سازی‌ها موجود باشند، و در زبان‌های استاندارد شده این کتابخانه هسته ممکن است نیاز باشد. بنابراین خط بین زبان و کتابخانه هسته آن از زبانی به زبان دیگر متفاوت است. درواقع، برخی زبان‌ها به گونه‌ای تعریف شده‌اند که برخی از ساختارهای دستوری بدون اشاره به کتابخانه هسته قابل استفاده نیستند. برای مثالف در جاوا، یک رشته به عنوان نمونه‌ای از کلاس “java.lang.String” تعریف شده است؛ مشابها، در سمال تاک(smalltalk) یک تابع بی نام(یک "بلاک") نمونه‌ای از کلاس BlockContext کتابخانه می‌سازد. بطور معکوس، Scheme دارای چندین زیرمجموعه مرتبط برای ایجاد سایر ماکروهای زبان می‌باشد، و در نتیجه طراحان زبان حتی این زحمت را نیز تحمل نمی‌کنند که بگویند کدام قسمت زبان به عنوان ساختارهای زبان باید پیاده سازی شوند، و کدام یک به عنوان بخشی ازکتابخانه.


عمل
طراحان زبان و کاربران باید مصنوعاتی ایجاد کنند تا برنامه نویسی را در عمل ممکن سازند و کنترل کنند. مهمترین این مصنوعات خصوصیات و پیاده سازی‌های زبان هستند.



خصوصیات

یک زبان برنامه نویسی باید تعریفی فراهم کند که کاربران و پیاده کننده‌های زبان می‌توانند از آن استفاده کنند تا مشخص کنند که رفتار یک برنامه درست است. با داشتن کد منبع: خصوصیات یک زبان برنامه نویسی چندین قالب می‌تواند بگیرد، مانند مثال‌های زیر:

تعریف صریح دستور، معناشناسی ایستا، ومعناشناسی اجرای زبان. درحالیکه دستور معمولاً با یک معناشناسی قراردادی مشخص می‌شود، تعاریف معناشناسی ممکن است در زبان طبیعی نوشته شده باشند (مثل زبان C)، یا معناشناسی قراردادی(مثل StandardML ,Scheme)
توضیح رفتار یک مترجم برای زبان(مثل C,fortran). دستور و معناشناسی یک زبان باید از این توضیح استنتاج شوند، که ممکن است به زبان طبیعی یا قراردادی نوشته شود.
پیاده سازی منبع یا مدل. گاهی اوقات در زبان‌های مشخص شده(مثل: prolog,ANSI REXX).دستور و معناشناسی صریحاً در رفتار پیاده سازی مدل موجودند.


پیاده سازی

پیاده سازی یک زبان برنامه نویسی امکان اجرای آن برنامه را روی پیکربندی مشخصی از سخت‌افزار و نرم‌افزار را فراهم می‌کند. بطور وسیع، دو راه رسیدن به پیاده سازی زبان برنامه نویسی وجود دارد. کامپایل کردن و تفسیر کردن. بطور کلی با هر بک از ابن دو روش می‌توان یک زبان را پیاده سازی کرد.

خروجی یک کامپایلر ممکن است با سخت‌افزار و یا برنامه‌ای به نام مفسر اجرا شود. در برخی پیاده سازی‌ها که از مفسر استفاده می‌شود، مرز مشخصی بین کامپایل و تفسیر وجود ندارد. برای مثال، برخی پیاده سازی‌های زبان برنامه نویسی بیسیک کامپایل می‌کنند و سپس کد را خط به خط اجرا می‌کنند.

برنامه‌هایی که مستقیماً روی سخت‌افزار اجرا می‌شوند چندین برابر سریعتر از برنامه‌هایی که با کمک نرم‌افزار اجرا می‌شوند، انجام می‌شوند.

یک تکنیک برای بهبود عملکرد برنامه‌های تفسیر شده کامپایل در لحظه آن است. در این روش ماشین مجازی، دقیقاً قبل از اجرا، بلوک‌های کدهای بایتی که قرار است استفاده شوند را برای اجرای مستقیم روی سخت‌افزار ترجمه می‌کند.



تاریخچه
پیشرفت‌های اولیه

اولین زبان برنامه نویسی به قبل از رایانه‌های مدرن باز می‌گردد. قرن ۱۹ دستگاه‌های نساجی و متون نوازنده پیانو قابل برنامه نویسی داشت که امروزه به عنوان مثال‌هایی از زبان‌های برنامه نویسی با حوزه مشخص شناخته می‌شوند. با شروع قرن بیستم، پانچ کارت‌ها داده را کد گذاری کردند و پردازش مکانیکی را هدایت کردند. در دهه ۱۹۳۰ و ۱۹۴۰، صورت گرایی حساب لاندای آلونزو چرچ و ماشین تورینگ آلن تورینگ مفاهیم ریاضی بیان الگوریتم‌ها را فراهم کردند؛ حساب لاندا همچنان در طراحی زبان موثر است.

در دهه ۴۰، اولین رایانه‌های دیجیتال که توسط برق تغذیه می‌شدند ایجاد شدند. اولین زبان برنامه نویسی سطح بالا طراحی شده برای کامپیوتر پلانکالکول بود، که بین سال‌های ۱۹۴۵ و ۱۹۴۳ توسط کنراد زوس برای ز۳ آلمان طراحی شد.

کامپیوترهای اوایل ۱۹۵۰، بطور خاص ÜNIVAC ۱ و IBM ۷۰۱ از برنامه‌های زبان ماشین استفاده می‌کردند. برنامه نویسی زبان ماشین نسل اول توسط نسل دومی که زبان اسمبلی نامیده می‌شوند جایگزین شد. در سال‌های بعد دهه ۵۰، زبان برنامه نویسی اسمبلی، که برای استفاده از دستورات ماکرو تکامل یافته بود، توسط سه زبان برنامه نویسی سطح بالا دیگر: FORTRAN,LISP , COBOL مورد استفاده قرار گرفت. نسخه‌های به روز شده این برنامه‌ها همچنان مورد استفاده قرار می‌گیرند، و هر کدام قویا توسعه زبان‌های بعد را تحت تاثیر قرار دادند. در پایان دهه ۵۰ زبان algol ۶۰ معرفی شد، و بسیاری از زبان‌های برنامه نویسی بعد، با ملاحظه بسیار، از نسل algol هستند. قالب و استفاده از زبان‌های برنامه نویسی به شدت متاثر از محدودیت‌های رابط بودند.



پالایش

دوره دهه ۶۰ تا اواخر دهه ۷۰ گسترش مثال‌های عمده زبان پرکاربرد امروز را به همراه داشت. با این حال بسیاری از جنبه‌های آن بهینه سازی ایده‌های اولیه نسل سوم زبان برنامه نویسی بود:

APL برنامه نویسی آرایه‌ای را معرفی کرد و برنامه نویسی کاربردی را تحت تاثیر قرار داد.
PL/i(NPL) دراوایل دهه ۶۰ طراحی شده بود تا ایده‌های خوب فورترن و کوبول را بهم پیوند دهد.
در دهه ۶۰، Simula اولین زبانی بود که برنامه نویسی شئ گرا را پشتیبانی می‌کرد، در اواسط دهه۷۰. Smalltalk به دنبال آن به

عنوان اولین زبان کاملاً شئ گرا معرفی شد.

C بین سال‌های ۱۹۶۹ تا ۱۹۷۳ به عنوان زبان برنامه نویسی سیستمی طراحی شد و همچنان محبوب است.
Prolog، طراحی شده در ۱۹۷۲، اولین زبان برنامه نویسی منطقی بود.
در ۱۹۷۸ ML سیستم نوع چند ریخت روی لیسپ ایجاد کرد، و در زبان‌های برنامه نویسی کاربردی ایستا نوع گذاری شده پیشگام شد.

هر یک از این زبان‌ها یک خانواده بزرگ از وارثین از خود به جای گذاشت، و مدرنترین زبان‌ها از تبار حداقل یکی از زبان‌های فوق به شمار می‌آیند.

دهه‌های ۶۰ و ۷۰ مناقشات بسیاری روی برنامه نویسی ساخت یافته به خود دیدند، و اینکه آیا زبان‌های برنامه نویسی باید طوری طراحی شوند که آنها را پشتیبانی کنند.

"ادسگر دیکسترا" در نامه‌ای معروف در ۱۹۶۸ که در ارتباطات ACM منتشر شد، استدلال کرد که دستورgoto باید از تمام زبان‌های سطح بالا حذف شود.

در دهه‌های ۶۰ و ۷۰ توسعهٔ تکنیک‌هایی صورت گرفت که اثر یک برنامه را کاهش می‌داد و در عین حال بهره وری برنامه نویس و کاربر را بهبود بخشید. دسته کارت برای ۴GL اولیه بسیار کوچکتر از برنامهٔ هم سطح بود که با ۳GL deck نوشته شده بود.




یکپارچگی و رشد

دهه ۸۰ سال‌های یکپارچگی نسبی بود. C++ برنامه نویسی شئ گرا و برنامه نویسی سیستمی را ترکیب کرده بود. ایالات متحده ایدا(زبان برنامه نویسی سیستمی که بیشتر برای استفاده توسط پیمان کاران دفاعی بود) را استاندارد سازی کرد. در ژاپن و جاهای دیگر، هزینه‌های گزافی صرف تحقیق در مورد زبان نسل پنجم می‌شد که دارای ساختارهای برنامه نویسی منطقی بود. انجمن زبان کاربردی به سمت استانداردسازی ML و Lisp حرکت کرد. به جای ایجاد مثال‌های جدید، تمام این تلاش‌ها ایده‌هایی که در دهه‌های قبل حلق شده بودند را بهتر کرد.

یک گرایش مهم در طراحی زبان در دهه ۸۰ تمرکز بیشتر روی برنامه نویسی برای سیستم‌های بزرگ از طریق مدول‌ها، و یا واحدهای کدهای سازمانی بزرگ مقیاس بود. مدول-۲، ایدا. و ML همگی سیستم‌های مدولی برجسته‌ای را در دهه ۸۰ توسعه دادند. با وجود اینکه زبان‌های دیگر، مثل PL/i، پشتیبانی بسیار خوبی برای برنامه نویسی مدولی داشتند. سیستم‌های مدولی غالباً با ساختارهای برنامه نویسی عام همراه شده‌اند.

رشد سریع اینترنت در میانه دهه ۹۰ فرصت‌های ایجاد زبان‌های جدید را فراهم کرد. Perl، در اصل یک ابزار نوشتن یونیکس بود که اولین بار در سال ۱۹۸۷ منتشر شد، در وب‌گاه‌های دینامیک متداول شد. جاوا برای برنامه نویسی جنب سروری مورد استفاده قرار گرفت. این توسعه‌ها اساساً نو نبودند، بلکه بیشتر بهینه سازی شده زبان و مثال‌های موجود بودند، و بیشتر بر اساس خانواده زبان برنامه نویسی C بودند. پیشرفت زبان برنامه نویسی همچنان ادامه پیدا می‌کند، هم در تحقیقات و هم در صنعت. جهت‌های فعلی شامل امنیت و وارسی قابلیت اعتماد است، گونه‌های جدید مدولی(mixin، نماینده‌ها، جنبه‌ها) و تجمع پایگاه داده.

۴GLها نمونه‌ای از زبان‌هایی هستند که محدوده استفاده آنها مشخص است، مثل SQL. که به جای اینکه داده‌های اسکالر را برگردانند، مجموعه‌هایی را تغییر داده و بر می‌گردانند که برای اکثر زبان‌ها متعارفند. Perl برای مثال، با "مدرک اینجا" خود می‌تواند چندین برنامه ۴GL را نگه دارد، مانند چند برنامه جاوا سکریبت، در قسمتی از کد پرل خود و برای پشتیبانی از چندین زبان برنامه نویسی با تناسب متغیر در "مدرک اینجا" استفاده کند.
ساعت : 9:44 pm | نویسنده : admin | کاکاپو | مطلب قبلی
کاکاپو | next page | next page