[pypy-dev] Pypy Roadmap

Bengt Richter bokr at oz.net
Mon Jan 13 01:06:39 CET 2003


Hi, this sounds interesting ;-)

I was wondering how you were planning on identifying concrete tasks
and assigning and tracking them, and keeping status visible to support
cooperation.

Do you already have CVS and bug/issue tracking methodology settled?
I.e., such stuff is nuisance overhead or sanity preservation depending
on the task, and the development phase, and scale/distribution of effort.

Is there one single home page that leads to everything relevant, with some
indication of historical vs current vs fire alarm links?

Googling pypy got me (in two steps) to
http://twistedmatrix.com/users/jh.twistd/moin/moin.cgi/PyPy
Should that page be "claimed"?

Here are some things that occur to me to think about in making
a roadmap for your project. If you would make something like it
to reflect your _actual_ project plans, it would help me (and maybe
some other lurkers ;-) get an idea of what you are really up to ;-)

1.0 Historical background
	1.1	Psyco
	1.2	core group forms and evolves pypy idea
	1.3	core group decides to go public, announces pypy-dev list
2.0 Initial pypy-dev discussions
	2.1	Happening now ;-)
	2.2	Preliminary expressions of interest, ideas
3.0 Straw-man roadmap
	3.1	Decide hosting, bug/issue tracking methodology issues
		3.1.1 Designation of primary info channels
			3.1.1.1 Discussion - pypy-dev list, presumably
			3.1.1.2 Current task/subproject/bugfix assignments/status
			3.1.1.3 Single official page as comprehensive root of info tree
		3.1.2 Sourceforge?
			3.1.2.1 mirror/backup/file authentication issues?
               3.1.3 pypy SDK? Recommended win32 & unix tool kits, compiler versions etc.
		3.1.4 Windows vs unix issues
			3.1.4.1 Maintain parallel MSVC++ project files like
				CPython's PCbuild directory?
			3.1.4.2 Platform-independent builds?
	3.2	Language issues
		3.2.1 Decide on minimal core language bootstrap subset?
			3.2.1.1 Identify needs for supporting 4.x below
			3.2.1.2 Threading/locking/synchronizing issues?
		3.2.2 Compiler hints/directives - what info & how?
			3.2.2.1 command line opts?
			3.2.2.2 config files?
                       3.2.2.3 source-embedded directives/pragmas/etc?
                       3.3.3.4 Preprocessing?
	3.3	Other implementation issues?
		3.3.1 Foreign function/C interface
		3.3.2 New VM? Intermediate language representation?
		3.3.3 Memory allocation/garbage collection/reference counting
		3.3.4 Resource monitoring (guaranteed timely finalization?)
               3.3.5 Security support
			3.3.5.1 Sandboxing, restricted execution, resource quotas?
			3.3.5.2 Special considerations for CGI/server contexts?
		3.3.6 Checkpointable execution support, fastload images? 
	3.4	How to minimize platform C library dependencies for bootstrap core?
		3.4.1 Strategy for weaning from temporary uses
	3.5	Decide on initial build targets
		3.5.1	Executables: Win32, unix, bootable images?
		3.5.1	Libraries: DLLs, .so's
	4.0	After the minimal core bootstrap language works
		4.1 Re-implementation strategy using core boostrap language to write
                   next level of language features.
			4.1.1 How many levels of subset bootstrapping? Is it a hierarchy?
		4.2 Special language requirements for writing what is now C in Cpython?

Well, that's all the thoughts I have for now ;-)
Regards,
Bengt Richter



More information about the Pypy-dev mailing list