TypeScript 7 या आठवड्यात Go मध्ये पूर्णपणे पुन्हा लिहून (rewrite) लाँच करण्यात आले आहे, ज्यामुळे VS Code साठी कंपायलेशन वेळ १७.५ सेकंदांवरून १.३ सेकंदांच्या खाली आला आहे आणि मोठ्या प्रोजेक्ट्समध्ये मेमरीचा वापर २६% पर्यंत कमी झाला आहे. या वेगवान सुधारणेमुळे दैनंदिन कोडिंग त्वरित झाल्यासारखे वाटते आणि यामुळे संपूर्ण स्टॅकवर डेव्हलपर्सच्या तासांमधील वेळेची बचत होते.

Go मध्ये पुन्हा लिहिणे का महत्त्वाचे आहे

Microsoft ने जुन्या JavaScript/Node अंमलबजावणीला बदलून कंपायलर Go मध्ये पुन्हा तयार केला आहे. प्रोजेक्ट्स जसजसे मोठे होत गेले, तसतसे मूळ कोडबेसवर मर्यादा येऊ लागल्या—parsing आणि type-checking मुळे मर्यादित CPU आणि RAM असलेल्या CI runners चा वेग मंदावत असे. इन-बिल्ट concurrency असलेल्या कंपाईल्ड लँग्वेजमध्ये स्विच केल्यामुळे, नवीन इंजिन parsing आणि type-checking समांतर (parallel) पद्धतीने चालवते, ज्यामुळे पहिल्या एररसाठी वाट पाहण्याचा वेळ लक्षणीयरीत्या कमी होतो.

वास्तविक कामगिरीतील सुधारणा

काही प्रमुख कोडबेसेसमधील सुरुवातीचे बेंचमार्क्स (benchmarks) याचा प्रभाव दर्शवतात:

  • VS Code: ११.९ पट वेगवान कंपायलेशन, १८% कमी मेमरी फूटप्रिंट.
  • Sentry, Bluesky, Playwright, Tldraw: ७.७ पट ते ८.९ पट वेग वाढला आहे.
  • Bluesky मध्ये मेमरी वापरामध्ये देखील २६% घट दिसून आली आहे.

जे डेव्हलपर्स दिवसातून डझनभर वेळा “run” किंवा “watch” बटण दाबतात, त्यांना अधिक स्मूथ एडिटिंग आणि हलके CI लोड जाणवतात.

नवीन फ्लॅग्स (flags) तुम्हाला नियंत्रण देतात

या नवीन आवृत्तीसोबत कमांड-लाइन पर्याय उपलब्ध आहेत, ज्यामुळे टीम्स वेग आणि मेमरी यांचा समतोल राखू शकतात:

  • --checkers आणि --builders हे parsing आणि type-checking वर्कर्सना समांतरपणे सुरू करतात, ज्यामुळे multicore CPUs चा प्रभावी वापर होतो.
  • --singleThreaded सर्व काम एकाच थ्रेडवर (thread) आणते, ज्यामुळे race condition उद्भवल्यास डिबगिंग (debugging) करणे सोपे होते.
  • type-checking वर्कर्स आणि builder वर्कर्सचे स्वतंत्र स्केलिंग केल्यामुळे CI पाइपलाइन्स प्रत्येक टप्प्यासाठी आवश्यक तेवढेच रिसोर्सेस (resources) वाटप करू शकतात.
  • सुधारित --watch मोड Parcel चा Go-आधारित पोर्ट वापरतो, ज्यामुळे मोठ्या node_modules ट्रीजचे खर्चिक पोलिंग (polling) थांबते आणि फाईल-बदल शोधण्याची प्रक्रिया हलकी राहते.

कोणाचा फायदा होईल आणि कोण साशंक असू शकते

TypeScript वर मोठ्या प्रमाणावर अवलंबून असलेले फ्रंट-एंड फ्रेमवर्क्स—जसे की Next.js आणि Nuxt—यांना जलद रीबिल्ड्स आणि अधिक अचूक फीडबॅक लूप्सचा फायदा होईल. VS Code आणि Cursor सारखे IDEs अधिक रिस्पॉन्सिव्ह वाटतात, ज्यामुळे डेव्हलपर्स टर्मिनल बिल्ड्सकडे वळण्याऐवजी एडिटरमध्ये जास्त वेळ काम करण्यास प्रोत्साहित होतात.

पुढे काय पाहावे

  • मोठ्या ओपन-सोर्स प्रोजेक्ट्स आणि एंटरप्राइझ मोनोरेपोमधील (monorepos) अवलंबण्याचे प्रमाण.
  • स्थिरता आणि कामगिरीतील संभाव्य त्रुटींबाबत (performance cliffs) समुदायाचा अभिप्राय.
  • कंपायलेशन वेळ अधिक कमी करण्यासाठी किंवा एरर डायग्नोस्टिक्स (error diagnostics) सुधारण्यासाठी कंपायलर फीचर्स जोडणारे Microsoft चे अपडेट्स.