[IronPython] {Dangerous Content?} RE: is IP for me

Keith J. Farmer kfarmer at thuban.org
Sun Jan 8 20:40:56 CET 2006

re gui:  what I meant is that gtk# is a peer to system.windows.  they are different libraries for achieving the same end, and so can be expected to have different api, namespace, etc.  system.windows is installed with the framework whereas gtk# would be a seperate install.  I don't know how mono's implementing system.windows -- either as its own, or as a wrapper around gtk# or whatnot, but the only way you'll have cross-platform gui is to use the same api on both ends.  there's no magic that will automatically take system.windows calls and transform them into gtk#, or vice-versa.
re ippfp:  asp.net is predicated on a couple things:  declarative page layout (control tree instead of html/code intermix), and centralized knowledge of client capabilities (giving a control the ability to modify its contribution to the output stream based on the client).  ideally, you would be able to take a page that renders in the latest desktop browser, and have it downgrade gracefully to Lynx or WAP.  theoretically, you could make a set of controls that could render as pdf forms just as easily as they render as html or structured text, and the web developer wouldn't have to care.  also, everything's a control, including the page itself, so you can have different page types -- such as a soap endpoint which can inspect itself for methods which are marked with the [WebMethod] attribute, and thereby generate WSDL or execute the operation, depending on the client and request (browser or soap request).


From: users-bounces at lists.ironpython.com on behalf of David Irvine
Sent: Sun 1/8/2006 10:37 AM
To: Discussion of IronPython
Cc: users-ironpython.com at lists.ironpython.com
Subject: Re: [IronPython] {Dangerous Content?} RE: is IP for me

