3 ms·
Functional Programming In Industry
"Putting my own experiences aside for the now, the focus of this post is functional programming in industry. As an outsider with an interest in the community I often wonder why it is so small and how the situation can be improved. Everyone keeps going on about how beneficial functional programming is over imperative programming: faster development, shorter code, less bug prone and easier to test to name just a few."
- yters 19y agoAnother thing that could help are functional -> industrial language translators, such as Kawa. At least in this way the programmers can use FPLs in a normal job setting. If they can show increased productivity, this will move the market towards FP. Style is probably still a problem in this case. Can style be automated? I.e. can FP code be translated into correctly formatted industrial code?
- brlewis 19y agoKawa does not translate functional languages into Java; it compiles them directly to JVM bytecodes. There is never any "industrial language" to style. Incidentally, the political issue with FP is not demonstrating productivity, it's demonstrating a low level of organizational risk, i.e. finding someone to take over when a functional programmer leaves.
- yters 19y agoI haven't research the conversion process carefully, but from what I know it converts the code into class files, which can be reverse engineered into java files. Tedious and it wouldn't produce very readable code, though, so not really a solution. Anyways, your second statement shows you missed my point. If there are translators as I described then any average java programmer can take over the functional programmers job without having to know functional programming.
- brlewis 19y agoIn the rare times when Lisp and other functional languages are used in industry, it's usually to address a difficult or poorly-understood problem, since those languages tend to be associated with research. It's not surprising that it would be hard to get a programmer up to speed on such things. My employer is looking for someone who would enjoy doing Schemey work in a Java environment, solving not-so-difficult problems. It wasn't hard to find someone last time around, and I don't think it will be hard this time around once we fix the job description, which is poorly-written and factually incorrect.