فرترن؛ زبانی که نمیمیره ولی برنامهنویس نداره
خلاصهٔ کاملتر
نویسنده تو این مقاله میگه فرترن (Fortran)، اولین زبان برنامهنویسی سطحبالای دنیا که سال ۱۹۵۷ ساخته شد، با اینکه دهههاست خیلیا مرگش رو پیشبینی میکنن، هنوز زندهست و تو محاسبات علمی و مهندسیِ موازی و بزرگمقیاس بیرقیبه؛ حتی C و C++ هم بهش نمیرسن. مشکل اینجاست که برنامهنویسای جوون هیچ علاقهای بهش ندارن و شرکتایی که بهش وابستهان، نمیتونن نیروی جدید پیدا کنن.
به گفتهٔ نویسنده، فرترن یه «مشکل تصویر» داره: جوونا فکر میکنن این زبون تو همون شکل ابتداییِ دههٔ پنجاه مونده، در حالی که فرترن آرومآروم مدرن شده و نسخهٔ ۲۰۲۳ش سیستم تایپ استاتیک قوی، ماژول، شیءگرایی و مهمتر از همه، امکانات برنامهنویسیِ موازیِ توکار (coarray و مدل PGAS) داره؛ چیزی که هیچ زبون استاندارد دیگهای نداره.
نویسنده میگه دلیل افول محبوبیت فرترن اینه که از دههٔ هشتاد میلادی با اومدن نرمافزار آزاد و کامپیوترهای خونگی، کلی زبون جدید مجانی در دسترس قرار گرفت و فرترن هم همیشه تو یه حوزهٔ باریک و تخصصی، یعنی محاسبات علمی روی ابرکامپیوترها، گیر کرده بود. حالا نسل برنامهنویسای قدیمی داره بازنشسته میشه و کدهای حیاتیِ موجود ممکنه بیصاحب بمونن.
بخش اصلی مقاله چند راهحل رو بررسی میکنه. ترجمهٔ دستیِ کد فرترن به زبونای جدید رو نویسنده هم پرهزینه و هم خطرناک میدونه، چون این برنامهها معمولاً مستندنشدهان و فقط همون دانشمندای در حال بازنشستگی میفهمنشون؛ یه جور بنبستِ کچ-۲۲.
ترجمهٔ خودکار هم به گفتهٔ نویسنده جواب کامل نمیده: کامپایلرها فقط کد قدیمی و ترتیبیِ FORTRAN 77 رو میتونن به C تبدیل کنن، نه کد موازی رو. مدلهای زبانی بزرگ (LLM) هم فعلاً فقط تیکهکدای کوچیک رو ترجمه میکنن، ذاتاً غیرقطعیان و توهم میزنن؛ برای کاربردهای حیاتیِ جونی که خطای صفر میخوان، هیچ راه ریاضیای برای سنجش درستیِ خروجیشون نیست.
دو راه دیگه هم مطرحه: «هدفگیریِ فرترن» یعنی زبونای مدرنتر مثل Python یا زبونای تابعی مثل Haskell به فرترن ترنسپایل بشن (مخصوصاً چون کتابخونههای علمیِ پایتون مثل NumPy و SciPy همین الان زیرِ کاپوت به کدهای فرترنیِ LAPACK و BLAS تکیه دارن)، و «برگردوندن فرترن به دانشگاه» یعنی یه جور کمپین بازاریابی برای آموزش دوبارهش به دانشجوهای علوم و مهندسی.
نکات کلیدی:
- فرترن هنوز تو محاسبات علمیِ موازی و بزرگمقیاس بیرقیبه، ولی با کمبود شدید برنامهنویس جوون روبهروئه
- فرترن مدرن (نسخهٔ ۲۰۲۳) برخلاف تصور جوونا، تایپ استاتیک قوی و برنامهنویسیِ موازیِ توکار داره
- ترجمهٔ دستی گرون و خطرناکه؛ کامپایلرها فقط کد ترتیبیِ قدیمی رو تبدیل میکنن؛ LLMها هم غیرقطعی و مستعد توهمان
- راهحل عملیتر شاید ترنسپایل از پایتون به فرترن و برگردوندن آموزشش به دانشگاهها باشه




