Will Computers write their own program code ?
-
Tuesday, March 27, 2012 9:52 PM
Hello Experts,
Just a bit curious about future technology.
As in today's world we have got familiar with Artificial Intillegence concept, and many program IDE's features like intelli-sense, auto code completion, code-grammar checking. So on basis of this. .would it be possible for computers, to write their own program code.
From punching cards to assembly language, from assembly language to current dominant programming languages, it is clear that code writing is becoming easier (or comfortable) day by day.
So is that day far away, when we will just order computer/robots in conversational english(or in other languages) and they would write code for themselves and behave in similar way.
With Regards : Ajay Check
- Changed Type Ajay Check Wednesday, March 28, 2012 8:01 PM
All Replies
-
Tuesday, March 27, 2012 10:07 PM
On 3/27/2012 5:52 PM, Ajay Check wrote:
Just a bit curious about future technology.
As in today's world we have got familiar with Artificial Intillegence
concept, and many program IDE's features like intelli-sense, auto
code completion, code-grammar checking. So on basis of this. .would
it be possible for computers, to write their own program code.I, for one, am still waiting for my flying car. Meanwhile, I feel pretty comfortable about my job security.
Igor Tandetnik
-
Tuesday, March 27, 2012 10:13 PM>it is clear that code writing is becoming easier
>(or comfortable) day by day.
Really? Do you think learning how to program in
C++ or with the Windows SDK/API is easier than
learning how to program with COBOL or FORTRAN
on a mainframe was 30 years ago? Or easier than
using GW-BASIC under DOS on an XT was 20 years
ago?
- Wayne -
Wednesday, March 28, 2012 4:25 AMWayneAKing wrote:>>Really? Do you think learning how to program in>C++ or with the Windows SDK/API is easier than>learning how to program with COBOL or FORTRAN>on a mainframe was 30 years ago? Or easier than>using GW-BASIC under DOS on an XT was 20 years>ago?Absolutely, yes. That's provably true -- there are studies that show it.But, you have to compare apples to apples. That is, a given task X iseasier to program in a modern language like C# or Python than it is inCOBOL or FORTRAN.It just so happens that the tasks we were solving in COBOL and FORTRAN 30years ago, or GW-BASIC 20 years ago, were dramatically simpler than thetasks we are solving today.--Tim Roberts, timr@probo.comProvidenza & Boekelheide, Inc.
Tim Roberts, VC++ MVP Providenza & Boekelheide, Inc. -
Wednesday, March 28, 2012 5:13 AMThe sheer bulk and scope of languages such as C++
and the Windows SDK/API make the learning curve far
longer than for languages such as COBOL or FORTRAN.
Even C was and still is less complex and comprehensive
than C++. There is far more to learn when programming
today, and with that complexity and scope comes increased
difficulty to achieve mastery - if only by virtue of the
magnitude of the sheer volume of material that has to
be learned.
>the tasks we were solving in COBOL and FORTRAN 30 years ago,
>or GW-BASIC 20 years ago, were dramatically simpler than the
>tasks we are solving today.
It's not the tasks that I'm comparing, but the relative
scope and complexity of the languages. Granted, the added
functionality and features of languages such as C++ can
make programming a given task easier than with some other
languages. But one must learn these features - that they
exist and how to use them correctly - before the benefits
can be realized. That's not always "easier", as witness
the confusion and endless flood of questions from befuddled
programmers in forums such as these about language-specific
issues.
I disagree with the assertion that "code writing is becoming
easier ... day by day." It is becoming increasingly more
complex and consequently proportionately more difficult.
However, the available tools to assuage that difficulty
are becoming progressively more sophisticated.
- Wayne -
Wednesday, March 28, 2012 1:48 PM
Your Question is not clear what you mean by computer will write their own program . Actually had worked on a new language name as my basic in that we provide UI to develop code for us. Instead of you write code the machine will do it for you . i.e if you want to implement a class select class from menu option and it will implement a class for you then select variable and function type inside the class and once you are done run your app . As we was taking care of everything so there was no parser involved which basically increase the speed to .But in last it's a machine and it need input to do things so it can as much as you want .
Thanks
Rupesh Shukla
- Edited by Pintu ShuklaMicrosoft Community Contributor Wednesday, March 28, 2012 9:14 PM
-
Wednesday, March 28, 2012 3:11 PM
-
Wednesday, March 28, 2012 3:12 PM
Knock on wood, Igor. :)
-- pa
- Edited by Pavel A Wednesday, March 28, 2012 3:13 PM
-
Wednesday, March 28, 2012 7:52 PM
@ WayneAKing , + Tim Roberts + Pintu Shukla
Actually I got this idea, while playing chess on computer.
You can imagine how complex and dynamic game, chess is. But even for that a program has been written. Accepted, it is not 100 % complete. But it still does, some part of thinking / calculating. Or is it Logic . . . .induced by Humans.
So, in similar way would not be it possible for a computer to write code for particular task, when we have all functions library, IDK's etc with us. For eg. If task related to time has to be coded, than it will look in functions library for all time related functions and will use them as per task.
I somehow still believe write computer code is getting easier day by day. Previously, a programmer had to type all code manually but now, we just need to select right button and code would be written for you. May be current technology is not so advanced, in order to make us believe that this can be achieved but the pace at which technology is running, I have little doubt for this curiosity.
With regards and bit curiosity : Ajay Check
-
Wednesday, March 28, 2012 8:16 PM
On 3/28/2012 3:52 PM, Ajay Check wrote:
@ WayneAKing<http://social.msdn.microsoft.com/profile/wayneaking/?ws=usercard-mini> , + Tim Roberts<http://social.msdn.microsoft.com/profile/tim%20roberts/?ws=usercard-mini> + Pintu Shukla<http://social.msdn.microsoft.com/profile/pintu%20shukla/?ws=usercard-mini>
Actually I got this idea, while playing chess on computer.
You can imagine how complex and dynamic game, chess is.Chess is actually a simple game, with full information. It has a finite number of positions: it is possible, in principle, to calculate the consequences of every move all the way to terminal positions. The only thing that makes chess interesting is its combinatorial complexity - the sheer number of possible positions. The break-through in chess-playing programs happened when computers became powerful enough to perform brute-force analysis N moves ahead, for sufficiently large N.
Human players, of course, can't do brute-force analysis, and have to resort to heuristics.
So, in similar way would not be it possible for a computer to write
code for particular taskI think you are looking for this:
http://en.wikipedia.org/wiki/Automated_reasoning
I somehow still believe write computer code is getting easier day by
day. Previously, a programmer had to type all code manually but now,
we just need to select right button and code would be written for
you.Really? There's a finite number of buttons - are you saying that, by clicking all possible combinations of those buttons, you are going to generate all programs anyone would ever need? I wonder why my employer still wants to pay my salary - looks like I'm just wasting my time and his money.
Igor Tandetnik
-
Wednesday, March 28, 2012 9:13 PM
- Edited by Pavel A Wednesday, March 28, 2012 9:13 PM
-
Wednesday, March 28, 2012 9:29 PM
Hi, Igor Tandetnik
Thanks for link : http://en.wikipedia.org/wiki/Automated_reasoning
So, why not use/develop Automated Reasoning for writing a program/or algorithm in addition to just proving theorems.
May be in future. . . .
Hi, Reader . . .
I am not biased on whether this thing will happen in future or not .
If anyone thinks this is possible or not possible. . please . .explain with points.
Is programming get easier day by day : still thinking positively . why ?
Once a proper algorithm has been made then who is hard coding all the code now-days , many IDK's support drag and drop feature (Dreamweaver just for eg.), click button ( Visual basic / Visual C++ just for eg.) and you can also introduce many other features using plugins.
Programming languages are also evolving, from punch cards to 4th Generation languages. Various programming approaches have been developed after early linear programming.
With Regards : Ajay Check
-
Wednesday, March 28, 2012 10:35 PM>But it still does, some part of thinking / calculating.
>Or is it Logic . . . .
The operative term is "Artificial Intelligence",
which remains a largely elusive goal. (Perhaps
due in part to the fact that even in the realm
of human activity behavioral scientists are not
all in agreement as to *exactly* how to define
"intelligence" or how to measure it.)
>Previously, a programmer had to type all code manually
>but now, we just need to select right button and code
>would be written for you
It depends on whether or not one is using a Framework,
or a 4th Generation Language. But if one is doing "real"
programming - using a 3rd GL language for example - the
tasks still require the application of human logic and
a comprehensive knowledge of the tools, language(s).
algorithms, etc. The facility to generate programs from
a specification of logical requirements is nothing new.
We had code generating programs driven by decision tables
decades ago. In many cases they obviated the need for a
programmer - the systems analyst could fill in a decision
table, specify the actions to be taken, and let the
software generate the code. Report generators were also
common place - I recall the Regent language on the
Univac 1050, and of course the ubiquitous RPG from IBM
(later adopted by Univac/Unisys on their 9000 Series),
etc. Numerical Control of machinery has also been
around for decades. We also had ALGOL decades ago.
The problem with all such "automated" programming is
that quite often the end user wants something which
is "outside the box". That still requires human
intervention in the coding process, and probably
always will.
>Programming languages are also evolving, from punch cards
>to 4th Generation languages.
How are those two related in any way? The former is simply
the medium on which program code was transcribed into
machine-readable form. Whether the Hollerith code
represented 1-GL, 2-GL, 3-GL, etc, program code or
data is independent of the medium itself.
- Wayne -
Thursday, March 29, 2012 12:46 PM
>The problem with all such "automated" programming is
>that quite often the end user wants something which
>is "outside the box". That still requires human
>intervention in the coding process, and probably
>always will.Hmmm . . .Now I am realizing fantasy and reality part of this discussion . . .
Thanks for your insight : Wayne
But, is there any research ongoing in this field, or they have been stopped, due to above mentioned hurdles.
With regards : Ajay Check
- Edited by Ajay Check Thursday, March 29, 2012 12:50 PM adding info
-
Thursday, March 29, 2012 2:44 PM
Hi
Some yeares ago, I was thinking to apply to a reputable university for a PHd course researching into AI system possibly being developped to produce what we call a 'thinking machine' remotely. I had searched and searched many Artifical Intelligence books and journals to get me where I should be in that diredction. After months' searching, I had given up. The current AI is in its infancy and showed no promise to get us to that holy grail. Personally I doubt that a thinking machine is possible. In my opinion, hardwares should change, software including OSs should change, and etc. It is just a massive job which requires revolutions in computer science, not one buut dozens of them!!
Best regards
Chong
-
Sunday, April 01, 2012 9:02 PM
In my opinion, hardwares should change, software including OSs should change, and etc. It is just a massive job which requires revolutions in computer science, not one buut dozens of them!
Hi, chong.
You said right, and practical.
This kind of thing would surely require new hardware and new software . . . .and of course revolution.
With regards : Ajay Check

