Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Self-writing program

  1. Aug 30, 2008 #1
    Hey guys,
    Im wondering cant programmers make like a program that can write new programs or add to its own code?

    And can they learn such a program to understand us in plain english instead of all those programming languages?
  2. jcsd
  3. Aug 30, 2008 #2
    they could if they knew how.
  4. Aug 30, 2008 #3
    Realy? I coud use one of those then XD
  5. Aug 30, 2008 #4
    Last edited by a moderator: May 3, 2017
  6. Aug 31, 2008 #5
    Okay so that confirms that its possible right?

    cause id try to write the program im trying to create myself but i dont fully understand anny programming language.

    All i have is python, visual c++ express edition, Notepad ++(if you know what it is.)
    And i dont even know how to use those to create what i am trying to create.
    (Wich woud be a program that can write other programs and edit itself then id only need it to be able to do one thing and that is to like allow it to understand english and make new programs or modify itself the way specified after ordering it to do so.)

    So its kinda to help me build programs cause i have a hard time learning even the most simple language so thats why i need it so it coud like do the realy hard stuff itself.

    Id also get it to like look things up it doesent understand useing i dunno google or sumthing.
  7. Sep 1, 2008 #6
    Well its not very hard (but its not easy!) to make a program that reproduces itself or that adds predefined code to it (from other text files for instance) and things like that. However, it is not yet known how to make a program that intelligently modifies itself or adds its code in some sensible behaviour.
    As for writing in english instead of regular code - some new programming languages have this feature already installed in some way or another. The feature might get very popular or not at all. I havent tried it yet.
  8. Sep 9, 2008 #7
    Visual basic is pretty much already in english. Making it understand words could cause alot of confusion and errors when programming.
  9. Sep 10, 2008 #8


    Staff: Mentor

    This sounds like you might be interested in http://en.wikipedia.org/wiki/Genetic_programming" [Broken].
    If you cannot learn to program a computer in a language designed for the task then you would be even less likely to be able to program a computer in a natural language. Learning a programming language is the easiest part of programming a computer. What is difficult is organizing your thoughts in such a clear and detailed manner that even something as stupid as a computer can perform the task you have in mind. A programming language helps with that because of its simplicity, its rigid grammar, and its limited vocabulary. With all of the richness and nuance of a natural language it would be much more difficult to organize your thoughts to the degree required in programming.
    Last edited by a moderator: May 3, 2017
  10. Sep 10, 2008 #9

    jim mcnamara

    User Avatar

    Staff: Mentor

    This whole idea is not new at all. There were utilities running under VAX/VMS that wrote custom assembler routines (part of USERBASE if you know what that is) on the fly to optimize sorting. This was 1987.
  11. Sep 10, 2008 #10


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    You don't know any programming languages, yet you think you'll be able to create some kind of artificially-intelligent program that not only writes more complicated programs, but also looks things up on Google to better itself? Are you planning on creating a teleporter and warp drive, while you're at it?

    Self-modifying code has been around forever. It's mostly at the fringe of computer science, because it has very few real applications.

    If you don't fully understand a programming language well enough to accomplish your desired task, you're definitely not going to be able to create a program which writes a program to accomplish your desired task. Give it up and focus on becoming a better programmer.

    - Warren
    Last edited by a moderator: Sep 10, 2008
  12. Sep 10, 2008 #11


    User Avatar
    Science Advisor

    Made out of Fruit Loops, of course!

  13. Sep 10, 2008 #12


    User Avatar
    Science Advisor
    Homework Helper

    Hey now, be nice.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook