جان بکوس
| جان وارنر بکوس | |
|---|---|
| متولد | ۳ دسامبر، ۱۹۲۴ فیلادلفیا, پنسیلوانیا |
| مرگ | ۱۷ مارس ۲۰۰۷ (۸۲ سال) آشلند, اورگون |
| ملیت | |
| رشته فعالیت | زمینهٔ علم رایانه,ریاضیات |
| محل کار | آیبیام مادر آلما دانشگاه کلمبیا |
| دلیل شهرت | فورترن , برنامهنویسی تابعی فرم بکوس-نائور , سرعت کدگذاری زبان الگول 60 |
| جوایز | جایزه تورینگ (۱۹۷۷) جایزه دراپر (۱۹۹۳) دریافت نشان ملی علوم (۱۹۷۵) جایزه مکداول والاس (۱۹۶۷) |
جان وارنر بَکوس (به انگلیسی: John Warner Backus) (زاده ۳ دسامبر، ۱۹۲۴ (میلادی) - درگذشته ۱۷ مارس، ۲۰۰۷ (میلادی)) دانشمند آمریکایی در زمینهٔ علم رایانه بود. او رهبری گروهی را به عهده داشت که اولین زبان برنامهنویسی سطح بالا (فرترن) را اختراع نمودند. او همچنین مخترع فرم بکوس-نائور (یا به اختصار BNF) نیز بود که تقریباً پراستفادهترین نمادگری برای تعریف نحو (Syntax) زبانهای صوری است.
او در سال ۱۹۷۷ (میلادی) برای «مشارکتهای ژرف، تأثیرگذار، و ماندگارش برای طراحی سامانههای برنامهنویسی کاربردی سطح بالا، و خصوصاً بخاطر کار بر روی فرترن» و انتشار اولین مقالات در مورد شیوههای صوری برای توصیف زبانهای برنامهنویسی، جایزه تورینگ را دریافت کرد.
محتویات |
زندگینامه[ویرایش]
جان بَکوس در سال ۱۹۲۴ در فیلادلفیا متولد شد. دوران تحصیلات ابتدائی و متوسطه را در پنسیلوانیا گذراند. او شاگرد تنبلی بود و از خواندن کتابهای درسی نفرت داشت. بالاخره با زحمت زیاد در سال ۱۹۴۲ مدرسه را تمام کرد و وارد دانشگاه ویرجینیا شد. پدرش میخواست که او شیمیدان شود. او دروس نظری را دوست داشت ولی از آزمایشگاه بدش میآمد. او تنبلیهای قبلی را در دانشگاه ادامه داد. بعد از دو ترم او تنها یک واحد را گذرانده و آنهم واحد موسیقی بود! سرانجام مسوولان دانشکده عذرش را خواستند و او در سال ۱۹۴۳ به ارتش پیوست.
در آنجا در یک آزمون استعدادسنجی شرکت کرد و نتیجه این آزمون، جانش را نجات داد؛ دوستانش به جبهههای جنگ فرستاده شدند و او به کالج هاورفورد برای آموزش پزشکی. اما درآنجا نیز 9 ماه بیشتر دوام نیاورد. او می گوید:
«من از پزشکی بیزار بودم. در دانشکده پزشکی دوست ندارند فکر کنی. فقط می خواهند مطالب زیادی را حفظ کنی و این تمام چیزی است که از آدم می خواهند. در دانشکدهٔ پزشکی نباید فکر کرد!»
پس از خروج از دانشکده پزشکی، آپارتمان کوچکی در نیویورک به قیمت ماهانه ۱۸ دلار اجاره کرد. او درباره آن روزها میگوید:
«واقعاً نمیدانستم از زندگی چه میخواهم. تصمیم گرفتم یک دستگاه صوتی خوب خریداری کنم زیرا خیلی به موسیقی علاقه داشتم. در آن روزها دستگاه خوب وجود نداشت بنابراین به یک مدرسه فنی رفتم تا درست کردن دستگاههای صوتی را یاد بگیرم. در آنجا معلم بسیار خوبی داشتم نخستین معلم خوبی بود که دیده بودم . او از من خواست که با او همکاری کنم و مشخصات بعضی از مدارها را محاسبه کنم. به یاد دارم که محاسبات ساده ولی بسیار وقتگیر و خستهکنندهای بود ولی مرا به ریاضیات علاقهمند ساخت. کاربردی بودن آن برایم خیلی جالب بود.»
کار در شرکت آیبیام[ویرایش]
بکوس در دانشکده علوم دانشگاه کلمبیا ثبت نام کرد تا با درسهای ریاضی بیشتر آشنا شود. او علاقهای به ریاضیات نداشت ولی از جبر بدش نمیآمد. در بهار سال ۱۹۴۹، بکوس ۲۵ ساله که تنها چند ماه تا اخذ لیسانس ریاضی فاصله داشت، هنوز برنامه خاصی برای زندگی آیندهاش نداشت. در آن روزها یکبار بازدیدی از مرکز رایانه شرکت آیبیام داشت و از نزدیک با ماشین حساب الکترونیکی SSEC که یکی از نخستین ماشینهای الکترونیکی آیبیام(با لامپ خلاء) بود آشنا شد. این ماشین اطلاق بزرگی را اشغال کرده بود و انباشته از سیمها و لامپهای خلاء بود. ناگهان فکری به سرش زد و به راهنمای تور گفت که به دنبال کار میگردد. او به بکوس گفت که باید با مدیر قسمت صحبت کند.
او ابتدا امتناع کرد زیرا سر و وضع مناسبی نداشت ولی با اصرار راهنمای تور به دیدار مدیر مربوط رفت و سپس در آزمونی شرکت کرد. نتیجه آزمون رضایتبخش بود و او به استخدام آیبیام در آمد تا بر روی SSEC کار کند. SSEC یک رایانه به مفهوم امروزی نبود. حافظهای برای ذخیره نرمافزار نداشت و برنامهها را باید از طریق نوار منگنه کاغذی به آن میخوراندند. همچنین به دلیل به کار رفتن هزاران مولفه الکترومکانیکی، این ماشین قابلیت اطمینان پائینی داشت.
«کار کرد با SSEC جالب بود. همه چیز در اختیار خود آدم بود. باید بالاسر آن حاضر میبودیم زیرا هر دو سه دقیقه یکبار از کار میافتاد و باید میدانستیم که چگونه آن را دوباره به راه اندازیم.»
او ۳ سال با SSEC کار میکرد و در خلال این مدت چیزهای زیادی آموخت. برنامهسازی هنوز در مراحل اولیهاش قرار داشت و بکوس نیز نخستین تجربیاتش را در زمینه محاسبات علمی کسب کرد.
سرپرستی طراحی زبان فورترن[ویرایش]
بَکوس در آیبیام با همکاری هارلن هریک (به انگلیسی: Harlan Herrick) برنامه ای به نام SpeedCoding برای انجام محاسبات با ممیّز شناور تولید کرد. اعداد با ممیّز شناور ضریب مقیاس گذاری را با خود حمل می کردند و برنامه ساز را از کار پر زحمت تخصیص ضرایب رهایی می بخشیدند. تجربیان بَکوس از SpeedCoding چالش های ذهنی دیگری را در او به وجود آورد.
«برنامه سازی بسیار پر هزینه بود. ملیون ها دلار صرف اجاره رایانه ها می شد و هزینهٔ برنامه سازی نیز اگر از آن بیشتر نبود کمتر هم نبود. باید تعداد زیادی برنامه ساز استخدام می شدند تا برنامه هایی به زبان اسمبلی که تنها یک قدم از صفر و یکها فاصله داشت بنویسند. برنامه سازی به زبان اسمبلی بسیار وقتگیر و پر خطا بود و اشکالزدایی برنامه ها در اکثر اوقات باعث میشد که هدف نهایی برنامه گم شود.»
در دسامبر ۱۹۵۳، بَکوس یادداشتی برای رئیسش در آیبیام، گوتبرت هرد (به انگلیسی: Guthbert Hurd)، نوشت و پیشنهاد کرد که یک زبان برنامه نویسی برای ماشین آیبیام ۷۰۴ طراحی شود. این پروژه، به نام Formula Translation یا به اختصار فورترن (به انگلیسی: Fortan) معروف شد. هدف آن خیلی روشن بود. بَکوس میگوید:
«منظور من فقط به دست آوردن ابزاری بود که برنامه سازی با آن بسیار سریع تر انجام گیرد. اصلا در فکر این نبودم که این ابزار ممکن است در ماشین های دیگر هم مورد استفاده قرار بگیرد. البته ماشین های دیگر هم در آن زمان به ندرت یافت می شدند.»
در ابتدا اظهار نظرهای منفی فن نویمان جلوی پروژه را گرفت. او در آن زمان مشاور آیبیام بود. بَکوس می گوید:
«او برنامه سازی را مسائله مهمی نمی دانست.فکر می کنم یکی از دلایل عمدهٔ مخالفت او این بود که از دقت محاسبات با ممیّز شناور اطمینان نداشت. در مورد محاسبات با ممیز ثابت، اگر اشکالی وجود میداشت حداقل میشد به راحتی محل آن را یافت. دیگر اینکه وی هیچ گونه حساسیتی نسبت به موضوع هزینهٔ برنامه سازی نداشت. او واقعا احساس میکرد فرتن یک تلاش بیهوده است.»
سر انجام هرد پروژه را تصویب کرد و فن نویمان هم دست از مخالفت برداشت. بَکوس تعدادی برنامه ساز با تجربه و چند ریاضیدان جوانِ تازه فارغالتحصیل شده استخدام کرد. در پاییز ۱۹۵۴ تیم برنامهسازی و تحقیقاتی او هدف روشنی پیش رو داشت: تولید زبانی که برنامه سازی را برای ماشین آیبیام ۷۰۴ ساده تر کند. آنها به زودی دریافتند که طراحی زبان، بخش ساده ی کار است و چالش اصلی، ترجمهٔ آن به زبان قابل درک برای ماشین است. یعنی برنامهای که امروز، مترجم (کامپایلر) خوانده میشود. بَکوس و تیم او الگوریتمهایی را که این روزها هر دانشجوی دورهٔ کارشناسی میتواند به کمک آنها در طول یک ترم به طراحی و پیاده سازی یک کامپایلر جدید برپردازد در دست نداشتند. مخصوصا روش خوبی برای طراحی قلب کامپایلر که تجزیه گر خوانده میشود به نظرشان نمیرسید. پس از مدتی اولین نرم افزار کاربری که به زبان فرتن نوشته شد با موفقیت اجرا گردید ولی دانشمندان وستینگهاوس بزودی تعداد زیادی خطا در کامپایلر فرتن پیدا کردند. تیم بکوس ضرف مدت ۶ ماه خطاهای گزارش شده را تصحیح کردند.
قالب زبان های نابسته به متن[ویرایش]
بَکوس در اواخر دههٔ ۱۹۵۰ کار بر روی زبان فرتن را متوقف کرد. هرچند که کار اصلی او در زمینه ی زبان های برنامه سازی تازه آغاز شده بود. در ماه مِهٔ ۱۹۵۸، یک کمیتهٔ بینالمللی متشکل از دانشمدانی از بخش های تجاری و دانشگاهی در زوریخ تشکیل شد. هدف آنها، توسعهٔ زبان فرتن و دستیابی به یک زبان واحد و استاندارد برای برنامهسازی بود. این زبان بعداً به نام الگول معروف شد. بَکوس ایده های به کار رفته در الگول را پسندید ولی از نحوهٔ بیان آن خوشش نیامد. به گفتهٔ او:
«آنها همه چیز را به انگلیسی توضیح داده بودند و به نظرم رسید که باید کاری کرد تا بتوان به صورت دقیقتری به بیان اینگونه مفاهیم پرداخت.»
برای حل این مشکل، بَکوس قالب زبان های نابسته به متن را که به تازگی توسط نوام چامسکی زبان شناس معروف اختراع شده بود، به کار گرفت. اختراع تازهٔ بَکوس بعداً به نام فرم بکوس-نائور معروف شد که آن هم داستان جالبی دارد.
افتخارات و جوایز[ویرایش]
- کار در آیبیام (۱۹۶۳) [۱]
- برنده جایزهٔ مکداول والاس(۱۹۶۷) [۲]
- دریافت نشان ملی علوم (۱۹۷۵) [۳]
- برنده جایزهٔ تورینگ (۱۹۷۷) [۴][۵]
- عضو فرهنگستان هنر و دانش آمریکا (۱۹۸۵)[۶]
- دریافت نشان افتخار از دانشگاه هانری پوانکاره (۱۹۸۹) [۷]
- برنده جایزهٔ دراپر (۱۹۹۳) [۸]
- برنده جایزهٔ موزه تاریخ کامپیوتر (۱۹۹۷) [۹]
- نام گذاری سیارکی به نام ۶۸۳۰ Johnbackus به افتخار وی توسط دو ستاره شناس ژاپنی (ژوئن ۱، ۲۰۰۷) [۱۰]
بازنشتگی[ویرایش]
بَکوس در سال ۱۹۹۱ بازنشسته شد و از دنیای علوم کامپیوتر و حتی علوم کناره گرفت. از آن تاریخ دانشمندان دیگر کار بر روی زبان های تابعی و حل مشکل آنها را ادامه دادهاند. او خود به درون نگری و مکاشفه پرداخته است و میگوید:
«اغلب دانشمندان به این دلیل دانشمند شده اند که از مواجه با زندگی میهراسیدهاند. آنها در کنج آزمایشگاهها یا کتابخانهها از خلاقیت علمی خود لذت بردهاند بی آنکه با مردم مواجه شوند و مشکلات ناشی از ارتباط با دیگران را تجربه کنند و راه خود را در زندگی هموار کنند. دنیای خود ساختهٔ آنها بسیار جالب است، دنیای پر از امکانات ارضاء کننده و شادی بخش و خالی از رنج و ناراحتی. ناراحتی و مشکلات حل یک مسئله در مقایسه با ناراحتیهایی که افراد در زندگی با آنها مواجهه میشوند بسیار ناچیز است.»
منابع[ویرایش]
- «بزرگان دانش رایانه: زندگی و نوآوریهای پانزده دانشمند علوم رایانه». دبیرخانهٔ شورای عالی اطلاع رسانی. بازبینیشده در 21 می 2013.
- ↑ http://www-03.ibm.com/ibm/history/exhibits/builders/builders_backus.html
- ↑ http://www.computer.org/portal/site/ieeecs/menuitem.c5efb9b8ade9096b8a9ca0108bcd45f3/index.jsp?&pName=ieeecs_level1&path=ieeecs/about/awards&file=WallaceMcD_recipients.xml&xsl=generic.xsl&
- ↑ http://www.nsf.gov/od/nms/recip_details.cfm?recip_id=25
- ↑ http://www.acm.org/awards/turing_citations/backus.html
- ↑ http://web.archive.org/web/20070204114319/http://www.acm.org/awards/turing_citations/backus.html
- ↑ http://www.amacad.org/publications/BookofMembers/ChapterB.pdf
- ↑ http://www.thocp.net/biographies/backus_john.htm
- ↑ http://www.nae.edu/nae/awardscom.nsf/weblinks/NAEW-4NHMN6?OpenDocument
- ↑ http://www.computerhistory.org/fellowawards/hall/bios/John,Backus/
- ↑ http://ssd.jpl.nasa.gov/sbdb.cgi?sstr=6830
Wikipedia contributors, "John Backus," Wikipedia, The Free Encyclopedia, http://en.wikipedia.org/w/index.php?title=John_Backus&oldid=116484503 (accessed March 20, 2007).
| در ویکیانبار پروندههایی دربارهٔ جان بکوس موجود است. |
|
- اعضای آکادمی ملی دانش آمریکا
- اعضای آکادمی هنر و دانش آمریکا
- اهالی اشلند، اورگن
- اهالی فیلادلفیا
- اهالی ویلمینگتن
- برندگان جایزه تورینگ
- برندگان نشان ملی دانش
- پیشگامان رایانه
- دانشآموختگان دانشگاه کلمبیا
- درگذشتگان ۲۰۰۷ (میلادی)
- ریاضیدانان اهل آمریکا
- زادگان ۱۹۲۴ (میلادی)
- سربازان ارتش ایالات متحده
- سربازان ارتش ایالات متحده آمریکا
- فورترن
- محققین زبانهای برنامهنویسی
- نظامیان ایالات متحده آمریکا در جنگ جهانی دوم
- نظامیان ایالات متحده در جنگ جهانی دوم
- طراحان زبانهای برنامهنویسی