Evolutionary Programming!

Jason Jeffory via Digitalmars-d digitalmars-d at puremagic.com
Tue Jan 5 08:10:21 PST 2016


No, I mean the real kinda of evolution, not algorithmic mimicking!

It seems that many programmers get dissatisfied with the state of 
something and try and branch off and create something that suits 
them. The evolution of programming is the evolution of life in 
some way.

Is it possible that one could develop or modify an existing 
programming language that can adapt in such a way to provide 
maximum unity between programmers?

A language itself, that can adapt grammatically(since people like 
different grammars), be both powerful and simple, and provide all 
that is needed(more or less)?

One could say that binary programming or even punch cards were 
the evolutionary seed of modern languages. That all programming 
languages are essentially part of the evolutionary food chain.

I know many will immediately write off this statement, but I have 
to ask: Is it possible for a single language to capture it all? 
One with a polymorphic grammar(you choose, it's irrelevant) to 
provide those needs(some people just like cobol syntax and other 
people love there brackets). System level, application level? Why 
not both?

People will claim that such a language is infeasible because it 
is too complex! That's an easy argument to make. All languages 
are complex and all the people working on the nearly infinitely 
number of programming languages today could be working as one on 
the perfect language(in effect, that is what they are doing... 
they just don't realize it yet).

What are the properties of the perfect language? To be able to 
create it we have to know them.

Here are a few "laws" that I think it would have to have:

1. Grammar independence - People speak different languages and 
perceive logic through different symbols. It is the nature of 
life and knowledge.

2. Platform independence - Time changes all. A language that is 
specific to one platform will die off when the platform dies. 
When the platform evolve the language must evolve to keep up.


[Note, these laws do not state that an actual implementation 
cannot violate them. Think of them as the "interface" with a real 
living compiler as the "class"]

Any more thoughts?

Think of all the wasted man hours spent on people working 
unfocused on the issue. Surely there are invariant's in a 
programming language(any language, for that matter) that could be 
used to create a language that will unify people. Imagine the 100 
million programmers in the world all working on one language! It 
could happen with the right seed!

But a top down approach to programming(and computers) is 
required. We started from the bottom up because we were 
ignorant(just as writing software started)... will it take 50 
years, 150 years, 10000 years for programming to evolve to a 
state of peace? Where everyone knows the same language, can 
communicate exactly what they want to anyone else, and can solve 
their problems and humanities problems without squabbling over 
brackets, libraries, etc?

Such a programming language would truly be evolutionary(or at 
least revolutionary), right?






More information about the Digitalmars-d mailing list