Visualizzazione dei risultati da 1 a 10 su 109

Hybrid View

  1. #1
    Qualcuno ha provato Scala? Stavo leggendo un po' di roba questo weekend e mi sembra una figata atomica: functional+OO, sintassi C-like ma non troppo, basato sulla JVM (= piattaforma managed, diffusa, forte e piuttosto efficiente), può accedere alle librerie Java (ma di Java rifiuta le stupidaggini), ha un sacco di chincaglierie divertenti (primary constructor magico, type inference dove serve, type safe in campi/parametri, operator overloading "spinto", mixin, uniform access, tutto è un'espressione, ...), sembra di stare in un parco giochi! Last but not least, è in giro da un po' e sembra un linguaggio decisamente vivo (a livello di uso e di community). Dove sta la fregatura?
    Amaro C++, il gusto pieno dell'undefined behavior.

  2. #2
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Qualcuno ha provato Scala? Stavo leggendo un po' di roba questo weekend e mi sembra una figata atomica: functional+OO, sintassi C-like ma non troppo, basato sulla JVM (= piattaforma managed, diffusa, forte e piuttosto efficiente), può accedere alle librerie Java (ma di Java rifiuta le stupidaggini), ha un sacco di chincaglierie divertenti (primary constructor magico, type inference dove serve, type safe in campi/parametri, operator overloading "spinto", mixin, uniform access, tutto è un'espressione, ...), sembra di stare in un parco giochi! Last but not least, è in giro da un po' e sembra un linguaggio decisamente vivo (a livello di uso e di community). Dove sta la fregatura?
    Sinceramente no, ma a guardarlo da fuori sempre il paradiso. E' che non ne ho mai avuto voglia/avevo altro da fare.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  3. #3
    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    Per intanto a mio parere meglio avere un modello semplice con cui ragionare.
    Questo senz'altro; inoltre, da quello che ho visto finora con map-reduce (o, più in generale, "for parallelo") da un lato e message passing dall'altro si riescono a risolvere la maggior parte dei problemi di concorrenza in maniera elegante e sicura.
    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    Sinceramente no, ma a guardarlo da fuori sempre il paradiso. E' che non ne ho mai avuto voglia/avevo altro da fare.
    Dopo aver approfondito un po' mi si è un po' raffreddato l'entusiasmo, ci sono tante buone idee, ma per diversi versi mi sembra che abbracci un po' di complicazioni fini a sé stesse (specie a livello di type system).
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    @MItaly - Scala
    Non posso esprimere pareri, ma magari per chi usa il linguaggio quotidianamente quelle che chiami complicazioni hanno un senso. Magari ti sfugge il punto perché non hai mai incontrato il problema.

    Capita ogni tanto, spesso invece sono solo complicazioni. PHP rocks!
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  5. #5
    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    @MItaly - Scala
    Non posso esprimere pareri, ma magari per chi usa il linguaggio quotidianamente quelle che chiami complicazioni hanno un senso. Magari ti sfugge il punto perché non hai mai incontrato il problema.
    Mh, più che altro non capisco certe ridondanze a livello di linguaggio - non so, ad esempio, tutto l'apparato parallelo dei traits con le loro regolette diverse da quelle delle classi mi puzza un po', e su diverse cose non capisco bene quanto sia voluto e quanto siano workaround rispetto alla struttura rigida della JVM.

    Un'altra cosa su cui non ho le idee chiarissime in generale è quanto in là debba spingersi il type system in flessibilità e descrizione precisa di tipi e modi in cui interagiscono (vedi covarianza/controvarianza & co.), non mi è chiaro il punto oltre il quale è più il casino delle costrizioni artificiali che si creano rispetto al vantaggio in sicurezza che ti dà la type-safeness.
    Da questo punto di vista, mi sembra che il type system di Scala sia estremamente sofisticato e "nuanced"; una cosa che mi ha colpito è che loro stessi ti consigliano, in generale, di leggere nella documentazione l'overload "facile" (per capire come va invocato), lasciando da parte quello più generale, dato che molte dichiarazioni risultano piuttosto complesse da comprendere. Di nuovo, non so se questo sia un bene o un male.
    Capita ogni tanto, spesso invece sono solo complicazioni. PHP rocks!
    Ultima modifica di MItaly; 28-02-2015 a 02:12
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Bah, io al momento mi trastullo con J
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  7. #7
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Interessante come riesci a creare faccine che fanno effettivamente qualcosa di utile.
    Ad esempio (>-<)
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  8. #8
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Tutto l'apparato di formalismi è utile per un po' di roba strettamente collegata al mondo matematico. Ad esempio le dimostrazioni di correttezza attraverso i dependet type. Fai qualche ricerca se ti va.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  9. #9
    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    Tutto l'apparato di formalismi è utile per un po' di roba strettamente collegata al mondo matematico. Ad esempio le dimostrazioni di correttezza attraverso i dependet type. Fai qualche ricerca se ti va.
    Come già ricordato numerose volte in varie sedi, fin dagli anni Ottanta J e il suo progenitore APL sono di gran lunga i miei linguaggi non convenzionali preferiti, ai quali si sono poi aggiunti B-Prolog (per ovvi motivi!) e Haskell. Si tratta di uno dei linguaggi più divertenti ed intelligentemente concepiti in circolazione.

    Non solo: si tratta del linguaggio esotico che uso in assoluto più spesso in ambito professionale, sempre accanto a B-Prolog.
    Da quando è stata promulgata la RTCA DO-330 e in particolare l'attesissima appendice DO-333 che per la prima volta standardizza e ufficializza l'uso e l'applicazione dei metodi formali sui quali ho speso gli scorsi venticinque di studio-ricerca-applicazione, i certificatori internazionali hanno dimostrato di approvare largamente (oltre alle ovvietà più lapalissiane, ossia l'output dei soliti Polyspace e AbsInt e le solite paccate di dichiarazioni in Z e/o OCL) anche il theorem proving prodotto con J, B-prolog e loro immediate derivazioni.

    Come immediata conseguenza dell'uscita della DO-333 il fenomeno della elevazione delle specifiche (in questo caso la richiesta contrattuale di una specifica avionica anche per applicazioni normate da altre convezioni internazionali) è aumentato del 15% in un semestre. Il mondo industriale, come sostengo da sempre, ha fame di affidabilità e i metodi formali sono una parte essenziale della risposta. In un quarto di secolo è stato recepita normativamente l'essenzialità del loro uso nella specifica, progettazione e verifica dei sistemi massimamente critici: tra una ventina d'anni, magari, lo capiranno anche gli estensori dei piani di studio accademici italiani.

    Come ulteriore conseguenza dell'aumentata richiesta di expertise, il tempo libero del sottoscritto tende ormai a zero, così come il numero di interventi sui vari forum.
    • Un plauso a Grisha Perelman, raro esempio di genuino anticonformismo umano e scientifico.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.