Is there such thing as a good multi-paradigm language?
Name:
Anonymous2018-01-25 7:56
I'm not a man blindly devoted to a single paradigm. I understand the advantages of functional, but I don't despise procedural, and if it makes things easier I'll even do object oriented. actors, relations, flows and logic are not paradigms I use often, but they can prove invaluable when the need arises. typefaggotry or dynamic typing? I can do both.
here's a problem though: most of the supposedly multi-paradigm languages clearly suffer from paradigm favoritism, and something will always get the shaft. most lithps can do anything, but what they do well is meta and functional (inb4 typefags claiming it's not teh real functional). OCaml and derivatives are clearly functional-first, and doing OOP in them feels kinda wrong. and as much as I enjoy FIOC (I know, heresy), its unbelievably half-baked when it comes to functional and concurrent (and even its OOP could be better: implicit self would make shit less tedious). I know, there's always Common Lisp. but Common Lisp is an overcomplicated mess (plus, it's Lisp-2 which sucks).
is it the inevitable fate of the multi-paradigm? either half-baking half of the things or making an incomprehensible, chaotic and over-engineered meta-language? is it possible to avoid those two pitfalls, or does it only lead to falling into both at the same time like Sepples did?
>>2 this is the worst kind of bait. you should be ashamed of yourself
Name:
Anonymous2018-01-25 8:54
Common Lisp. overcomplicate my anus.
Name:
Anonymous2018-01-25 9:17
>>2 Perl and PHP OO is all kind of aids it makes code look even worse
Name:
Anonymous2018-01-25 9:42
>>5 Perl and PHP are generally bad as multi-paradigm languages because they were designed for performing simple tasks and anything more complex was added by accretion, without much though given. other scripting-first languages like Tcl, Python or even Javashit managed to handle it much better, although they half-assed some of their paradigms too.
Name:
Anonymous2018-01-25 10:12
anyone here knows Rebol or Red? from the look of it, they seem to be nice meta-focused multi-paradigm languages, but so do many other languages before you experience the ugliness hiding under the elegant facade.
Name:
Anonymous2018-01-25 11:14
Good OOP requires the language to be designed around it, like in Smalltalk and Ruby. Both of those sort of have functions, but they're much more awkward than methods for all but passing them as arguments to methods.
Name:
Anonymous2018-01-25 13:44
Maybe PHP?
Name:
Anonymous2018-01-25 17:02
Scheme
Name:
Anonymous2018-01-25 17:03
How about PHP?
Name:
Anonymous2018-01-25 17:44
Hw 'bout ur mom?
Name:
Anonymous2018-01-25 17:52
Hm, maybe PHP is a good multi-paradigm language? PHP sounds like a good candidate, I use it to write web sights and also write the fibs program (desktop x68).
Name:
Anonymous2018-01-25 18:58
Lisp-1 versus Lisp-2 is such a retarded thing to obsess about. Go on, >>1-san, tell me where the namespace touched you. What did you want to do that Lisp-2 prevented? Nothing, it absolutely doesn't matter, but schemefags love to complain about it as if that made their language more useful.
>>18 Standards are for people writing compilers in their basements. Irrelevant.
Name:
Anonymous2018-01-26 10:01
>>19 standards are a comprehensive guide to a language. if you don't know them, can you really say that you know a language? of course you can limit yourself to a small subset of the language (like using Common Lisp as if it was elisp, or writing C++ as if it was just C with classes), but it doesn't change the fact that the language itself is overcomplicated. your subset isn't, but have fun cooperating with someone whose chosen subset is slightly different than yours
Name:
Anonymous2018-01-26 10:12
>>18 Well no shit, it's big. Would you prefer a language like Scheme where you have to reimplement every basic thing in every program you write? That's just offloading the complexity onto the user, C-style. If it's in the base language it can be done right, once. What exactly is overcomplicated?
>>20 I don't care about knowing a language through rote memorization of its standard specification. I will learn the minimum I need to know to get things done. I'm certain that I could be far more effective by investing the time to study this but I feel I have better things to do with my time - such as delivering my software as early as possible instead of faffing around studying language specs. This is the reason why I like Scheme.
>>32 it does look like a fun language to use. I'm currently considering either learning it and continuing on my dynamic lithpy path or learning some ML derivative (OCaml? F#?) and becoming a typefag
Name:
Anonymous2018-01-29 8:16
>>34 Clojure is absolute garbage. There are some nice things you can do with it, but once you step out of the scope of the fancy homepage demos, you get acquainted with the fucking Java monstrosity hiding below it. It's somehow less usable than plain Java. Every error is cryptic. It's the dumbest compiler I've ever seen. You get stack traces that go straight to some internal JVM code. The documentation is garbage. It's easier to just look up the implememtation code on github than try to understand Rich Hickey's ramblings. Also, the "standard" way of doing anything nontrivial is always to do Java interop.
It's actually nice as an alternative syntax for Java. Macros at least were done right. If you have to write some small Java program and are very familiar with the Java standard libraries, use Clojure. If you want Lisp, use Lisp.
Name:
Anonymous2018-01-29 8:18
Also if you look up Clojure programmers and book authors, a lot of them are literal homosexuals, trannies, and women with blue hair. I don't know why, but it's not a good sign.
Name:
Anonymous2018-01-29 9:30
>>35 that's disappointing. I kinda like Hy which wants to be a Lisp on Python VM but is more like a lithpy Python ASTs, but given all the hype I expected more from Clojure. still, it's probably better than writing Java (even after improvements in Java 8/9).
what would be a good (but also usable in practice) language to learn provided I'm not convinced that becoming a typefag is a good thing?
>>36 I don't give a shit tbh. I don't like SJWs but I'm also not an autistic /pol/ro so I couldn't care less about private lives of people who use the language, as long as they're not forcing their CoCs into my anus. the bigger red flag for me is that there's recently been a lot of focus on compiling Clojure to Javashit, but then again there's an overlap between frontend webshits and SJWs.
>>37 Both SML and OCaml are very "usable in practice", though SML is mostly just used in universities for research. OCaml sometimes is described as a more pragmatic version of SML.
Multi-paradigm is a buzzword used by people who want to make their language look more sophisticated than it is. Sepples is certainly ``multi-paradigm'', but does no paradigm correctly, so what does this buy you? Every stupid scripting language like FIOC that has shitty OO but allows you to write global functions is ``multi-paradigm'' because wow, it is both procedural and object-oriented!!!!\(\int^\infty_0\frac{x^{26} e^{-x/\pi}}{\Gamma(27)\pi^{27}}\)
I dare you to find a more useless term in programming.
Name:
Anonymous2018-01-30 18:45
>>46 compellingly aggregated premier paradigms and compellingly disintermediate future-proof methods of empowerment that provide dynamically brand top-line deliverables utilizing appropriately integrate user-centric communities with progressively cloudify performance based resources to provide fungibly parallel task worldwide turnkey e-services