مایکروسافت تا سال ۲۰۳۰ تمام کدهای C و ++C را با Rust جایگزین می‌کند

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

مایکروسافت گام بلندی در مسیر نوسازی عمیق کدهای هسته‌ای خود برداشته و برنامه دارد تا سال ۲۰۳۰ به‌طور کامل از C و ++C عبور کند و Rust را جایگزین آن‌ها کند.

گالن هانت، مهندس ارشد متمایز مایکروسافت، در پستی در لینکدین نوشت: «هدف من حذف هر خط کد C و ++C از مایکروسافت تا سال ۲۰۳۰ است.» به گفته او، راهبرد مایکروسافت ترکیب هوش مصنوعی و الگوریتم‌ها برای بازنویسی بزرگ‌ترین کدبیس‌های این شرکت است. هانت «ستاره راهنما»ی این پروژه را چنین توصیف می‌کند: «یک مهندس، یک ماه، یک میلیون خط کد».

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

اگرچه این تصمیم ممکن است برای برخی شوکه‌کننده باشد، اما در امتداد مسیری است که مایکروسافت پیش‌تر ترسیم کرده بود؛ مسیری که در آن از هوش مصنوعی برای بازآرایی (Refactor) کرنل NT/Windows و سایر کدهای حیاتی با استفاده از Rust بهره گرفته می‌شود. این رویکرد از سال ۲۰۲۳ آشکار شد؛ زمانی که مایکروسافت اعلام کرد بخش‌هایی از کرنل ویندوز را با Rust بازنویسی می‌کند و مارک روسینوویچ، CTO بخش Azure، آغاز پروژه‌های جدید با ++C/C را ممنوع و استفاده از Rust را الزامی کرد. روسینوویچ اوایل امسال نیز تأکید کرد که مایکروسافت «به‌طور کامل» روی Rust سرمایه‌گذاری کرده است.

در همان مقطع، روسینوویچ به کار روی «ترجمه خودکارتر C و ++C به Rust با استفاده از مدل‌های زبانی بزرگ (LLM)» اشاره کرده بود. پست اخیر هانت را می‌توان ادامه همان مسیر دانست. او هم‌زمان اعلام کرده که به‌دنبال جذب یک مهندس نرم‌افزار ارشد (Principal Software Engineer) برای کمک به این پروژه است.

در توضیح این موقعیت شغلی آمده است: «هدف این نقش، تکامل و تقویت زیرساختی است که امکان ترجمه بزرگ‌ترین سامانه‌های C و ++C مایکروسافت به Rust را فراهم می‌کند.» تجربه ساخت کدهای سطح سیستم با کیفیت تولیدی در Rust (ترجیحاً حداقل سه سال)، و همچنین سابقه کار در حوزه‌هایی مانند کامپایلر، پایگاه داده یا سیستم‌عامل از الزامات مهم این نقش عنوان شده است.

تیم بازنویسی Rust تحت هدایت هانت، بخشی از گروه Future of Scalable Software Engineering در سازمان Engineering Horizons و زیرمجموعه Microsoft CoreAI است. به گفته او، مأموریت این تیم «ایجاد توانمندی‌هایی برای حذف بدهی فنی در مقیاس بزرگ برای مایکروسافت و مشتریانش» است؛ ابزارها و روش‌هایی که ابتدا به‌صورت داخلی توسعه می‌یابند و سپس در سطح مایکروسافت و حتی کل صنعت گسترش داده می‌شوند.