Talk:PyPy

message: fundamentally, an interpreted Python interpreter will always "really" be running the C code (or whatever) that the original interpreter runs.  Unless, of course, you detach the abstraction.  How can you do that?  How can you detach my thoughts from the meat inside which they occur?  The answer is: nirvanna.  PyPy can exist without the interpreter it is running on by attaining Nirvanna, or no place.  How does it do that?  First of all, it has to FREE itself of worldly thoughts.  The python interpreter should be running an EMPTY PROGRAM.  Then, it can be detached from the worldly (C) process that it arose under, into pure nirvanna.  —Preceding unsigned comment added by 82.234.207.120 (talk) 23:43, 2 August 2009 (UTC)
replies: text: Wtf? Lol. Devourer09 (t·c) 21:05, 20 May 2011 (UTC)
thread_title:  detaching the abstraction. 

message: I removed this statement from the article, here I explain why. PyPy is not a meta-circular evaluator, it is just written in a Python subset, but it does implement Python features, instead of reusing directly those available in RPython. And it needs to do so, since many Python features are not available in RPython.
The introduction of the paper PyPy’s Approach to Virtual Machine Construction, by Armin Rigo and Samuele Pedroni, contrasts their approach to the one of meta-circular evaluators.
--Blaisorblade (talk) 08:50, 28 October 2010 (UTC)
thread_title:  PyPy is not a meta-circular evaluator 

message: There appears to be a new logo for PyPy of a snake eating itself. Can someone update this please.  —Preceding unsigned comment added by 121.73.220.22 (talk) 00:59, 17 May 2011 (UTC)
thread_title:  New Logo 

message: Here's a useful reference if anyone wants to incorporate the material into the article or help cite statements already written there. Mostly this is just a reminder for myself if I ever get a chance to come back to this article and edit it. Devourer09 (t·c) 21:15, 20 May 2011 (UTC)
thread_title:  Useful reference 

message: Some day this article will be improved by adding reliable sources. Luckily there are several papers by computer scientists who appear to use PyPy for one purpose or another. PyPy is also described briefly in some instructional books about the Python language. These works don't usually go into much detail, they give only a few sentences. Here are a bunch of links to papers that I found. People who work on the PyPy article may be able to see if any of these could usefully be added. I am assuming that the proceedings of computer science conferences can be treated as reliable sources:
====List of external publications from the PyPy website====
*"Papers, talks and related projects"
====Computer science papers using PyPy or or instructional books mentioning PyPy that can be found from Google Scholar====
*Anders Sigfridsson et al., "Sprint-driven development.." Discussed the use of coding sprints by the PyPy project. Google Books: "Logic-based program synthesis and transformation: 16th international transformation, LOPSTR 2006 (Venice, July 2006)", ed. German Puebla. (LNCS 4407) Google Books link
*Magnus Lie Hetland, "Python algorithms: Mastering basic algorithms in the Python language. (2010). p.272: Discusses Psyco, PyPy and Unladen Swallow. Via Google Books link. It gives about five sentences on what PyPy is trying to do. It mainly describes the project's goals rather than its achievements.
*John Paul Mueller, "Professional IronPython" (no page number visible in Google Books). Describes how to get modules from PyPy for use with IronPython. Google Books link
*Magnus Lie Hetland, "Beginning Python: from novice to professional" p. 373. Pypy..: "This is an ambitious and forward-looking implementation of Python--in Python. While this might sound super-slow, the hope is that eventually, through quite advanced code analysis and compilation, it will outperform CPython…At the core of PyPy lies RPython, which is a restricted dialect of Python. RPython is suited for automated type inference and the like, permitting translation into static languages or native machine code, or to other dynamic languages (such as JavaScript), for that matter."
*Proceedings of the 2004 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM'04): August 2004, Verona, Italy. "One of the goals of the PyPy project is to provide a generic interpreter which can both concrete and abstract (i.e. symbolic) interpretation." [snippet view]
*Compiler Construction: 10th International Conference. F. Logozzo and H. Venter: "RATA: Rapid atomic type analysis by abstract interpretation". Page 81. Section 7 Related Work. Talks about just-in-time compilation. Mentions the use of it in PyPy. Google Books link
*Nicholas Riley and Craig Zilles (Oct 2006). "Hardware Transactional Memory Support for Lightweight Dynamic Language Evolution." In: Dynamic Language Symposium. Link to author's copy of the report. They use PyPy when running their experiment. Dynamic languages symposium which was part of OOPSLA 2006 (Published at p 994 of the OOPSLA Companion)
*The 2006 OOPSLA also features this paper: Armin Rigo and Samuele Pedroni: "PyPy's approach to virtual machine construction"
*Carl Bolz, Maciej Fijalkowski, Antonio Cuni and Armin Rigo (2009). "Tracing the Meta-Level: PyPy’s Tracing JIT Compiler" Presented at ICOOOLPS '09, Genoa Italy. http://pypy.org
— EdJohnston (talk) 02:19, 12 October 2011 (UTC)
thread_title:  Mentions of PyPy in the computer science literature 