Ah its the outlook attachment (can't remember the name some servers appear to reject it). 

Again many thanks for your answer - one last question honest (I find people can explain loads from a few words as opposed to some web docs). 

When you say 
"""you pick some library (tkinter, wxPython, gtk, etc) and use it.  There *happens* to be a canonical namespace reserved in Microsoft's framework (System.Windows) which is in the process of being implemented in Mono.  
Does that mean under a .net platform say mono I could create a gtk app and it would simply work on an MS platform using .net native ? This would be great indeed. 


I watch a system called ippfp http://ippfp.sourceforge.net/  which interestingly is a php system which allows your code to run in curses (text), pdf ??, xhtml (web) and gtk. It's early days yet but I did contemplate this as a choice but as said previously php is mostly for web processing but this is an interesting project - imagine if there were a system that allowed a write one run on any platform with or without a window manager.

Anyway many thanks again for your very concise and very helpful answer.


On Sun, 2006-01-08 at 09:38 -0800, Keith J. Farmer wrote: 

	Your web server is hyper-sensitive -- what you're seeing is evidence that I am using Outlook Web Access.  I don't know the details, but historically OWA has always added a small attachment.  This is a known oddity.
	The best way to discover what .NET has to offer is to sit down and use it exclusively for a couple months.  There's just so much goodness and extensibility baked in that it's taking, literally, years to realize some of the implications.
	Web apps:  You haven't used ASP.NET, and you also confuse language with platform.  You could do ASP.NET (platform) using PHP (language) to get both the benefits of a language you obviously enjoy with a platform that I, personally, think kicks the snot out of the ASP/JSP/CGI-style web development.  Seriously, try it -- it's amazing what you can do when you model a web page as a control tree you can fire events on.
	Regarding GUI under Mono, you must realize that it's no different from GUI in Python, Java, or C++ -- you pick some library (tkinter, wxPython, gtk, etc) and use it.  There *happens* to be a canonical namespace reserved in Microsoft's framework (System.Windows) which is in the process of being implemented in Mono.  You don't have to use it -- you could just as well use gtk# or the .NET wxWindows binding -- but you'd have to package whatever library you choose and ensure it was installed on the destination machine.
	This is true no matter which path you choose, but once Mono has full parity in the System.Windows namespace, you can assume that library as a pre-installed constant.
	Reverse engineering:  every platform has that problem.  You do, after all, have to be able to run it.
	From: David Irvine on behalf of David Irvine
	Sent: Sun 1/8/2006 5:19 AM
	To: Keith J. Farmer
	Cc: Discussion of IronPython
	Subject: Re: {Dangerous Content?} RE: [IronPython] is IP for me
	Many thanks Keith (and Martin)
	I think it looks like CPython and wxPython for me and that way I can create a cross platform app. I looked at phplanger and its very interesting. 
	My own feeling is for web apps PHP cannot be beaten but for traditional apps and socket programming etc. Python is a better solution (I have not looked at ruby though, which I should).
	I am a wee bit lost as to exactly what .net / mono offers programmers. I was under the impression that I could do a gui based app on mono and it would work on .net although I was unsure of the gtk bindings and how they convert to work with windows ? Just lack of research on my behalf. 
	I am ideally looking to protect my app in the short term (earn some revenue) and then open source it. This is where python fails a bit as its dead easy to reverse engineer (even just supplying the pyc files alone). I guess I am going to create my app / idea and see what the world thinks and hope nobody steals it too early (if it's any good).
	Many thanks for all your ideas and I will watch IP with great interest.
	PS I left the full mail below - my server is noting some attachment as dangerous - FYI 
	On Sat, 2006-01-07 at 14:17 -0800, Keith J. Farmer wrote: 
		Warning: This message has had one or more attachments removed
		Warning: (not named).
		Warning: Please read the "WEB-DNS-Attachment-Warning.txt" attachment(s) for more information.
		Forgive the scattered comments --
		IP's speed is going to be influenced by the runtime it is executed under: Microsoft's CLR, Mono, or some other third party runtime.  Speed gains can be realized by both the underlying runtime as well as the efficiency of the IL being generated.
		Mono is a suitable runtime for non-Windows systems, and generally supports IP at the Mono release following an IP release (they use IP as part of their test suite).  It's still catching up to full parity, but releases more often than either CPython or Microsoft, so there is the potential for swiftly closing any gaps that may exist.  Completeness of the BCL may or may not be an issue, depending on your needs.
		That said, have you checked out Phalanger?  It's an implementation of PHP for .NET, which may grant you more immediate satisfaction for a commercial project.  As I understand, it's also more mature than IP (not being a PHP-head, this is mere conjecture), and still grants access to the BCL.
		GUI:  Mono's working on System.Windows parity, as I understand, but has Gtk# available already.  I understand there's also a WxWindows port to .NET which may be usable.  There's also Cocoa#, but that's going to be Mac-specific.  Personally, I'd recommend using System.Windows unless you absolutely could not, just as a point of not having to install yet-another-GUI-library.
		From: users-bounces at lists.ironpython.com on behalf of David Irvine
		Sent: Sat 1/7/2006 1:52 PM
		To: Discussion of IronPython
		Subject: [IronPython] is IP for me
		Python newbee spent many years with php. I am looking to write a cross platform non web based app (windows, *nix and MAC). I am looking for
		1: Portability 
		2: Constant GUI based on platform 
		3: All code to be done in Linux 
		4: Fast - it has to be fairly quick (python speed)
		5: Commercial to begin with then open source after I have made a wee bit of cash (I am trying a new model out)
		I am wondering if IP is the one or should I use CPython and wxWindows libs etc. 
		Hope you can help all comments no matter how crazy appreciated. 

  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<DIV ALIGN=center>
<DIV ALIGN=center><FONT SIZE="2"><A HREF="http://www.open-source-consulting.org">http://www.open-source-consulting.org</A></FONT><A HREF="www.open-source-consulting.org"><IMG SRC="file:///home/dirvine/Desktop/My Documents/docs/abcstuff/logo.gif" WIDTH="74%" HEIGHT="25%" ALIGN="middle" BORDER="0"></A></DIV>
<DIV ALIGN=center><FONT SIZE="2">David Irvine</FONT></DIV>
<DIV ALIGN=center><FONT SIZE="2">Mobile 07977 583 031</FONT></DIV>

More information about the Ironpython-users mailing list