https://www.reddit.com/r/Clojure/comments/68r4lz/one_of_facebook_projects_migrating_from_clojure/
πολυ ενδιαφερον αυτο
But realistically, I'd pick Erlang (for preemptive scheduling + share nothing + Dialyzer + repl) or Haskell (for strong typing with no hassle) instead.
δεν έχω εικόνα από Erlang, ξέρει κάποιος να εξηγήσει;
Erlang τα πάντα γίνονται με actors χωρίς shared state ακόμα και αν τρέχει σε ένα host
Αυτό είναι το share nothing που λέει
yep
repl φαντάζομαι είναι αυτό που καταλαβαίνουμε όλοι
dialyzer είναι http://erlang.org/doc/man/dialyzer.html
Nice
Αυτή την άποψη περί scaling του codebase την έχω ακούσει πολύ, παράδειγμα από τον Martin Trojer (που έχουμε δουλέψει και μαζί σε μεγάλο clojure codebase)
Δεν νομίζεις ότι είναι λιγο υπερβολική;
Εχοντας δει ruby codebase να κάνει scale γιατί να μην μπορεί Clojure codebase;
Ναι εγώ πιστεύω ότι είναι υπερβολικό
Σίγουρα το maint φορτίο είναι μεγάλο, αλλά δεν είναι μεγάλο σε C++ codebases ή Haskell
Αλλά μάλλον έχει να κάνει με τα hashmaps
Που είναι τα de facto objects της clojure
κοίτα, το επιχειρήμα που γράφει ένας, ότι δλδ εφόσον έγινε scale PHP όλες γίνονται
είναι σχεδόν ανίκητο
Ναι συμφωνώ, απλά είναι και θέμα idiom
Δηλαδή ruby, php, c++ κλπ έχουν idiomatic τρόπο να περιγράφουν τα data που κυκλοφορούν στο σύστημα
Και να κάνουν enforce το shape τους
Μέχρι το spec η clojure δεν είχε κάτι τέτοιο
Αυτό ενοχλεί/ανησυχεί κάποιους
Από την άλλη η επιλογή των hashmaps δεν είναι τυχαία, έχει να κάνει με την λογική του openness. Και αυτός είναι ο λόγος που το spec δεν κάνει enforce το να έχει ένα map ακριβώς κάποιο key set
Κάνει validate τα values που αναφέρονται στο spec αλλά σε αφήνει να βάλεις κι αλλά keys στο map
ειχε το record θα πω εγω
δεν κανει enforce αλλα τουλαχιστον κανει πιο καθαρη την αναγνωση
"Due to Haskell’s strong type system, we had to get rid of our free-form Clojure maps. The end result is a more structured and readable codebase."
An agapiseis to Haskell type system diskola mporeis na kaneis FP se dynamic Lisp family glosses
Ena palio paper tou Wadler (protou sxediasoun tin Haskell) pou anaferete pano sto thema https://www.cs.kent.ac.uk/people/staff/dat/miranda/wadler87.pdf
έχει πλάκα που γυρισαν το sicp σε python 🙂
@palladin έχω έναν φιλο, hardcore common lisper, που αντιπαθεί τις strongly-typed λόγω inflexibility
Η "Αγία τριάδα" του είναι Common Lisp, Smalltalk, Forth :D
εχω την υποψια οτι ειναι και στον ανθρωπο ολο αυτο παντως
profanos uparxei kai auti i sxoli
eimoun megalos opados tis
to "The art of meta-object protocol"
einai apo ta kalitera vivlia pou exo diavasei
@greenonion ναι, μπορεί να είναι σχεδόν νευρολογικό!
alla apo tote tou ekana typed FP
there is no way back
@stathissideris Btw mias kai aneferes gia tin agia triada tou filou sou
Gia tous filous ton types exoume kai emeis tin dikia mas
https://existentialtype.wordpress.com/2011/03/27/the-holy-trinity/