4 ms·
Yeah, I currently do. I only work with companies who can ensure I get to write and maintain Clojure/ClojureScript projects, or any other lisp-like languages. J
by capableweb 5y ago
Yeah, I currently do. I only work with companies who can ensure I get to write and maintain Clojure/ClojureScript projects, or any other lisp-like languages.
Just like I'm sure many people would reject jobs that would force you to write assembly code now when we have higher abstraction languages, I reject jobs that are requiring me to work with inferior languages and ecosystems like Rust, Go or JavaScript. It's simply not worth the frustration anymore.
In the beginning of my career I didn't have the flexibility to choose what languages to work with though, but nowadays I am that lucky.
- waffletower 5y agoI haven chosen to work for companies where a significant amount of my development output will, in theory, be in Clojure. I do work on private projects where Clojure is less ideal, and avail myself of the breadth available to the python ecosystem for example, but when there the multitudinous shortcomings do not take long to manifest.
- rastapasta42 5y ago> python ecosystem for example, but when there the multitudinous shortcomings do not take long to manifest. What type of shortcomings? Can you provide some examples? (The question is coming from someone who wrote a Scheme interpreter in the past, but have been using Python for the last 8 years and haven't touched Lisp in long time).
- ballpark 5y agoI also choose to work for companies that use Clojure/Clojurescript. I'm not debating about languages that are better or not, but I get annoyed working in most others.
- Keyframe 5y agoHow are mentioned three inferior to Clojure and Clojurescript? What if you need performance or a bit less of maximalism in the community... Or even a community at all and libraries and support?
- closeparen 5y agoGo and Lisp have polar opposite philosophies; it makes sense that some developers who like one will be eager to avoid the other.
- waffletower 5y agoClojure has a very strong software community, and find it to be near an ideal size. Tooling is in flux at the moment in the community, and so it has begun to show some of the lack of uniformity that is easy to find in larger ecosystems like python, java, and Appleland etc.
- capableweb 5y ago> How are mentioned three inferior to Clojure and Clojurescript? They are not lisps :) > What if you need performance Choose a lisp that gives you performance. Clojure gets you about 80% on the way there, for the rest you can use Common Lisp if you really require performance. I've found that Clojure usually does the trick if you optimize it a bit. > Or even a community at all Clojure does have a community, not sure what you mean? There are forums, chats, Q&A sites, blogs, people on Twitter. > libraries and support? Plenty of battle-tested libraries with stable APIs, and loads of companies that offer Clojure support (not to mention the great public community that can also help with most if not all questions). Have you actually used Clojure in any capacity? These points seems to be coming from someone who haven't actually tried to get involved.
- trenchgun 5y agoDo you ever miss static typing?
- capableweb 5y agoI did, in the beginning. But then I learned better ways of achieving the same guarantees, other methodologies to "prove" (not as in "formal proofs") that my program works as it should. Once Clojure.Spec appeared it was a no-brainer to start using it, and now I want Clojure.Spec in all languages, much rather than static typing.
- c0balt 5y agoIt may be true that for most high level development a high level programming language will suffice but don't just write off any other languges, because you don't like their ecosystem and/ or design. Languges like C++ or Rust are in no way competing with Clojure since their aims and target market are vastly different. Nobody should write a kernel in clojure, but maybe in rust (Redox) or C++ (Linux).
- capableweb 5y agoPlease note I said "Clojure/ClojureScript projects, or any other lisp-like languages". I'm in no way limiting myself to just Clojure, any lisp-like language will do, say Common Lisp if performance is needed, ulisp if it has to run on a microcontroller, Babashka/Fennel/Janet if fast startup time is required and so on. As long as it's s-expressions and interactive development oriented, I'm probably fine with it. But for the last 4-5 years, I have literally not found a single use case where I'm forced to use C++ or Rust since multiple other (lisp-like) languages has the same target market and the ergonomics are just so much better.
- cjaybo 5y ago> I have literally not found a single use case where I'm forced to use C++ or Rust I use C++ to write realtime audio processing applications, especially DAW plug-ins. This is hardly C++'s primary market, but AFAIK there are no lisp-like langauges that can compete with C++ here. I'd be happy to learn something new if this isn't the case!
- capableweb 5y agoCommon Lisp performance can be about the same as C++, so performance considerations won't stop you there at least. Common. You can also call C and C++ functions from Common Lisp, so the ecosystem shouldn't stop you either. It would help if you outlined what's missing from for example Common Lisp in order for it to compete with C++, then maybe I'll be able to give more helpful suggestions that will help you.
- low_common 5y agoHow is Go an inferior language? You took some crazy pills this morning buddy.
- capableweb 5y agoI guess taste is like assholes, everyone has one :) Go is inferior (to me) because it doesn't have s-expressions, and it doesn't offer interactive development (who in the world wants to re-compile/re-run a whole program/tests on each change?). Once you've got the taste for interactive development it's really hard to go back to anything else. Ask any Smalltalk developer what they think of other languages.
- igouy 5y agoTo quote out of context — "… historically focused more on creative and didactic experimentation than software engineering and industrial use…". "A Critical Analysis of String APIs: the Case of Pharo" https://hal.inria.fr/hal-01651250/document https://hal.inria.fr/hal-01651250/document ---- For CRUD stuff, PHP & Notepad will probably be OK. For other stuff, local type inference does make a difference. So does the widespread availability of free-as-in-beer source code libraries.
- eointierney 5y agoWhere are we at with the "language hierarchy" at the moment? It's been a while since I've seen this game played. So my move. 1. Common Lisp (well obviously) 2. Racket (gotta make some noise) 3. Haskell (controversial, I know) 4. Rust (trendy and deservedly) 5. APL (terseness) 6. Prolog (made me think differently) 7. Fortran (come a long way) 8. Forth (brevity) 9. Ada (correctness) 10. Lean (I really like Lean) . . C . . C++ . . Python . Perl . Shell . . ECMAscript Is there anyone I haven't offended? Do let me know :)
- xkriva11 5y agoThe Smalltalk mentioned above :-)
- metagame 5y ago
- preseinger 5y ago> I reject jobs that are requiring me to work with inferior languages and ecosystems like Rust, Go or JavaScript. It's simply not worth the frustration anymore. Interesting! I wasn't aware that there was an objective set of criteria by which programming languages could be measured, and judgments like "inferior" or "superior" delivered. Can you link to it? I'm hugely intrigued and want to learn more.
- capableweb 5y agoNo, what language you like is often not based on objective set of criteria. It's mostly personal preference and emotions involved. For example, the reason I like lisps is because they usually offer interactive development, something most non-lisps don't offer. That makes any non-lisps inferior to me. For the future, you could do with less snark. I never said what I think is objective, and I'm pretty sure most of us know that what languages you like is very much subjective. The sarcasm in your comment just make this thread less interesting, not more.
- preseinger 5y agoOh sorry! The adjective "inferior" usually does not refer to a subjective measure. Usually you'd use "distasteful" or something like that. My mistake.
- kaba0 5y ago> That makes any non-lisps inferior to me You didn’t write that though, so I get how some could misunderstand you here.
- capableweb 5y agoThis thread got started with the question: > Do people decide to go to work for a company based on the language they'll be working in? So it's expected that the responses will be highly subjective, since the subject itself ("which language you prefer to work with?") is very subjective. Then people write about their experiences which is again, subjective. Or, I misunderstood the entire point of this thread, and if so, I'm sorry.
- boppo1 5y agoIs lisp really that good? I'm a novice 'tutorials and duct tape' programmer and I've been eyeing SICP lately as a way to hopefully gain confidence in knowing wtf I'm doing.
- ithrow 5y agoIt won't give you any magic wand if that's what you expect but SICP is highly recommended.
- caleb-allen 5y agoThe heart of it is that you can manipulate the AST as you use it - the structure of the language is itself data which can be acted upon. It makes for good metaprogramming which some people really like.
- vindarel 5y agoIt's way better than Python (type warnings, speed, expressivity, stability, ease of deployment…). You won't build a web app as fast though. But if you plan to build a software that lasts and is easy to maintain, I'd recommend to give it a try.