|
Forogar wrote: "Go, Forth and Javascript" Why does my brain read that as "Go yourself"?
Software Zen: delete this;
|
|
|
|
|
Actually, Forth did what it was designed for reasonably well.
Unlike MUMPS, which was developed by (hold your breath) doctors! And the VA STILL uses it. One of the only 'languages' that allowed you write a complete program in a string variable (using user input) and execute it immediately. One nice thing was there were only 25 reserved words, each one starting with a different letter (Z was for anything that did not fit) and a program was allowed use just the first letter for the reserved word.
A human being should be able to change a diaper, plan an invasion, butcher a hog, navigate a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects! - Lazarus Long
|
|
|
|
|
MUMPS is an old, procedural language and I was not thrilled to have to learn it in 2001. However, the database Cache is BLAZING fast and works very well for storing Medical data. Fortunately, I no longer have to code MUMPS, but I still respect the speed.
|
|
|
|
|
Forth was supposed to be a fourth generation programming language but the computer that it was developed on would only allow 5 character file names.
|
|
|
|
|
I did a large project in Forth back in the '80s. Never again.
Forth is a write only language
|
|
|
|
|
Not if you do proper decomposition and give your words readable names. I worked in forth for many years and my old code is still very readable today. Also, good commenting helps!
|
|
|
|
|
I've heard the "write-only" complaint about Perl and APL, too ...
I've seen horrible Perl; but also have seen huge Perl apps that were a cakewalk to understand.
APL worked very well at giving you the whole algorithm in a concise picture.
Ask Morgan-Stanley how "K works, for people who are under serious coding pressure.
I'd say it's a matter of developer community and praxis, without which every language can be a bomb.
Language (syntax) requirements never prevent all the bad things you can do.
Check out Linus Torvalds' comments on why not C++, referenced tangentially here (nevermind the flamebait)
medium.com/codeiq/object-oriented-programming...
|
|
|
|
|
1. As matter of fact, OOAD concepts and functional programming are both dated. Lately there's some interest in the features of functional programming, that's true.
2. I like it but I don't fully understand it. That is often I am not able to see how my job would be easier using functional programming.
|
|
|
|
|
CPallini wrote: I like it but I don't fully understand it. Some eggheads pretend to understand it and insist that the benefits outweigh any inconveniences. Never do they say anything about the downsides or, god forbid, admit that they have no clue.
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
I do Functional2 programming. Not only do I write functions but they also function.
Social Media - A platform that makes it easier for the crazies to find each other.
Everyone is born right handed. Only the strongest overcome it.
Fight for left-handed rights and hand equality.
|
|
|
|
|
But do they do the function for which they were designed? There has to be a set procedure, and some method in your madness.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
OriginalGriff wrote: But do they do the function for which they were designed? Hey, give me a break. I'm only one man.
Social Media - A platform that makes it easier for the crazies to find each other.
Everyone is born right handed. Only the strongest overcome it.
Fight for left-handed rights and hand equality.
|
|
|
|
|
Who say things are functioning anyway ?
I'd rather be phishing!
|
|
|
|
|
Functional programming is loved mainly by eggheads, like my boss who has a degree in mathmatics. He also loves VB, so take that as a reference however you like.
Long ago, I was tortured with LITHP and Scheme by egghead professors. Twice. That's enough for the rest of my life and I can easily live with not ever having to see that stuff again. Maybe aliens from Ceti Alpha love it, but I also suspect it's the reason why Ceti Alpha Six exploded.
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
Quote: degree in mathmatics. He also loves VB That's OK. Mathmaticians, Madmaticians can actually love VB. On the other hand, proper Mathematicians can only distaste it.
|
|
|
|
|
So you say that there are several distinct sorts of eggheads?
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
I see you don't like mathematics people.
|
|
|
|
|
Nah, I just don't want to be assimilated and become an egghead myself.
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
I'm sure Star Fleet used Functional Programming and that's why they thought Ceti Alpha Five was Six.
Just thinkin outloud.
Jack of all trades, master of none, though often times better than master of one.
|
|
|
|
|
I'm a Programmer, I use functions in my code all the time. Tada!
- I would love to change the world, but they won’t give me the source code.
|
|
|
|
|
Functional programming preceeded OOP. OOP is (I think) a better idea.
Turbo Pascal started out as a functional language.
Fortran is a fucntional lanugage.
C is a functional language.
Javascript is not functional, but it is a functional language.
Visual Basic was a functional language.
My problem with the sudden interest (by people who don't matter) in functional programming is that everyone thinks OOP should be abandoned, or that functional crap should be injected into the OOP paradigm. These people are, for lack of a better term, retards.
|
|
|
|
|
From Wikipedia:
In computer science, functional programming is a programming paradigm—a style of building the structure and elements of computer programs—that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data. It is a declarative programming paradigm in that programming is done with expressions or declarations instead of statements. Functional code is idempotent: a function's return value depends only on its arguments, so calling a function with the same value for an argument always produces the same result. This is in contrast to imperative programming where, in addition to a function's arguments, global program state can affect a function's resulting value. Eliminating side effects, that is, changes in state that do not depend on the function inputs, can make understanding a program easier, which is one of the key motivations for the development of functional programming.
Fortran and C are not functional programming languages. Having functions does not make a language functional.
And one of the reasons for renewed interest in functional languages is they have certain advantages when trying to parallelize programs.
|
|
|
|
|
Sounds like "static methods" are a step in the "functional" direction then. And enumerators.
The Master said, 'Am I indeed possessed of knowledge? I am not knowing. But if a mean person, who appears quite empty-like, ask anything of me, I set it forth from one end to the other, and exhaust it.'
― Confucian Analects
|
|
|
|
|
From what you wrote, it sounds like the use of deterministic and non-deterministic functions. How does functional programming differ from traditional OOP where the developer knows they are writing a deterministic or non-deterministic function within a class?
|
|
|
|
|
Deterministic function always return the same value from the same input.
That is not the same as a function having no side effects.
|
|
|
|