> -----Original Message----- > Date: Fri, 02 Mar 2007 14:54:04 -0800 > From: Bob Gailer <[EMAIL PROTECTED]> > Subject: Re: [Tutor] forth > To: Hilton Garcia Fernandes <[EMAIL PROTECTED]> > Cc: tutor@python.org > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > Hilton Garcia Fernandes wrote: > > in python: > > > > print "Hello world!" > > > > 21 bytes. > > > True, but the forth program is (as I read it) more equivalent to: > > def helloWorld(): > print "Hello World!" > > although is says 'resulting in a [sic] executable". Not sure what that > means, unless the obvious - an .exe file which when run displays "Hello > World!". In that case 263 bytes is remarkable. > > all the best, > > hilton > > > > Em Sexta 02 Mar?o 2007 16:48, Kirk Bailey escreveu: > > > >> Hello world > >> > >> : helloWorld ."Hello World!; > >> > >> that's it. > >> > >> HelloWorld is now part of the language. Now if your language instance > >> lets you compile it down, it will include all functions to create that > >> function, and leave all others out, resulting in a executable. Mine > came > >> in at 263 bytes. > >> > >> Microsoft C came in at 47 K. > >> > >> to add 2+ 2: > >> > >> 2 > >> 2 > >> + > >> . > >> > >> As it uses Reverse Polish Notation and is stack oriented, doing math is > >> rather intresting, different, and novel. It's a novel language. VERY > >> good for controllers giving you maximum program in a small device such > >> as your usuall PIC chip. Really SHINES in this venue. > >> > >> Here's a link to wikipedia: > >> http://en.wikipedia.org/wiki/Forth_(programming_language) > >> > >> But this is python list, so enough of comparitive languages. > >> > > > > -- > Bob Gailer > 510-978-4454
Okay. Here's my "Hello World" script. <CONSOLE> J:\ >dir helloworld.py Volume in drive J is EUGSRV340 Volume Serial Number is 0435-C18F Directory of J:\ 03/02/2007 03:20 PM 43 helloworld.py 1 File(s) 43 bytes 0 Dir(s) 23,540,051,968 bytes free J:\ >type helloworld.py #!/usr/bin/python2.3 print "Hello World" J:\ >helloworld.py Hello World J:\ > </CONSOLE> This script will run on a Windows XP box with the Python interpreter installed. At 43 bytes, it's not too bad. Running on a box without Python is a different story. I can make a .exe file using py2exe: <CONSOLE> J:\ >type setup.py # setup.py from distutils.core import setup import py2exe setup( zipfile=None, # append zip-archive to the executable. options = {"py2exe": {"compressed": 1, "optimize": 2, "ascii": 1, # to make a smaller executable, # don't include the encodings "packages": ["xml.sax.drivers", "xml.sax.drivers2",], } }, console=["helloworld.py"] ) J:\ >python setup.py py2exe <<py2exe output snipped>> J:\ >cd dist J:\dist >dir *.exe Volume in drive J is EUGSRV340 Volume Serial Number is 0435-C18F Directory of J:\dist 03/02/2007 03:39 PM 493,826 helloworld.exe 05/11/2005 07:03 PM 16,384 w9xpopen.exe 2 File(s) 510,210 bytes 0 Dir(s) 23,504,711,680 bytes free J:\dist >helloworld Hello World J:\dist > </CONSOLE> I'm a novice at py2exe. There are probably ways to tweak the setup file to make the .exe file smaller. I wonder if Kirk's 263 byte Forth program is self-contained? Barry [EMAIL PROTECTED] 541-302-1107 ________________________ We who cut mere stones must always be envisioning cathedrals. -Quarry worker's creed _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor