Re: Do you know of a much simpler way of writing a program that writes a program?

2008-05-03 Thread Aahz
In article <[EMAIL PROTECTED]>,
Jeff  <[EMAIL PROTECTED]> wrote:
>
>Use lisp?

:-)))
-- 
Aahz ([EMAIL PROTECTED])   <*> http://www.pythoncraft.com/

Help a hearing-impaired person: http://rule6.info/hearing.html
--
http://mail.python.org/mailman/listinfo/python-list


Re: Do you know of a much simpler way of writing a program that writes a program?

2008-05-02 Thread Jeff
Use lisp?
--
http://mail.python.org/mailman/listinfo/python-list


Re: Do you know of a much simpler way of writing a program that writes a program?

2008-05-02 Thread George Sakkis
On May 2, 10:40 am, Stefan Behnel <[EMAIL PROTECTED]> wrote:
> mcse jung wrote:
> > Here is asample program that writes a program and then executes it.
> > Do you knowof a much simpler way of writing a program that writes a program?
>
> I'm not quite sure what you are trying to achieve here, but I bet there is a
> simpler way to do it than by generating a script. You might want to look into
> functions.
>
> http://docs.python.org/tut/node6.html#SECTION00660

Seriously, this looks like a DailyWTF entry.

George
--
http://mail.python.org/mailman/listinfo/python-list


Re: Do you know of a much simpler way of writing a program that writes a program?

2008-05-02 Thread Erik Max Francis

mcse jung wrote:

Here is asample program that writes a program and then executes it.  
Do you knowof a much simpler way of writing a program that writes a program?


It looks like you have a program which is more printed text than program 
logic.  In which case, the usual solution is to use a templating system, 
where most of the text is unmodified and you only set out the specific 
areas where you want to insert logic.


EmPy is one:

http://www.alcyone.com/software/empy/

--
Erik Max Francis && [EMAIL PROTECTED] && http://www.alcyone.com/max/
 San Jose, CA, USA && 37 18 N 121 57 W && AIM, Y!M erikmaxfrancis
--
http://mail.python.org/mailman/listinfo/python-list


Re: Do you know of a much simpler way of writing a program that writes a program?

2008-05-02 Thread Stefan Behnel
mcse jung wrote:
> Here is asample program that writes a program and then executes it.  
> Do you knowof a much simpler way of writing a program that writes a program?

I'm not quite sure what you are trying to achieve here, but I bet there is a
simpler way to do it than by generating a script. You might want to look into
functions.

http://docs.python.org/tut/node6.html#SECTION00660

Stefan
--
http://mail.python.org/mailman/listinfo/python-list


Re: Do you know of a much simpler way of writing a program that writes a program?

2008-05-02 Thread Nicola Musatti
On May 2, 3:50 pm, mcse jung <[EMAIL PROTECTED]> wrote:
> Here is asample program that writes a program and then executes it.
> Do you knowof a much simpler way of writing a program that writes a program?

Use a templating engine, such as Cheetah: http://www.cheetahtemplate.org/

Cheers,
Nicola Musatti
--
http://mail.python.org/mailman/listinfo/python-list


Do you know of a much simpler way of writing a program that writes a program?

2008-05-02 Thread mcse jung
Here is asample program that writes a program and then executes it.  
Do you knowof a much simpler way of writing a program that writes a program?
 
"""
-
Name:_writePythonCode.py
Purpose: This script writes Python code and thentransfers control to it.
 
Author:  MCSEJUNG
 
Created: 2008/05/01
RCS-ID:  $Id: _writePythonCode.py $
Copyright:   (c) 2008
Licence: GPL
   This program is free software; you canredistribute it and/or modify
   it under the terms of the GNU General PublicLicense as published by
   the Free Software Foundation; either version2 of the License
   (at your option) any later version.
 
   This program is distributed in the hope thatit will be useful,
   but WITHOUT ANY WARRANTY; without even theimplied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULARPURPOSE.  See the
   GNU General Public License for more details.
 
   You should have received a copy of the GNUGeneral Public License
   along with this program; if not, write tothe Free Software
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
Maintenance:MCSEJUNG 2008/05/01 This script writes Python code and then 
transfers controlto it.
-
"""
__version__= "$Revision:  80101 $"
# $Source$
 
