+ 1
High level or high complexity: In what direction do you think programming languages are going ?
I see an increasing use of symbols rather than words, expressions that need to be deciphered, cryptographic command lines, and unnecessarily exotic syntaxes. Instead of facilitating learning, languages become increasingly more complex , challenging and thus require extra brain effort while the focus should be to use all the capacity for concentration and creativity at the service of programming logic, and not having to memorize an infinity of symbols and rules.
6 Réponses
+ 3
Do you have examples for the tendency you see? I find golang and rust relatively readable, to name some counterexamples.
+ 2
Well, PHP is silly, I give you that. C and Java are ancient, so this would rather help to show that languages are becoming more readable over time.
And where is your problem with lambdas and decorators in Python? They handle lambdas exactly the same way any other language support functional programming does and the decorator syntax looks like Java's.
+ 1
In PHP, global variable declarations is inside of functions. Why ? What is the gain with this unclear rule ?
Python is for me the champion of exotic sintax with its decorators and lambdas.
Java and C uses && || symbols instead of AND OR words.
My question is about a concept: the perfect language must be simple, clear, clean, obvious, intuitive, explicity and take no interpreter work to read the code. As more near of natural language, more high level the programming language will be.
+ 1
There is no problem. In my opinion some exotic sintaxes could be easy replaced by a commom function with commom parameters then will be more clear and intuitive to learn and read.
+ 1
Look this example in Java Android Studio
public class Example extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage(R.string.positive)
.setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// do something
} })
.setNegativeButton(R.string.negative, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// do other thing
}
});
// Create the AlertDialog object and return it
return builder.create();
}
}
what a mess !!!
instead of this piece of code that not work without other codes, must be a simple function call like this:
basicAlert( style , "title of alert" , "message" , "Okl" ) ;
or
basicAlert( style , "title of alert" , "message" , "Yes" , "Nol") ;
or
basicAlert( style , "title of alert" , "message" , "Yes" , "Nol", "Cancel") ;
this is real high level programming that I'm talking about.
why we must create a lot of code to do simple tasks ?
0
I think they are going onto both directions parallelly. As the things are becoming more complex, the code_men are trying hard to make it as simple as possible. Just think of Python and Golang. Both are targeting high level and high complexity. One is for beginners making easy_peasy to get along with softcore programming while facilitating high level functionality. whereas the other also making hardcore stuff on the backend much less fuzzy.