Microsoft ২০২৬ সালের ৮ জুলাই TypeScript 7 রিলিজ করেছে, যেখানে তাদের JavaScript-ভিত্তিক ল্যাঙ্গুয়েজ সার্ভিসের পরিবর্তে Rust-এ লেখা একটি নেটিভ বাইনারি ব্যবহার করা হয়েছে। নতুন এই ইঞ্জিন টাইপ-চেকিং ল্যাটেন্সি ৪০% পর্যন্ত কমিয়ে দেয় এবং CI বিল্ডের গতি ৩০%-৪৫% বৃদ্ধি করে।
কেন এই ইঞ্জিনটি গুরুত্বপূর্ণ
TypeScript-এর ল্যাঙ্গুয়েজ সার্ভিস এডিটরগুলোতে টাইপ চেকিং, IntelliSense এবং রিফ্যাক্টরিং সাজেশন প্রদান করে। এখন পর্যন্ত এটি Node.js-এ চলত, যা একটি JavaScript রানটাইম এবং এটি এডিটরের UI থ্রেড শেয়ার করে। বড় মনোরিপো (monorepos)-এর ক্ষেত্রে এই সার্ভিসটি প্রায়ই প্রতিটি এডিটিংয়ের সময় বাধা (bottleneck) সৃষ্টি করে এবং CI-এর সময় বাড়িয়ে দেয়। সার্ভিসটিকে একটি আলাদা নেটিভ বাইনারিতে নিয়ে আসার মাধ্যমে Microsoft টাইপ অ্যানালাইসিসকে JavaScript থ্রেড থেকে বিচ্ছিন্ন করেছে এবং এর ফলে Node রানটাইমের প্রয়োজনীয়তা সম্পূর্ণভাবে দূর হয়েছে।
ব্যবহারিক ক্ষেত্রে গতির উন্নতি
লঞ্চের সাথে প্রকাশিত বেঞ্চমার্কগুলো দেখাচ্ছে যে, অন-দ্য-ফ্লাই (on-the-fly) টাইপ চেকিংয়ের ক্ষেত্রে ল্যাটেন্সি ৪০% হ্রাস পেয়েছে। CI পাইপলাইনে বিভিন্ন বাস্তবধর্মী প্রজেক্টে বিল্ড টাইম ৩০% থেকে ৪৫% পর্যন্ত কমেছে। ইঞ্জিনটিতে আরও উন্নত ক্যাশিং (caching) ব্যবস্থা যুক্ত করা হয়েছে: এটি শুধুমাত্র পরিবর্তিত ফাইলগুলো পুনরায় চেক করে, যার ফলে ইনক্রিমেন্টাল বিল্ডগুলো অনেক বেশি দ্রুততর হয়।
নিরাপত্তা এবং আইসোলেশন
কম্পাইলারটিকে একটি আইসোলেটেড প্রসেসে চালানোর ফলে ত্রুটিপূর্ণ ইনপুট বা ক্ষতিকারক প্যাকেজ এডিটরের মেইন থ্রেডকে ক্ষতিগ্রস্ত করতে পারে না। এই বাইনারিটি Node-এর ওপর যেকোনো নির্ভরশীলতা এড়িয়ে চলে, যা JavaScript-এর ডাইনামিক প্রকৃতির কারণে সৃষ্ট অ্যাটাক সারফেস (attack surface) কমিয়ে দেয়। যেসব টিম কঠোর স্যান্ডবক্সিং (sandboxing) নীতি অনুসরণ করে, তারা এখন একটি কম্পাইলড Rust বাইনারি ব্যবহার করতে পারবে যা বিদ্যমান হার্ডেনিং পলিসির সাথে সামঞ্জস্যপূর্ণ।
AI-চালিত ডায়াগনস্টিকস
এই নেটিভ ইঞ্জিনটি Microsoft-এর AI মডেলগুলোর সাথে ইন্টিগ্রেশন নিয়ে এসেছে, যা আরও নির্ভুল এরর-ফিক্স (error-fix) সাজেশন প্রদান করে। যেহেতু ডায়াগনস্টিকস একই দ্রুত প্রসেসে চলে, তাই GitHub Copilot-এর সাজেশনগুলো আরও দ্রুত প্রদর্শিত হয়, যা ডেভেলপারদের এডিটর না ছেড়েই টাইপ এররগুলো ঠিক করতে সাহায্য করে।
ইকোসিস্টেমের ওপর প্রভাব
VS Code 1.129-এ ইতিমধ্যেই এই বাইনারিটি অন্তর্ভুক্ত করা হয়েছে; এডিটরটি এটি স্বয়ংক্রিয়ভাবে শনাক্ত করে এবং কোনো ম্যানুয়াল কনফিগারেশন ছাড়াই সুইচ করে। React টিম React 19-এর জন্য ডিফল্ট হিসেবে TypeScript 7 ব্যবহার করবে।
সারকথা: TypeScript 7-এর Rust-ভিত্তিক নেটিভ ইঞ্জিন দীর্ঘদিনের পারফরম্যান্সের বাধা বা চোক পয়েন্টকে (choke point) একটি দ্রুত এবং আইসোলেটেড সার্ভিসে রূপান্তরিত করেছে, যা বড় প্রজেক্টগুলোর জন্য পরিমাপযোগ্য গতি এবং নিরাপত্তা নিশ্চিত করে।