message: *Anders Sigfridsson et al., "Sprint-driven development.." Discussed the use of coding sprints by the PyPy project. Google Books: "Logic-based program synthesis and transformation: 16th international transformation, LOPSTR 2006 (Venice, July 2006)", ed. German Puebla. (LNCS 4407) Google Books link
*Magnus Lie Hetland, "Python algorithms: Mastering basic algorithms in the Python language. (2010). p.272: Discusses Psyco, PyPy and Unladen Swallow. Via Google Books link. It gives about five sentences on what PyPy is trying to do. It mainly describes the project's goals rather than its achievements.
*John Paul Mueller, "Professional IronPython" (no page number visible in Google Books). Describes how to get modules from PyPy for use with IronPython. Google Books link
*Magnus Lie Hetland, "Beginning Python: from novice to professional" p. 373. Pypy..: "This is an ambitious and forward-looking implementation of Python--in Python. While this might sound super-slow, the hope is that eventually, through quite advanced code analysis and compilation, it will outperform CPython…At the core of PyPy lies RPython, which is a restricted dialect of Python. RPython is suited for automated type inference and the like, permitting translation into static languages or native machine code, or to other dynamic languages (such as JavaScript), for that matter."
*Proceedings of the 2004 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM'04): August 2004, Verona, Italy. "One of the goals of the PyPy project is to provide a generic interpreter which can both concrete and abstract (i.e. symbolic) interpretation." [snippet view]
*Compiler Construction: 10th International Conference. F. Logozzo and H. Venter: "RATA: Rapid atomic type analysis by abstract interpretation". Page 81. Section 7 Related Work. Talks about just-in-time compilation. Mentions the use of it in PyPy. Google Books link
*Nicholas Riley and Craig Zilles (Oct 2006). "Hardware Transactional Memory Support for Lightweight Dynamic Language Evolution." In: Dynamic Language Symposium. Link to author's copy of the report. They use PyPy when running their experiment. Dynamic languages symposium which was part of OOPSLA 2006 (Published at p 994 of the OOPSLA Companion)
*The 2006 OOPSLA also features this paper: Armin Rigo and Samuele Pedroni: "PyPy's approach to virtual machine construction"
*Carl Bolz, Maciej Fijalkowski, Antonio Cuni and Armin Rigo (2009). "Tracing the Meta-Level: PyPy’s Tracing JIT Compiler" Presented at ICOOOLPS '09, Genoa Italy. http://pypy.org
</small>
— EdJohnston (talk) 02:19, 12 October 2011 (UTC)
thread_title: Computer science papers using PyPy or or instructional books mentioning PyPy that can be found from Google Scholar

message: I feel that this article is no longer just a "lowly-unimportant stub" and have since upgraded it's status to B.
:But still is tagged both with  and  that, I feel should be removed.
;Does anyone else 👍agree ? or 👎disagree ? :--Mkouklis (talk) 16:18, 4 December 2011 (UTC)
thread_title:  Remove Tags: General Notability & reliable secondary sources 

message: This article really should make the effort to explain that apparent conundrum and why is indeed true. I admit I an not up to snuff to take on the task myself but it should be included in the article. Even if the explanation ends up being hard to understand, at least some people will understand it and others will appreciate at least some sort of attempt at explaining it which is what I was looking for when I looked up this article. --Cab88 (talk) 19:02, 6 September 2012 (UTC)
replies: text: I gave it a shot in the lead section. -- intgr [talk] 22:32, 11 December 2012 (UTC)
thread_title:  Explaining how "Pypy is written in python and how that does indeed mean PyPy written programs run faster then with standard Python 

message: "Current PyPy versions are translated an intermediate representation, RPython, into C code, and then compiled. " -- The most important sentence in the article and it isn't even a sentence, just meaningless gibberish. What it replaced was a sentence, but still trash. "PyPy versions are translated" is nonsense ...  -- 184.189.217.210 (talk) 01:24, 18 January 2017 (UTC)
replies: text: I have updated the lead section. Hope its clearer. Pj quil (talk) 03:30, 13 March 2017 (UTC)
thread_title:  ungrammatical lede 

message: I thought the previous introduction was a bit confusing. I wrote a new one which mentions the following:
* PyPy is faster than CPython
* PyPy is faster because it's a JIT compiler
* Code which uses C extensions doesn't necessarily run faster in PyPy
* PyPy is the product of a technique called meta-tracing which transforms interpreters into Tracing JIT compilers
* PyPy's meta-tracing toolchain is called RPython
Any suggestions?  — Preceding unsigned comment added by 86.23.54.173 (talk) 02:54, 26 December 2017 (UTC)
thread_title:  Rewrote the introduction