C C/C++ and libsysinfo Raspberry Pi3 B+

Functional programing in a nutshell, folks. Doing less with more, and with code that's harder to follow. But you shouldn't listen to me. I'm just a dinosaur that likes antiquated, boring, non-functional for loops.

Here's the thing - I'm always open to new stuff. I want new stuff, I want to feel the magic the way I felt it once.
But it doesn't happen. Mainly because the new winds are product and customer centric. Every new language claims to deliver domain solutions with less code, less errors and higher maintainability. But what if I couldn't care less about the domain? I never cared about Alice and Bob as much as I cared about computer, abstract machine itself, its dials and knobs.

Let me demonstrate via a simple example - If I google "functional programming usage" I get this as quoted text directly from google :

It helps us to solve problems effectively in a simpler way. It improves modularity. It allows us to implement lambda calculus in our program to solve complex problems. Some programming languages support nested functions which improve maintainability of the code.

Whenever you work on something on your computer, ask yourself, the current running code on my CPU, that allows me to achieve the end-application functionality I'm looking at on my screen, what has emitted it? You'll quickly realize you're looking at a composition of low-level and OO languages with a miniscule amount of functional code maybe running on the end-user application side.

Let's take a look at the potential web-developer or Java developer working with functional paradigm. When they run their application, their application's runtime is written in C++, over a ecosystem of libraries (APIs) written in C++ and C, connected to a runtime (selfhosted, so C/C++ again), serving as glue for OS facilities written in C with potential minimal C++ support and some assembly, again itself a layer below UEFI which is in C again.

It seems to me the bullshit is standing on the shoulders of giants. Until the giants start implementing this technology it's a mere toy to me. Until I can browse FreeBSD kernel source or Linux kernel source or Windows kernel source and see how functional paradigm allows real work to be performed quoting "solving problems effectively in a simpler way, modularity, complex problems, maintainability of code", yet no large codebase is really based around it.

I am not a systems, low level programmer only. I enjoy writing end-user programs too. I would like to utilize functional programming or any fresh paradigm if and when someone explains to me how it fits my case.
 
It allows us to implement lambda calculus in our program to solve complex problems.

This is the only part of the Google answer that isn't BS spin. I suspect it's easier to write formal proofs of correctness for algorithms implemented in functional languages. Perhaps it's only possible for functional implementations. I don't know because I'm not a computer scientist, and don't care enough about this topic to learn more about it.

I can see how you would want provably correct implementations for things like voting machines, but I question how widely applicable this utility is. Especially since in my experience functional implementations tend to be terse and obscure, and therefore much harder to maintain than their imperative equivalents.
 
A lot of input here. I had a zx spectrum singler computer in my 90s. 5 hours programmed for a circle on the screen. that was magic. Python, Javascript or Kotlin don't make me feel that way. I want that magic back with freebsd and c / c ++. I have no commercial intentions, I just want to do handicrafts. I hope the google translator translated well.
Thanks to everyone for so much information.
 
Snake. A university will have introductory courses for programming. Just go online and look at the text books they require.
I'm not sure about in your area, but often there are other educational institutions to fill the gap between high school and university that likewise offer courses in languages like C. Again, look at the text books offered.

Schools spend a lot of time researching what's best for novice students, so take advantage of that and get one of the textbooks they specify.
:)
 
Back
Top