TypeScript

Appunti sul type checker

Esperienza
Professionale
Stato
Attivo

TypeScript è il linguaggio dei servizi backend e delle librerie npm che mantengo, usato in strict mode su Node.js.

Aggiornato Sep 2026

Contesto

Il materiale qui nasce dal lavoro sul type system e sulla performance del compilatore in codebase backend e di libreria reali — inferenza che va storta, tipi condizionali che non distribuiscono come ti aspetti, e type-check che diventano lenti. Non è esaustivo e non è l'handbook: è ciò che è emerso davvero.

Una raccolta in evoluzione di note, esperimenti e progetti — non una copia della documentazione ufficiale. Questa raccolta riguarda il type system strutturale e la performance di tsc: inferenza, tipi condizionali e dove il type-checking diventa costoso. La tipizzazione applicativa quotidiana, i decoratori e i generici specifici dei framework sono fuori ambito.

Filtrato per Tipi condizionali distributivi · Rimuovi filtro

Note

Scrittura tecnica focalizzata su un concetto, un problema o un'intuizione specifica.

Capire la distribuzione dei tipi condizionali e infer

Quando un tipo condizionale distribuisce su una union e quando no, come [T] extends [U] lo disattiva, quale posizione di infer vince, e perché la forma distributiva amplifica il costo.

  • typescript
  • conditional-types
  • distributive-conditional-types
  • infer
  • type-inference
  • generics
  • compiler-performance

Esperimenti

Indagini pratiche, benchmark o esperimenti tecnici.

Esperimento sul costo del type-check in TypeScript

Un protocollo basato su fixture deterministiche per misurare come il conteggio delle istanziazioni e il check time di tsc reagiscono alla dimensione delle union, alla lunghezza delle builder chain, alla posizione della ricorsione e alla larghezza delle intersezioni, con --extendedDiagnostics e --generateTrace.

  • typescript
  • compiler-performance
  • type-instantiations
  • trace-analysis
  • conditional-types
  • distributive-conditional-types
  • infer

Progetti

Ancora nessun progetto pubblicato.

Argomenti

Aree e competenze collegate a questo lavoro.

TypeScript | Mauro Cunsolo