3 ms·
Too low level and lacks the power to cleanly model the business domain.
by eweise 3y ago
Too low level and lacks the power to cleanly model the business domain.
- closeparen 3y agoGo has pretty powerful composition, reuse, higher-order functions etc. for dealing with byte arrays and streams. Not so much for business domain entities.
- dharmab 3y ago"Too low level" "lacks the power" - I don't understand what this means. What are things that are hard to do in Go business applications that other languages do better?
- rowls66 3y agoHere is an example. Go let’s structs be passed by value or by reference. The programmer needs to decide, and that adds complexity that is largely irrelevant for modeling complex business logic. Java does not provide a choice, which keeps it simple.
- Cthulhu_ 3y agoSimple, but with an inherent performance issue and GC load; note also that Java's Valhalla project adds value types with more stack based semantics, so there too you as a developer get a choice.
- za3faran 3y agoIt lacks modeling capability that you'd find even in languages like Java and C#. Enums, records, pattern matching, switch expressions, and yes even inheritance where it makes sense.
- deleted 3y ago[deleted]
- shakow 3y ago> What are things that are hard to do in Go business applications that other languages do better? Streams, meta-programming, enums, ‶modern″ switches, generators, portable types in CGo, streamlined error handling, safer concurrency primitives, nil, partial struct initialization, ...
- kaba0 3y agoLacks expressivity is likely what parent meant.