5 ms·
To me the simplest explanation is that Smalltalk is just too concept-heavy for the average developer, just like Lisp is. Yes, C++ could be said to be much more
by praptak 5y ago
To me the simplest explanation is that Smalltalk is just too concept-heavy for the average developer, just like Lisp is.
Yes, C++ could be said to be much more concept-heavy but there is a difference: you can sit and crank out C++ code without first absorbing the huge pile of concepts that make up C++.
For Smalltalk or Lisp you need to first "get" the paradigm.
- kohlerm 5y agoNot sure why you say Smalltalk is concept heavy. There are much less concepts in Smalltalk then in most other languages.
- bitwize 5y agoIt's like "high-concept" in film, which is a fancy way of saying "weird". Those who "get it" get it, but most do not, and that is true of Smalltalk, necessitating the rise of Java.
- praptak 5y agoYes, the conceptual framework is pretty minimal (especially compared to C++). Still you need to "get it" to write even a simple conditional or a loop (I mean sending a block of code to a boolean or a block of code).
- zepto 5y agoHow is that more to ‘get’ than doing the same thing in C++?
- bodhiandphysics 5y agoSmalltalk is a lot more than it’s minimal syntax! The language is unusual without its associated libraries, and they are often extremely concept heavy
- bodhiandpysics1 5y agoI'm not sure this is true. Sure the syntax of the lanuage is simple, but smalltalk is useless with just its syntax (it doesn't even have ifs or loops!). You only have a real smalltalk with a class hierarchy defined, and then suddenly smalltalk becomes uber conceptual. MVC (and its infinite variants), meta-object protocols, object-relational mapping, smalltalk loves is high concept stuff.
- capableweb 5y ago> For Smalltalk or Lisp you need to first "get" the paradigm. Isn't this true for all languages? It's just that usually people are getting experience with Fortran-like languages first, and it's not until later they get exposure to other paradigms. I think it'll be exactly the same with C++ for someone who learned lisp first, the amount of concepts you'd have to learn seems impossible, just in order to read the code.
- rzwitserloot 5y agoI got taught a mix of java, CAML, and LISP. But I 'got' java. It's possible this is related to having dabbled with QBasic on a commodore 64, PowerBasic on an IBM-PC, and some x86 assembler, but my classmates without any experience universally just didn't really 'get' CAML or LISP and I kept catching them at thinking up the answer in an iterative way, and then dreading the 'hard part' of figuring out how to re-imagine that as functional. Even when the exercises were designed specifically to be easy to write and understand in an ML variant. I think the conclusion is that either society / community at large somehow prepares you for 'the paradigm' of iterative languages (I don't mean the IT world, I mean _all_ of society), or it's just easier to get it and start writing basics, vs. functional.
- rjsw 5y agoLisp isn't a functional language, there isn't any need to refactor an iterative solution to a problem.
- Mikeb85 5y agoLisp is definitely a functional language, even if you can compose functions in such a way to look like an imperative language.
- asdfuiopasdf 5y agoThere are functional Lisps, like Clojure or Shen, plenty of them are unopinionated / multiparadigm, like Emacs, Common Lisps
- hollerith 5y agoBy that argument, Rust would never have seen the rate of adoption it has. IMO a more likely cause is (quoting grandparent) the lack of integration with standard versioning systems and the monolithic nature of the Smalltalk image concept.
- unreal37 5y agoAccording to TIBOE, Rust has 0.54% adoption. The 29th most popular programming language. So perhaps there's something to the argument that the difficulty of the language paradigm affects adoption.
- hollerith 5y agoI started to write a list of reasons why no one should use TIOBE for anything, but suffice to say according to same web page you got your figure from, Javascript has 2.66% "adoption": https://www.tiobe.com/tiobe-index/ https://www.tiobe.com/tiobe-index/ "Adoption" by the way is your word and does not appear on that page.
- peterkelly 5y agoAnd assembly language follows JavaScript at 8th place, above SQL and PHP.