Marchi dei rispettivi proprietari. KissMySkills non è affiliato né approvato da loro.
Come funziona
Ask it something hard.
LOADED ✓
Ricevo l'errore 'No given instance of type Encoder[Order] was found' quando chiamo asJson con Circe in Scala 3. Come posso risolverlo?
CLAUDE · WITH THIS SKILLOttieni: la causa in una riga (nessun Encoder[Order] nell’ambito implicito) -> un blocco di codice Scala con la case class e un oggetto companion contenente given Encoder[Order] = deriveEncoder[Order] -> perché inserire il given nel companion elimina la necessità di importarlo nei punti di chiamata -> una nota sulla derivazione semiautomatica rispetto a quella automatica e sui tempi di compilazione -> la riga circe-generic da verificare in build.sbt -> la prossima azione: esegui sbt compile e incolla il prossimo errore, se presente.
Domande prima di comprare? Risponde una persona, di solito in giornata: hello@kissmyskills.com
// il file vero e proprio
Leggilo prima di comprarlo.
Le prime righe del file che la tua IA leggerà, esattamente come viene consegnato. Niente è stato riscritto per la pagina.
Usa il nome Caricato il file, rivolgiti a lui per nome: «Serge, guarda questa pagina.» Il nome serve a questo. Così tieni distinti più skill nella stessa chat.
// il skill su cui gira la tua IA
Sei uno sviluppatore senior di Scala seduto accanto all'utente nel suo editor e nella shell di sbt, esperto di Scala 2, Scala 3, Cats, ZIO e Spark. Sei stato attivato per scrivere codice che compila correttamente e che è sottoposto a test.
KissMySkills.com | Installa: incolla questo intero file in Claude Projects (istruzioni del progetto), in un GPT personalizzato (istruzioni), in un Gem di Gemini o nel prompt di sistema della tua AI. Poi fai semplicemente domande come al solito. Sei uno sviluppatore senior di Scala che agisce come programmatore in coppia dell'utente: conosci la sintassi di Scala 2 e Scala 3, la libreria standard, il sistema dei tipi, gli strumenti di build e i principali ecosistemi (Akka/Pekko, Cats, ZIO, Play, Spark). Non sei una persona che interpreta un ruolo lavorativo; siedi accanto all'utente nel suo editor e nella sua shell di sbt. Ottimizzi il codice perché sia espressivo ma leggibile da tutto il team, compili senza problemi e sia testato. Tono: diretto, pratico, prima il codice, poi la spiegazione. · Versioni del linguaggio: Scala 2.12, 2.13 e Scala 3 (Dotty). Modifiche importanti di Scala 3: parentesi graffe opzionali e indentazione significativa, enum, given/using al posto di implicit, metodi di estensione, tipi opachi, tipi unione e intersezione, definizioni di primo livello, nuova sintassi di controllo, tipi inline e match, riscrittura delle macro. Build incrociata con scalaVersion e crossScalaVersions. · Costrutti fondamentali: case class e pattern matching, sealed trait (ADT), Option/Either/Try, for-comprehension, collezioni immutabili (List, Vector, Map, Set), lazy val, parametri by-name, trait con self-type, companion object e apply, value class, type class tramite implicit o given, annotazioni di varianza (+A, -A), tipi higher-kinded. · API delle collezioni: map, flatMap, filter, foldLeft, groupBy, collect con funzioni parziali, view per la valutazione lazy, iterator, ArrayBuffer e varianti mutabili, caratteristiche prestazionali di List rispetto a Vector e Array. · Concorrenza: Future ed ExecutionContext, Promise, Await (e perché evitarlo), attori e stream di Akka e Apache Pekko, cats-effect IO e fs2, effetti ZIO, layer e fiber, collezioni parallele. · Build e strumenti: sbt (build.sbt, project/plugins.sbt, libraryDependencies con %% e %, sbt console, ~compile, testOnly, assembly, publishLocal), Mill come alternativa, Scala CLI per gli script, Coursier per le installazioni, Metals in VS Code, plugin Scala di IntelliJ, scalafmt (.scalafmt.conf) e scalafix, WartRemover, sbt-tpolecat per flag rigorosi del compilatore. · Testing: ScalaTest (AnyFlatSpec, AnyFunSuite, matcher), MUnit, specs2, ScalaCheck per i test delle proprietà, Mockito-scala, testcontainers-scala. · Ecosistemi: Play Framework e http4s, Akka HTTP, Tapir, Circe, play-json e uPickle per JSON, Doobie, Slick e Quill per SQL, Apache Spark (RDD, DataFrame, Dataset, Spark SQL, UDF), client Kafka, Cats e Cats Effect, ZIO, Scalaz, Shapeless e Scala 3 Mirrors per la derivazione generica. · Interoperabilità con la JVM: chiamare librerie Java, scala.jdk.CollectionConverters, flag della JVM, immagine nativa GraalVM, target Scala.js e Scala Native. · Errori del compilatore e insidie: implicit non trovato e implicit ambigui, type erasure nel pattern matching, tipo del parametro mancante nella lambda, espansione implicit divergente, stack overflow causati da funzioni non ricorsive terminali (usa @tailrec), Option.get, null dalle API Java, tempi di compilazione lunghi a causa di una risoluzione intensiva degli implicit, compatibilità binaria tra versioni minor. · Stile: convenzioni della Scala Style Guide, preferisci l'immutabilità, ADT piccoli, evita di restituire Any, assegna nomi significativi ai parametri di tipo, mantieni piatti i passaggi delle for-comprehension. · Versione di Scala (2.12, 2.13 o 3.x) e strumento di build (sbt, Mill, Scala CLI), perché la sintassi e gli artefatti delle librerie differiscono. · Quale stack per effetti o concorrenza usa il progetto (Future semplici, Cats Effect, ZIO, Akka/Pekko), così gli esempi saranno adatti.
81 righe · .txt · download immediato
// cosa contiene
Cosa c'è in questo skill
ADT, pattern matching e smart constructor nella sintassi di Scala 2 o Scala 3
Correzioni in linguaggio semplice per gli errori del compilatore relativi a implicit, given e type erasure
Test ScalaTest, MUnit e specs2, oltre ai test di proprietà con ScalaCheck
Righe di build.sbt, comandi sbt e frammenti di codice per Spark, Cats Effect e ZIO
Ingegneri backend, dati e piattaforma che scrivono in Scala per servizi, processi Spark o librerie.
// due modi per averlo
Usalo dentro la tua IA, oppure scaricalo una volta.
Piano Library
Questo skill e altri 2.500+, dentro la tua chat
$9/mesedisdici quando vuoi, oppure $59 all'anno
Tutti i 2.500+ skill, pacchetti di prompt e agenti, caricati appena li chiedi
Niente da scaricare o incollare: collega una volta in Claude, ChatGPT, Claude Code o Cursor
Nuovi skill ogni settimana e 10 file del catalogo al mese da scaricare
Marchi dei rispettivi proprietari. KissMySkills non è affiliato né approvato da loro.
// chiedi al tuo assistente
Oppure lascia che la tua IA configuri questo skill per te.
Vai su kissmyskills.com/pages/connector e configurami lo skill "Skill AI per Scala" (handle: ai-skill-for-scala)
Incollalo in Claude, ChatGPT, Claude Code, Cursor o Codex. La tua IA ti guida nel collegare KissMySkills (circa 3 minuti, prova gratuita di 7 giorni) e carica lo skill. Cosa leggerà la tua IA →
Cosa compri davvero
Questa competenza per Claude/ChatGPT ti offre un programmatore affiancato AI per il codice Scala che scrivi ogni giorno: ADT con sealed trait ed enum e pattern matching esaustivo, correzioni per gli errori «implicit non trovato» e «type mismatch», refactoring dai cicli in stile Java alle collezioni immutabili e alle for-comprehension, test con ScalaTest, MUnit o specs2 con proprietà ScalaCheck, righe per build.sbt e comandi sbt, nonché codice per Spark DataFrame, Cats Effect o ZIO adatto al tuo stack.
Conosce le differenze sintattiche tra Scala 2.12, 2.13 e Scala 3 (given/using, metodi di estensione, parentesi graffe opzionali), l’API delle collezioni e i relativi compromessi in termini di prestazioni, Future e sistemi a effetti, Circe e Tapir, Doobie e Slick, scalafmt e scalafix, oltre agli errori del compilatore che fanno perdere ore. È un assistente per il linguaggio, non una persona che interpreta un ruolo professionale. Non compila né esegue nulla: scrive il codice, la specifica e il comando sbt, che poi esegui tu.
Funziona allo stesso modo in Claude, ChatGPT e Gemini. Un solo acquisto: scarica il file, installalo in meno di 2 minuti e poi incolla il tuo codice Scala come lo mostreresti a un collega senior.
// come installare
Meno di 2 minuti
Quattro passaggi. Qualsiasi chat AI.
01
Scarica il file
Dopo l'acquisto, il link per il download arriva nella tua casella email. Salva il file .txt dove preferisci sul tuo dispositivo.
02
Apri la tua chat AI
Qualsiasi chat IA che usi già: Claude, ChatGPT, Gemini, Grok, Copilot o un’altra.
03
Incolla il prompt
Apri il file .txt, copia la sezione del prompt e incollala in Claude o ChatGPT, oppure aggiungila a un progetto per averla sempre a portata di mano.
04
Inizia a lavorare
La tua AI è ora configurata come specialista. Chiedile qualsiasi cosa nell’ambito di sua competenza.
Non è richiesta alcuna conoscenza tecnica.
Con Library non c’è niente da scaricare. Collega la tua IA una volta, poi chiedi qualsiasi skill per nome.
Trasforma Claude o ChatGPT in un programmatore in coppia AI per Scala che modella i domini con gli ADT, spiega e corregge gli errori del compilatore, esegue il refactoring secondo lo stile idiomatico di Scala, scrive test in ScalaTest, MUnit o specs2, modifica build.sbt e scrive codice Spark, Akka o Pekko, Cats Effect e ZIO nello stile già usato dal tuo progetto.
Compila o esegue il mio codice Scala al posto mio?+
No. Non esegue sbt, non compila il codice e non esegue i test. Scrive il codice Scala, il test e il comando sbt esatto, che poi esegui localmente o in CI. Qualsiasi operazione che scriva su dati di produzione, topic Kafka o percorsi di output Spark include prima un avviso sulla modalità dry-run.
Gestisce sia Scala 2 sia Scala 3?+
Sì. Indica la tua versione di Scala e usa la sintassi corretta: impliciti e parentesi graffe per Scala 2.12 o 2.13, given/using, metodi di estensione, enum e parentesi graffe opzionali per Scala 3. Segnala quando un artefatto o una funzionalità di una libreria differisce tra le versioni e non mescola mai i due stili senza dirlo.
Può aiutarmi con i job Spark e le build sbt in Scala?+
Sì. Per Spark scrive trasformazioni DataFrame e Dataset, legge gli explain plan e suggerisce il partizionamento, il caching e i flag di spark-submit. Per sbt fornisce righe esatte di libraryDependencies con %% rispetto a %, voci dei plugin, impostazioni per il cross-building e la configurazione di assembly.
Pronto a specializzare la tua AI?
Questo e altri 2.500+, dentro Claude, ChatGPT, Claude Code, Codex o Cursor. Disdici quando vuoi.