View Single Post
Sitat av etse Vis innlegg
Siden det er klientsidespråk som ikke kompileres er man alltid avhengig av at brukeren kan tolke syntaxen
Vis hele sitatet...
Så å si alt du nevner er basert på nettlesere, og det er revnende likegyldig for ECMA standarden og Mozilla om Array.filter ikke virker i IE6, og det er heller ikke et problem for språket, men for de som lager nettlesere.
Jeg kan ikke helt se at det er relevant i forhold til "... mange avgjørelser innad i språket som ikke var helt tenkt gjennom - og som man på grunn av bakoverkompabilitet aldri blir kvitt. Dette er meget problematisk" ?

JavaScript brukes i alt fra nettlesere til minibanker, på servere, i automasjon osv. i dag, og det er stadig lagt til og fjernet funksjoner i JavaScript, eller mer korrekt ECMA underveis, uten at det har vært noe stort problem, annet enn for frusterte webutviklere.
Med ting som Node og IO.js kan man bruke JavaScript til nesten hva som helst.

Nå kan jo ikke CoffeeScript heller vite hva som støttes av nettleseren, og derfor brukes vanlige for loops, if/else og annet tjafs når man skriver ting som

Kode

callback(item) for item in array
noe som er uproblematisk akkurat i det eksempelet ettersom en for loop er både raskere og greiere, men man mister jo helt fordelene ved Array.some, Array.every osv. samt at ting som Array.indexOf må polyfilles av CoffeeScript, og javascript koden som spyttes ut er langt i fra optimal.

Det kanskje viktigste er at prototyping, hele poenget med JavaScript, abstraheres vekk med CoffeeScript, og man sitter igjen med noe som ligner på Ruby/Python i stedet for JavaScript, som sikkert er fint for som de er vant til de språkene og ikke gidder å lære seg JavaScript skikkelig.
For det er egentlig det CoffeeScript er, en enkel løsning for å slippe å skrive JavaScript, for de som ikke liker JavaScript. Ingenting blir bedre med CoffeeScript, er man en elendig utvikler så blir man ikke bedre med CoffeeScript.

Sitat av etse Vis innlegg
Men CoffeeScript og Dart har enkelte problemer, som gjør at du ikke helt klarer å løse deg helt fra JavaScript...
Vis hele sitatet...
Ehm, det er jo fordi de komplierer til JavaScript, alt man skriver i de språkene er jo bare "syntactic sugar", altså det ser litt annerledes ut, men til syvende og siste må det kunne konverteres til gyldig JavaScript, for det JavaScript nettleseren forstår og forventer.

Den eneste reelle muligheten for å lage et språk for nettlesere som er løsrevet fra JavaScript, er dersom nettlesere begynner å støtte andre språk.
Google prøver jo, ettersom det ser ut til at det er hardt for Google at Mozilla administrerer JavaScript, og de gjerne vil bytte det ut med noe de selv kontrollerer, for eksempel Dart.

Utviklermiljøet er derimot generelt ikke spesielt begeistret for hverken Dart eller Angular. Til og med Go, som faktisk er et bra språk, har fått lunken mottakelse.
Angular er derimot en suksess ettersom det gjør det enklere for noobs å skrive one-page apps med ajax og fancy greier, men Angular er også egentlig bare elendighet etter min mening, og tar JavaScript og gjør det "enklere" å bruke, noe som bare er tilfelle dersom man ikke kan JavaScript, samt at Angular forventer en haug med fullstendig ugyldig HTML som kontrollerer diverse elendighet man har lite oversikt over. Jeg er ikke særlig begeistret!
Sist endret av adeneo; 19. februar 2015 kl. 22:24.