When I say "freedom" I'm really referring to the most literal sense of the word: lack of restrictions! Not other philosophical meanings(like being provided with the means to do one thing or another)
We can all agree that we need A FEW, strictly NECESSARY restrictions, in order to reduce OBJECTIVE HARM being caused to us. The so-called malum in se deeds, like murder, theft, fraud, physical harm and so on. If we count all these deeds, they're no more than ONE HUNDRED!
The biggest PROBLEM we're facing today in the developed world is the fact that the legislatures and the governments GO FAR BEYOND what's strictly necessary for a functioning society in terms of criminalization and other restrictions! In the US there are somewhere between 25k and 300k criminal laws and statues or civil legislation that can turn into criminal legislation under certain circumstances.
Incarceration is a super-big problem in America, but it's far from being the only one: any conviction even without incarceration, any other kind of judicial restriction, or even mere arrests - all of these infringe on all kinds of liberties and rights, often lead to discrimination and can easily lead to actual incarceration in a variety of totally harmless situations.
Then there's ever increasing surveillance, more and more use of cctvs, more and more collection of data, the governments and certain companies get to know far too much about ordinary citizens - this can and does lead to a lot of harm!
Those in the repressive state institutions like the police, prosecutors, judges, intelligence services, the military - get more and more power and are less and less accountable for their (mis)deeds!
All these things do happen all so called "democratic" countries!
Well, in the case the atomic bombings of Hiroshima and Nagasaki are genocide! The all the Americans(still alive) and American state entities responsible for it must be held accountable
No, that's far from anything related to genocide and Putin is actually right: Russians and Ukrainians(and Belarussians) have the same common root in the Kievan Rus. The idea of Ukraine didn't even exit until about 1700s and the country itself was founded in 1917.
There's no free world. There are just different degrees of totalitarianism. The highest level of totalitarianism is in the country with the highest number of criminal laws - that by definition reduce freedom, and the highest percentage of population in prison. Guess which country is that?
In lots of wanna-be "free" countries, people can no longer live their normal lives because they can get thrown in prison for some of the most absurd reasons - like leaving your children play in the street, insulting someone on facebook, having an open bottle of alcohol in a car - and thousands upon thousands other such fictive, victimless "crimes". In these countries people get indoctrinated that political freedom is the only freedom that's needed but that's colossal lie! Most people don't care about political activism, don't really need such freedoms!
Oh, I thought they'd donate half their incomes for some noble cause like buying electric cars for the poor, buying carbon credits, or something like that...
Repetitions are often a result of changing requirements things that can't (normally) be automated. If you think that enterprises are doing it wrong and you know more than them, you could become rich by showing them the right way of doing things - on one condition: you have to prove what you're claiming. :)
>>Why didn't they hire 2-3 (more expensive) experts instead of 10 juniors? <<
For the same reason they don't hire 2-3 architects instead of one architect and 10 workers to build a small house.
Actually hiring solely "experts" the productivity may be lower because they're used to doing only certain kinds of things.
>>Important to who? I use tools written in functional languages every single day.<<
To the market. There are all kind of servers from web servers to database servers to other kinds of servers. Almost none are made using functional programming. Then, there is lot of software out there, which is made almost exclusively in C/C++, Java & .Net. Haskell & co. are only used in academia and by hobbyists (math people who can't learn proper programming)
There's plenty of concurrency and parallelism out there but there's not a single piece of important software that is written in a functional language. Many people claim many things but when it comes to empirical evidence. it turns out that imperative, stateful programming is still the best choice.
Erlang has some limited and very niche uses in telecom, bua it was replaced even at Ericsson to good degree with c++.
Or, maybe the language is very poorly designed. There are many programming languages. From Basic to LISP to C to Java to Haskell to ... Brainfuck. Some of them are used in the software industry and some are not. There are many claims about many languages: language x is good because [insert some random ramblings], language y is good because [...]
However, no language is adopted by the industry solely based on claims (and btw. I have seen some utterly ridiculous claims made by those who try to promote Haskell.) Every once in a while, some companies try out new languages.
Very few such languages get adopted and as you can see functional languages are almost completely absent from the industry. And there's a very good reason for it: they're simply not suitable for producing professional grade commercial software. If it had been otherwise, someone would have figured it out. The funny thing is that the start-ups that try to use them (usually founded by FP advocates themselves) also fail one after another. But some people never learn. Furthermore, many companies forbid the use of functional style or characteristics implemented in certain imperative languages. The code of good, proper lanaguages for general purpose software engineering, is almost self describing! What is unclear should be sorted out quite easily using the documentation.
Those "professionals who actually know what they are doing" don't seem to exist when it comes to functional languages. The evidence is the very fact there's not a single piece of important commercial software written in such a language.
The question is rather: can such specialists exist? Because I'm afraid they can't exist because the functional approach is fundamentally wrong.
Examples of ambiguity in FP?
What is the following line supposed to mean and what part of it suggest anything about that:
a b c
How is ~ an intuitive replacement for minus? How is (* 5 5) supposed to be as clear as 5 * 5 ?
ps. dynamic typing and type inference are two awfully bad things and either of them can lead to trouble in large programs
A programming language can be created such that it resembles a natural language but it also avoids the ambiguities of that natural language. Anyway, the main idea is that FP languages are way too cryptic and ambiguous, they use too many symbols with multiple meanings which don't make any logical sense at a first glance. If you have to go to great lengths to explain the meaning of a simple symbol, then its use is wrong in a language that is claimed to be general purpose, clear, easy to read and so on. Either that, or the language is not general purpose and/or doesn't have those claimed qualities (clear, etc.) in a general sense.
>>No. The math notation that is used across all branches of mathematics is consistent and unambiguous (the notation of formal logic, naive set theory, etc). <<
Nonsense. Actually, ambiguity starts with basic arithmetic.
Take multiplication for example. We have several kinds of notation for it. Which is inconsistent. In the case of juxtaposition, it's ambiguous because two or more juxtaposed letters don't necessarily imply multiplication. And I'm talking about arithmetic only. Then, ambiguity only builds up. Cross product, Dot product & crap.
>>>Being able to say 'group' instead of 'set with an associative binary operation with identities' is essential <<<
OK, but the word "group" should be used for no other meaning...
>>>The reality is that you are not the target audience of their communication, and they are okay with that. You should be too.<<<
As you can see pretty much anyone is the audience of some math and its inconsistency and ambiguity. It just varies the level and the amount of it.
>>>The weirdest assertion that you made is that high-level programming languages ought to be as close as possible to human languages. The two categories of languages exist to communicate fundamentally and widely different groups of concepts. Words represent categories of analogous concepts, and the relevant categories in human life are nothing like the relevant categories in programming. In Haskell, 'functor', 'applicative functor', and 'monad' are highly relevant categories. They pop up everywhere and can be leveraged with great benefit.<<<
False. Computers and software are mainly used to emulate some real world stuff (objects, actions etc.) and to help people with real world stuff in a more automated way.
They aren't used too much to prove theorems or some other math stuff. And pretty much no one cares about proving the so called "mathematical correctness" of a program - a concept that doesn't even make sense in most cases.
Old misconception among FP advocates, even Dijkstra himself admitted that he was kinda wrong about how computer would evolve and what they'd used for. But the associated misconceptions live on.
A language close to human language also helps avoiding errors. That's why you won't see functional languages in critical systems, but rather languages like Ada which is probably the closest programming language to human language. The claims of clarity of FP languages are pretty much at odds with the evidence the real world provides.
Good luck porting a professional grade tool like Eclipse. :)
But I'm afraid we'd have to wait until tablets have the same specs as current average laptops. Although I guess stuff like HTML and Javascript could be done on current tables.
We can all agree that we need A FEW, strictly NECESSARY restrictions, in order to reduce OBJECTIVE HARM being caused to us. The so-called malum in se deeds, like murder, theft, fraud, physical harm and so on. If we count all these deeds, they're no more than ONE HUNDRED!
The biggest PROBLEM we're facing today in the developed world is the fact that the legislatures and the governments GO FAR BEYOND what's strictly necessary for a functioning society in terms of criminalization and other restrictions! In the US there are somewhere between 25k and 300k criminal laws and statues or civil legislation that can turn into criminal legislation under certain circumstances.
Incarceration is a super-big problem in America, but it's far from being the only one: any conviction even without incarceration, any other kind of judicial restriction, or even mere arrests - all of these infringe on all kinds of liberties and rights, often lead to discrimination and can easily lead to actual incarceration in a variety of totally harmless situations.
Then there's ever increasing surveillance, more and more use of cctvs, more and more collection of data, the governments and certain companies get to know far too much about ordinary citizens - this can and does lead to a lot of harm!
Those in the repressive state institutions like the police, prosecutors, judges, intelligence services, the military - get more and more power and are less and less accountable for their (mis)deeds!
All these things do happen all so called "democratic" countries!