2009-06-16 4 views
10

Su Joel Spolsky's blog, spesso leggo qualcosa su "Wasabi" e se controllo Wikipedia, si dice che it's an in-house programming language.Che cos'è Wasabi?

Che cos'è? Perché lo usano? E perché non è pubblico?

+15

caldo pasta verde piccante che è ottima con sushi – JoshBerke

+2

Un film da Luc Besson. – Guffa

+2

Podcast sull'argomento: http://www.hanselminutes.com/493/killing-off-wasabi-a-20yr-old-vbscript-problem-solved-with-2015-roslyn-tech "Scott parla con Jacob Krall da Fog Creek Software su come il suo team ha usato il compilatore C# Roslyn open source per portare il suo linguaggio in stile VBScript chiamato "Wasabi" nel 21 ° secolo. " –

risposta

12

Vorrei iniziare con The Origin of Wasabi:

Come lo sviluppatore primario e manutentore di Wasabi, ho voluto scrivere una serie di articoli su Wasabi per un po ', e la settimana scorsa, ho deciso parlare con Joel a riguardo. Oggi, I inizierà con una breve cronologia della lingua e, più avanti, parlerò di su alcune delle sue funzioni più interessanti e dove vogliamo portarlo nel futuro .

+0

Grande. Ho trovato 5 articoli su quel blog su Wasabi http://citydesknews.com/blog/category/Wasabi.aspx –

+0

Il link sopra nella risposta accettata è rotto, ma un link aggiornato può essere trovato [qui] (http: //blog.fogcreek.com/the-origin-of-wasabi/) – joshin4colours

+0

@ joshin4colours - collegamento corretto. Saluti –

2

È il linguaggio che Fog Creek ha realizzato e utilizza. Si basa su VBScript.

3

Ecco un recente aggiornamento a partire dal 2013:

In principio, c'era Cardo. Thistle era, nel migliore dei casi, una gloriosa regex che convertiva ASP in PHP. È stato scritto da un tirocinante, e lo ha mostrato .

Successivamente, Thistle è stato ampliato in un compilatore ASP in PHP. Il compilatore era ancora un termine approssimativo; c'era ancora un sacco di regex magic che faceva affidamento su di te dopo la notazione delle app ungheresi. Detto questo, sono abbastanza sicuro che questa versione di Thistle abbia creato un AST per la generazione del codice , il che significa che si è qualificato come compilatore reale.

che conta perché questa versione di cardo è stato ampliato con due funzionalità aggiuntive: si potrebbe compilare VBScript a JavaScript, ed è aggiunto alcune comodità a VBScript, come ad esempio le macro (chiamate picture functions (non chiedere)), lambda e semplificazioni al sistema di dichiarazione . Non ridere troppo al primo; la motivazione era la stessa di RJS o del supporto JavaScript di Seaside. Tutte e tre le tecnologie sono morte ora, e per una buona ragione, ma era modish a l'ora.

Più tardi, quando NET è venuto fuori, e VBScript era di fine lifed, che ci ha lasciato con la possibilità di riscrivere il tutto ... o fare un "vero" compilatore che potrebbe compilare VBScript per. NETTO. Wasabi è nato. Wasabi è stato scritto come un compilatore appropriato in grado di tradurre VBScript in C# e (per motivi legacy, vedere sopra) JavaScript. Wasabi, a differenza di Thistle, era un compilatore reale e completo, in un senso CS, quindi era possibile aggiungere inferenza di tipo, espressioni lambda e molte altre sottigliezze , senza spendere troppo. Detto questo, l'obiettivo qui era di consentire la transizione: i nuovi componenti, con restrizioni, potevano essere scritti in C#. L'idea era che, almeno si sperava, Wasabi avrebbe dovuto privarlo gradualmente di .

Quindi no. Non è mai stato pensato per essere una nuova lingua.Era sempre inteso che fosse un trampolino di lancio, un traduttore tra le lingue, non una vera e propria lingua . Mentre ha acquisito alcune funzionalità aggiuntive, è stato rendere accettabile il lavoro in quella dannata cosa - non essere una lingua reale a pieno titolo. Emitting C# e .NET IL sono in realtà ugualmente facile se si dispone di un compilatore reale, ma Wasabi ha sempre emesso C#, in modo tale da poter un giorno eliminare l'intera faccenda.

https://news.ycombinator.com/item?id=5281930

Vedi anche https://news.ycombinator.com/item?id=5281322