# Rememberto document each paragraph with a purposeful short description
 
#if__name__ == "__main__":
 
#Print thestart time of this process
import time
start =time.localtime(time.time())
year,month, day, hour, minute, second, weekday, yearday, daylight = start
print"Process Started", "%02d:%02d:%02d" % (hour, minute,second)
 
header1 ="""
-
Name:_generatedPython.py
Purpose: This script was built by_writePythonCode.py
 
Author:  MCSEJUNG
 
Created: 2008/05/01
RCS-ID:  $Id: _generatedPython.py $
Copyright:   (c) 2008
Licence: GPL
   This program is free software; you canredistribute it and/or modify
   it under the terms of the GNU General PublicLicense as published by
   the Free Software Foundation; either version2 of the License
   (at your option) any later version.
 
   This program is distributed in the hope thatit will be useful,
   but WITHOUT ANY WARRANTY; without even theimplied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULARPURPOSE.  See the
   GNU General Public License for more details.
 
   You should have received a copy of the GNUGeneral Public License
   along with this program; if not, write tothe Free Software
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
Maintenance:MCSEJUNG 2008/05/01 This script was built by _writePythonCode.py
-
"""
 
header2 ="""
# $Source$
 
# Rememberto document each paragraph with a purposeful short description
 
#if__name__ == "__main__":
 
#Print thestart time of this process
"""
 
filePathName= 'C:\\Python25\\Lib\\_myStuff'
fileInName= '_generatedPython.py'
filegTName= filePathName + '\\' +fileInName
gT =open(filegTName, 'w')
 
gT.write('"""'+ header1 + '"""' + '\n')
gT.write('__version__= "$Revision:  80101 $"'+ '\n')
gT.write('"""'+ header2 + '"""' + '\n')
gT.write('importtime'+'\n')
gT.write('start= time.localtime(time.time())'+'\n')
gT.write('year,month, day, hour, minute, second, weekday, yearday, daylight = 
start'+'\n')
gT.write('print"Generated Process Started", "%02d:%02d:%02d" % (hour,minute, 
second)'+'\n')
#---
gT.write('print"start"'+'\n')
gT.write('fori in [0,4,8,12,16,12,8,12,8,12,16,12,8,4,8,12,16,12,8,4,0]:'+'\n')
gT.write('print "-"*i'+'\n')
gT.write('print"end"'+'\n')
#---
gT.write('#Calculatethe processes duration; format and print the start time, 
stop time, andduration'+'\n')
gT.write('stop= time.localtime(time.time())'+'\n')
gT.write('syear,smonth, sday, shour, sminute, ssecond, sweekday, syearday, 
sdaylight =stop'+'\n')
gT.write(''+'\n')
gT.write('thour   = shour'+'\n')
gT.write('tminute = sminute'+'\n')
gT.write('tsecond= ssecond'+'\n')
gT.write(''+'\n')
gT.write('iftsecond < second:'+'\n')
gT.write('tminute = tminute - 1'+'\n')
gT.write('dursecond = 60 + tsecond - second'+'\n')
gT.write('else:'+'\n')
gT.write('dursecond = tsecond - second'+'\n')
gT.write(''+'\n')
gT.write('iftminute < minute:'+'\n')
gT.write('thour = thour - 1'+'\n')
gT.write('   
durminute = 60 + tminute - minute'+'\n')
gT.write('else:'+'\n')
gT.write('   
durminute = tminute - minute'+'\n')
gT.write(''+'\n')
gT.write('ifthour < hour:'+'\n')
gT.write('xday = 1'+'\n')
gT.write('durhour = hour - thour'+'\n')
gT.write('else:'+'\n')
gT.write('xday = 0'+'\n')
gT.write('durhour = thour - hour'+'\n')
gT.write(''+'\n')
gT.write('ifxday == 0:'+'\n')
gT.write('print "Generated Process Completed--", "start:", "%02d:%02d:%02d" 
% (ho