clojure-greece 2017-05-03

πολυ ενδιαφερον αυτο

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 που λέει

repl φαντάζομαι είναι αυτό που καταλαβαίνουμε όλοι

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