{"id":230268,"date":"2026-07-31T07:53:06","date_gmt":"2026-07-31T07:53:06","guid":{"rendered":"https:\/\/www.europesays.com\/ch-de\/230268\/"},"modified":"2026-07-31T07:53:06","modified_gmt":"2026-07-31T07:53:06","slug":"scriptc-von-vercel-bringt-typescript-nativ-zum-laufen","status":"publish","type":"post","link":"https:\/\/www.europesays.com\/ch-de\/230268\/","title":{"rendered":"scriptc von Vercel bringt TypeScript nativ zum Laufen"},"content":{"rendered":"<p>Scriptc von Vercel Labs bricht mit dem JavaScript-Runtime-Modell. Statt TypeScript nach JavaScript zu \u00fcbersetzen, erzeugt der Open-Source-Compiler direkt native Binaries f\u00fcr verschiedene Plattformen. Bei statischer Kompilierung braucht es weder Node.js noch eine JavaScript-Engine, und das erzeugte Executable ben\u00f6tigt eine eingebettete JavaScript-Runtime nur in Ausnahmef\u00e4llen. Laut Vercel Labs bringt das massive Performancegewinne.<\/p>\n<p>        Weiterlesen nach der Anzeige<\/p>\n<p>Die <a href=\"https:\/\/github.com\/vercel-labs\/scriptc\" rel=\"external noopener nofollow\" target=\"_blank\">GitHub-Seite von scriptc<\/a> nennt dazu konkrete Zahlen, ermittelt auf einem nicht n\u00e4her spezifizierten Apple-M-System. Die Benchmarkergebnisse stellt Vercel Labs \u00e4hnlichen Workloads in Node.js, Go, Rust und Zig gegen\u00fcber. Bei einem scriptc-Beispielprojekt hat sich laut Vercel Labs die Startzeit gegen\u00fcber dem gleichen Node.js-Workload von 47 auf 2,4 Millisekunden verk\u00fcrzt und das statische Binary belegt mit rund 200 KByte Gr\u00f6\u00dfe deutlich weniger Speicherplatz als das etwa 2 MByte gro\u00dfe Go-\u00c4quivalent. Zudem beansprucht das Beispiel-scriptc-Executable maximal 4 MByte an Arbeitsspeicher, w\u00e4hrend es bei Node.js bis zu 116 MByte sind.<\/p>\n<p>QuickJS-NG f\u00fcr dynamische Inhalte<\/p>\n<p>Indem scriptc neben TypeScript auch gro\u00dfe Teile der Node.js-API wie fs, path, crypto, http, https, net, dns, timers und fetch nativ implementiert, zielt es auf eine m\u00f6glichst hohe Kompatibilit\u00e4t mit bestehendem Node.js\u2011Code ab. Bei dynamischen JavaScript-Features wie npm-Abh\u00e4ngigkeiten oder Code, der mit any nicht typisiert ist, enth\u00e4lt das Binary zus\u00e4tzlich <a href=\"https:\/\/github.com\/quickjs-ng\/quickjs\" rel=\"external noopener nofollow\" target=\"_blank\">die JavaScript-Engine QuickJS-NG<\/a>.<\/p>\n<p>      <a href=\"https:\/\/www.heise.de\/imgs\/18\/5\/1\/2\/9\/5\/8\/6\/Screenshot_2026-07-30_115729-bfc0dbf07bf473db.png\" rel=\"nofollow noopener\" target=\"_blank\"><\/p>\n<p>  <img loading=\"lazy\" decoding=\"async\" alt=\"scriptc wandelt TypeScript in natives JavaScript um. Das Schaubild zeigt die daf\u00fcr erforderlichen Arbeitsschritte.\" height=\"106\" src=\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='696px' height='391px' viewBox='0 0 696 391'%3E%3Crect x='0' y='0' width='696' height='391' fill='%23f2f2f2'%3E%3C\/rect%3E%3C\/svg%3E\" style=\"aspect-ratio: 1090 \/ 106; object-fit: cover;\" width=\"1090\"\/><\/p>\n<p>      <\/a><\/p>\n<p>Schritt f\u00fcr Schritt: scriptc kompiliert TypeScript in nativen Code.<\/p>\n<p>scriptc l\u00e4sst sich mit npm install -g scriptc installieren und ben\u00f6tigt Clang als Compiler-Frontend. Der Open-Source-Compiler setzt auf macOS arm64 als prim\u00e4re Plattform. Linux- und Windows-Binaries werden per Cross-Compilation erzeugt. Das Projekt befindet sich in einem sehr fr\u00fchen Entwicklungsstand (Version 0.0.x) und hat noch keinen stabilen Release-Status.<\/p>\n<p>        Lesen Sie auchMehr anzeigenWeniger anzeigen<\/p>\n<p>(<a class=\"redakteurskuerzel__link\" href=\"https:\/\/www.heise.de\/news\/mailto:manuel.masiero@heise.de\" title=\"Manuel Masiero\" rel=\"nofollow noopener\" target=\"_blank\">mro<\/a>)<\/p>\n<p>\n      Dieser Link ist leider nicht mehr g\u00fcltig.\n    <\/p>\n<p>Links zu verschenkten Artikeln werden ung\u00fcltig,<br \/>\n      wenn diese \u00e4lter als 7\u00a0Tage sind oder zu oft aufgerufen wurden.\n    <\/p>\n<p>Sie ben\u00f6tigen ein heise+ Paket, um diesen Artikel zu lesen. Jetzt eine Woche unverbindlich testen \u2013 ohne Verpflichtung!<\/p>\n","protected":false},"excerpt":{"rendered":"Scriptc von Vercel Labs bricht mit dem JavaScript-Runtime-Modell. Statt TypeScript nach JavaScript zu \u00fcbersetzen, erzeugt der Open-Source-Compiler direkt&hellip;\n","protected":false},"author":2,"featured_media":230269,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_share_on_mastodon":"0"},"categories":[15],"tags":[46,49941,622,36868,4781,2050,45,60,59,44,64,61,20133,49942,63,62],"class_list":["post-230268","post","type-post","status-publish","format-standard","has-post-thumbnail","category-wissenschaft-technik","tag-ch","tag-compiler","tag-it","tag-javascript","tag-open-source","tag-programmierung","tag-schweiz","tag-science","tag-science-technology","tag-switzerland","tag-technik","tag-technology","tag-typescript","tag-webentwicklung","tag-wissenschaft","tag-wissenschaft-technik"],"share_on_mastodon":{"url":"https:\/\/pubeurope.com\/@ch_de\/117013504845214106","error":""},"_links":{"self":[{"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/posts\/230268","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/comments?post=230268"}],"version-history":[{"count":0,"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/posts\/230268\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/media\/230269"}],"wp:attachment":[{"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/media?parent=230268"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/categories?post=230268"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.europesays.com\/ch-de\/wp-json\/wp\/v2\/tags?post=230268"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}