[pypy-commit] extradoc extradoc: merged upstream.

alex_gaynor noreply at buildbot.pypy.org
Sun Jul 31 00:29:38 CEST 2011


Author: Alex Gaynor <alex.gaynor at gmail.com>
Branch: extradoc
Changeset: r3851:8d612fff616c
Date: 2011-07-30 15:29 -0700
http://bitbucket.org/pypy/extradoc/changeset/8d612fff616c/

Log:	merged upstream.

diff --git a/blog/draft/success_stories.rst b/blog/draft/success_stories.rst
new file mode 100644
--- /dev/null
+++ b/blog/draft/success_stories.rst
@@ -0,0 +1,53 @@
+PyPy success stories
+====================
+
+Regular readers of this blog know the great progresses that PyPy achieved in
+the past few years in terms of speed_, stability, and adoption.
+
+All of this has been made possibile thanks to the help of the Open Source
+community, but also thanks to the German and Swedish governments, which
+funded us through the `Eurostars programme`_.  This let some of us
+core developers work full time on PyPy for the past two years. 
+
+Our participation to Eurostars is ending in August, and at the moment we are
+exploring several different ways of funding PyPy through other sources.  We
+will write more about that in the next days.  During this process, it is
+important to show that PyPy has stopped being "just" a research project, but
+that it is also a robust and solid solution for industry.
+
+We would like to write a list of "PyPy success stories", and thus we ask
+for your help:
+
+  - if you are already using PyPy in production;
+
+  - if you are actively testing PyPy on your codebase;
+
+  - or even if you are simply considering switching to PyPy and experimenting with it;
+
+in those cases, please let us know about it.  We would like to know which
+company you work for, what are you using PyPy for, and why you decided to
+switch to it.  Ideally, we would like the permission to publish this
+information and share it with the public.  
+
+If for any reason you cannot or do not want to make this public, we are still
+interested in hearing about you.  In that case, don't hesitate to contact us
+privately - we will not publish your data.  But we have potential sponsors 
+who are intersted in supporting PyPy, and showing them a list of companies
+that are using PyPy (+ 3 anonymous ones in the financial services sector) is
+almost as good as showing them a list with all the company names filled in.
+What they are looking for is evidence that PyPy is not a research toy, but
+of actual use to industry.
+
+Please take the time to respond either as a comment to this blog post
+directly, or byt sending email to the `pypy-dev`_ mailing list or by
+writing a private email to me (`Antonio Cuni`_) or `Laura Creighton`_.
+
+We hope to hear about lots of PyPy success stories. Remind that the more of
+them we collect, the easier for us to find sponsors to fund further
+development of PyPy!  And, of course, if any of you are interested in
+_becoming_ one of these sponsors, we would like to hear about that, as well.
+
+Thanks very much (in advance) for all your help,
+Laura and Anto (for the entire PyPy team)
+
+_`Eurostars programme` : http://www.eurostars-eureka.eu/
diff --git a/planning/jit.txt b/planning/jit.txt
--- a/planning/jit.txt
+++ b/planning/jit.txt
@@ -164,3 +164,31 @@
     at the end of the preamble unnessesary. If that policy wont hold
     in the long run it should be straight forward to augument the
     VirtualState objects with information about storesinking.
+
+
+Random ideas from hakanardo
+----------------------------
+
+  - Let bridges inherit more information form their parent traces to allow
+	them to be better optimized. One idea is to augument the resumedata with
+	the index within the trace inputargs for each failarg that comes directly
+	from the inputargs. That way a lot of info can be deduced from the short
+	preamble. Another idea is to actually store a lot of status information on
+	the guards as they are generated, but then forget (and free) that info as
+	the guards grow older (in terms of the number of generated guards or
+	something).
+
+  - Generalisation strategies. Once jit-short_from_state is merged we'll have
+	a nice platform to experiment with generalizing the loops created. Today
+	unrolling makes the jit specialize as much as possible which is one reason
+	it's hard for bridges to reuse the created peeled loops. There is also a
+	tradeoff between forcing things to be able to reuse an existing loop and
+	retracing it to form a new specialized version.
+
+  - Better pointer aliasing analyzer that will emit guards that pointers are
+	different when needed.
+
+  - Make heap optimizer aware of setitems produced by forcing virtuals.
+
+  - Movinging loop-invariant setitems out of the loops entierly.
+
diff --git a/talk/icooolps2011/talk/figures/map.svg b/talk/icooolps2011/talk/figures/map.svg
--- a/talk/icooolps2011/talk/figures/map.svg
+++ b/talk/icooolps2011/talk/figures/map.svg
@@ -49,7 +49,40 @@
          id="path8552"
          d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
          style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
-         transform="scale(0.8) translate(12.5,0)" /></marker></defs><sodipodi:namedview
+         transform="scale(0.8) translate(12.5,0)" /></marker><marker
+       inkscape:stockid="Arrow2Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lstart-9"
+       style="overflow:visible"><path
+         inkscape:connector-curvature="0"
+         id="path8570-9"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(1.1,0,0,1.1,1.1,0)" /></marker><marker
+       inkscape:stockid="Arrow2Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker3072"
+       style="overflow:visible"><path
+         inkscape:connector-curvature="0"
+         id="path3074"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(1.1,0,0,1.1,1.1,0)" /></marker><marker
+       inkscape:stockid="Arrow2Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker3076"
+       style="overflow:visible"><path
+         inkscape:connector-curvature="0"
+         id="path3078"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(1.1,0,0,1.1,1.1,0)" /></marker></defs><sodipodi:namedview
      pagecolor="#ffffff"
      bordercolor="#666666"
      borderopacity="1"
@@ -58,17 +91,17 @@
      guidetolerance="10"
      inkscape:pageopacity="0"
      inkscape:pageshadow="2"
-     inkscape:window-width="1680"
-     inkscape:window-height="1026"
+     inkscape:window-width="1280"
+     inkscape:window-height="776"
      id="namedview7589"
      showgrid="false"
      inkscape:zoom="1.3953574"
-     inkscape:cx="271.26815"
+     inkscape:cx="180.9687"
      inkscape:cy="130.03147"
      inkscape:window-x="0"
      inkscape:window-y="24"
      inkscape:window-maximized="1"
-     inkscape:current-layer="g7595" /><g
+     inkscape:current-layer="layer1" /><g
      id="g7595"
      inkscape:groupmode="layer"
      inkscape:label="map"
@@ -76,10 +109,11 @@
      style="display:inline"><path
        inkscape:connector-curvature="0"
        id="path7599"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 137,5.5 54,0 0,27 -54,0 0,-27 z" /><g
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 137.00001,5.5000016 54,0 0,27.0000004 -54,0 0,-27.0000004 z" /><g
+       style="display:inline"
        id="g7601"
-       transform="translate(-1.6,0)"><text
+       transform="translate(-1.5999963,1.55e-6)"><text
          id="text7603"
          transform="matrix(1,0,0,-1,150,15.9)"><tspan
            id="tspan7605"
@@ -90,8 +124,10 @@
 </g><path
        inkscape:connector-curvature="0"
        id="path7607"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 41,89.5 94,0 0,27 -94,0 0,-27 z" /><g
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 41.000003,89.500002 94.000007,0 0,26.999998 -94.000007,0 0,-26.999998 z" /><g
+       transform="translate(3.6875e-6,1.55e-6)"
+       style="display:inline"
        id="g7609"><text
          id="text7611"
          transform="matrix(1,0,0,-1,49,99.9)"><tspan
@@ -103,8 +139,10 @@
 </g><path
        inkscape:connector-curvature="0"
        id="path7615"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 85,89.5 0,27" /><g
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 85.000004,89.500002 0,26.999998" /><g
+       transform="translate(3.6875e-6,1.55e-6)"
+       style="display:inline"
        id="g7617"><text
          id="text7619"
          transform="matrix(1,0,0,-1,93,99.9)"><tspan
@@ -116,11 +154,12 @@
 </g><path
        inkscape:connector-curvature="0"
        id="path7623"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Lstart)"
-       d="M 61.666923,88.403288 C 61.377172,34.917749 138.99637,51.116903 147.27,32.7199"
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Lstart);display:inline"
+       d="m 61.666926,88.403292 c -0.28975,-53.48554 77.329454,-37.28639 85.603084,-55.68339"
        sodipodi:nodetypes="cc" /><g
+       style="display:inline"
        id="g7629"
-       transform="translate(-46.4,0)"><text
+       transform="translate(-46.399996,1.55e-6)"><text
          id="text7631"
          transform="matrix(1,0,0,-1,128,57.9)"
          sodipodi:linespacing="125%"
@@ -132,9 +171,76 @@
            style="font-size:14px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">add &quot;a&quot;</tspan></text>
 </g><path
        inkscape:connector-curvature="0"
+       id="path7659"
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Lstart);display:inline"
+       d="m 88.000004,172.5777 c 0,-15.04 0,-43.4477 0,-55.9677"
+       sodipodi:nodetypes="cc" /><g
+       style="display:inline"
+       id="g7665"
+       transform="translate(-54.179668,-2.2933184)"><text
+         id="text7667"
+         transform="matrix(1,0,0,-1,88,141.9)"><tspan
+           id="tspan7669"
+           sodipodi:role="line"
+           y="0"
+           x="0"
+           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">add &quot;b&quot;</tspan></text>
+</g><path
+       inkscape:connector-curvature="0"
+       id="path7671"
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 152.50001,89.500002 93,0 0,26.999998 -93,0 0,-26.999998 z" /><g
+       transform="translate(3.6875e-6,1.55e-6)"
+       style="display:inline"
+       id="g7673"><text
+         id="text7675"
+         transform="matrix(1,0,0,-1,160.5,99.9)"><tspan
+           id="tspan7677"
+           sodipodi:role="line"
+           y="0"
+           x="0"
+           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">map</tspan></text>
+</g><path
+       inkscape:connector-curvature="0"
+       id="path7679"
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 196.50001,89.500002 0,26.999998" /><g
+       transform="translate(3.6875e-6,1.55e-6)"
+       style="display:inline"
+       id="g7681"><text
+         id="text7683"
+         transform="matrix(1,0,0,-1,204.5,99.9)"><tspan
+           id="tspan7685"
+           sodipodi:role="line"
+           y="0"
+           x="0"
+           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">&quot;c&quot;: 0</tspan></text>
+</g><path
+       inkscape:connector-curvature="0"
+       id="path7687"
+       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Lstart);display:inline"
+       d="m 175.60009,87.896522 c 0.55996,-17.18675 -0.61008,-42.52662 -5.93008,-55.28632"
+       sodipodi:nodetypes="cc" /><g
+       transform="translate(3.6875e-6,1.55e-6)"
+       style="display:inline"
+       id="g7693"><text
+         id="text7695"
+         transform="matrix(1,0,0,-1,185,57.9)"><tspan
+           id="tspan7697"
+           sodipodi:role="line"
+           y="0"
+           x="0"
+           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">add &quot;c&quot;</tspan></text>
+</g></g><g
+     inkscape:groupmode="layer"
+     id="layer1"
+     inkscape:label="othermaps"><path
+       inkscape:connector-curvature="0"
        id="path7635"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 16,173.5 144,0 0,27 -144,0 0,-27 z" /><g
+       style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 20,120.625 180,0 0,-33.75 -180,0 0,33.75 z" /><g
+       transform="matrix(1.25,0,0,-1.25,0,337.5)"
+       style="display:inline"
        id="g7637"><text
          id="text7639"
          transform="matrix(1,0,0,-1,24,183.9)"><tspan
@@ -146,10 +252,11 @@
 </g><path
        inkscape:connector-curvature="0"
        id="path7643"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 60,173.5 0,27" /><g
+       style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 75,120.625 0,-33.75" /><g
+       style="display:inline"
        id="g7645"
-       transform="translate(-2.4324331,0)"><text
+       transform="matrix(1.25,0,0,-1.25,-3.040541,337.5)"><text
          id="text7647"
          transform="matrix(1,0,0,-1,68,183.9)"><tspan
            id="tspan7649"
@@ -160,10 +267,11 @@
 </g><path
        inkscape:connector-curvature="0"
        id="path7651"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 110,173.5 0,27" /><g
+       style="fill:none;stroke:#000000;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;display:inline"
+       d="m 137.5,120.625 0,-33.75" /><g
+       style="display:inline"
        id="g7653"
-       transform="translate(-1.8243247,0)"><text
+       transform="matrix(1.25,0,0,-1.25,-2.280406,337.5)"><text
          id="text7655"
          transform="matrix(1,0,0,-1,118,183.9)"><tspan
            id="tspan7657"
@@ -171,61 +279,6 @@
            style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"
            y="0"
            x="0">&quot;b&quot;: 1</tspan></text>
-</g><path
-       inkscape:connector-curvature="0"
-       id="path7659"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Lstart)"
-       d="m 88,172.5777 c 0,-15.04 0,-43.4477 0,-55.9677"
-       sodipodi:nodetypes="cc" /><g
-       id="g7665"
-       transform="translate(-54.179668,-2.2933193)"><text
-         id="text7667"
-         transform="matrix(1,0,0,-1,88,141.9)"><tspan
-           id="tspan7669"
-           sodipodi:role="line"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">add &quot;b&quot;</tspan></text>
-</g><path
-       inkscape:connector-curvature="0"
-       id="path7671"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 152.5,89.5 93,0 0,27 -93,0 0,-27 z" /><g
-       id="g7673"><text
-         id="text7675"
-         transform="matrix(1,0,0,-1,160.5,99.9)"><tspan
-           id="tspan7677"
-           sodipodi:role="line"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">map</tspan></text>
-</g><path
-       inkscape:connector-curvature="0"
-       id="path7679"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none"
-       d="m 196.5,89.5 0,27" /><g
-       id="g7681"><text
-         id="text7683"
-         transform="matrix(1,0,0,-1,204.5,99.9)"><tspan
-           id="tspan7685"
-           sodipodi:role="line"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">&quot;c&quot;: 0</tspan></text>
-</g><path
-       inkscape:connector-curvature="0"
-       id="path7687"
-       style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:1;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#Arrow2Lstart)"
-       d="M 175.60008,87.896518 C 176.16004,70.709763 174.99,45.3699 169.67,32.6102"
-       sodipodi:nodetypes="cc" /><g
-       id="g7693"><text
-         id="text7695"
-         transform="matrix(1,0,0,-1,185,57.9)"><tspan
-           id="tspan7697"
-           sodipodi:role="line"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">add &quot;c&quot;</tspan></text>
 </g></g><g
      inkscape:groupmode="layer"
      id="layer7"
@@ -237,15 +290,16 @@
        d="m 4.375,38.125 216.25,0 0,-33.75 -216.25,0 0,33.75 z" /><g
        transform="matrix(1.25,0,0,-1.25,0,337.5)"
        id="g7701"><text
-         id="text7703"
-         transform="scale(1,-1)"
-         x="8.2999992"
-         y="-249.89999"><tspan
-           id="tspan7705"
-           sodipodi:role="line"
-           y="-249.89999"
-           x="8.2999992"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">instance</tspan></text>
+   id="text7703"
+   transform="scale(1,-1)"
+   x="8.2999992"
+   y="-249.89999"><tspan
+     id="tspan7705"
+     sodipodi:role="line"
+     y="-249.89999"
+     x="8.2999992"
+     style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">instance</tspan></text>
+
 </g><path
        inkscape:connector-curvature="0"
        id="path7707"
@@ -253,13 +307,14 @@
        d="m 88.125,38.125 0,-33.75" /><g
        transform="matrix(1.25,0,0,-1.25,0,337.5)"
        id="g7709"><text
-         id="text7711"
-         transform="matrix(1,0,0,-1,78.5,249.9)"><tspan
-           id="tspan7713"
-           sodipodi:role="line"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">map</tspan></text>
+   id="text7711"
+   transform="matrix(1,0,0,-1,78.5,249.9)"><tspan
+     id="tspan7713"
+     sodipodi:role="line"
+     y="0"
+     x="0"
+     style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">map</tspan></text>
+
 </g><path
        inkscape:connector-curvature="0"
        id="path7715"
@@ -267,13 +322,14 @@
        d="m 143.125,38.125 0,-33.75" /><g
        transform="matrix(1.25,0,0,-1.25,-4,337.5)"
        id="g7717"><text
-         id="text7719"
-         transform="matrix(1,0,0,-1,122.5,249.9)"><tspan
-           id="tspan7721"
-           sodipodi:role="line"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">storage</tspan></text>
+   id="text7719"
+   transform="matrix(1,0,0,-1,122.5,249.9)"><tspan
+     id="tspan7721"
+     sodipodi:role="line"
+     y="0"
+     x="0"
+     style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">storage</tspan></text>
+
 </g><path
        inkscape:connector-curvature="0"
        id="path7723"
@@ -291,13 +347,14 @@
        d="m 221.875,120.625 118.75,0 0,-33.75 -118.75,0 0,33.75 z" /><g
        transform="matrix(1.25,0,0,-1.25,-2,337.5)"
        id="g7731"><text
-         id="text7733"
-         transform="matrix(1,0,0,-1,185.5,183.9)"><tspan
-           id="tspan7735"
-           sodipodi:role="line"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">array</tspan></text>
+   id="text7733"
+   transform="matrix(1,0,0,-1,185.5,183.9)"><tspan
+     id="tspan7735"
+     sodipodi:role="line"
+     y="0"
+     x="0"
+     style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">array</tspan></text>
+
 </g><path
        inkscape:connector-curvature="0"
        id="path7737"
@@ -305,12 +362,13 @@
        d="m 280.625,120.625 0,-33.75" /><g
        transform="matrix(1.25,0,0,-1.25,0,337.5)"
        id="g7739"><text
-         id="text7741"
-         transform="matrix(1,0,0,-1,232.5,183.9)"><tspan
-           id="tspan7743"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">4</tspan></text>
+   id="text7741"
+   transform="matrix(1,0,0,-1,232.5,183.9)"><tspan
+     id="tspan7743"
+     y="0"
+     x="0"
+     style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">4</tspan></text>
+
 </g><path
        inkscape:connector-curvature="0"
        id="path7745"
@@ -318,10 +376,11 @@
        d="m 310.625,120.625 0,-33.75" /><g
        transform="matrix(1.25,0,0,-1.25,0,337.5)"
        id="g7747"><text
-         id="text7749"
-         transform="matrix(1,0,0,-1,256.5,183.9)"><tspan
-           id="tspan7751"
-           y="0"
-           x="0"
-           style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">6</tspan></text>
+   id="text7749"
+   transform="matrix(1,0,0,-1,256.5,183.9)"><tspan
+     id="tspan7751"
+     y="0"
+     x="0"
+     style="font-size:14px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">6</tspan></text>
+
 </g></g></svg>
\ No newline at end of file
diff --git a/talk/icooolps2011/talk/figures/map01.pdf b/talk/icooolps2011/talk/figures/map01.pdf
index d957a75d52a1e205b35f2139afe40e260bcaa5f7..b02a6212807255e3be3a63808946c1f87b32a64a
GIT binary patch

[cut]

diff --git a/talk/icooolps2011/talk/figures/map02.pdf b/talk/icooolps2011/talk/figures/map02.pdf
index c8f07cffbd5017707537c5fb18bf7a822384016f..8f23b0fb78a661be86adf7790844570eed590ef5
GIT binary patch

[cut]

diff --git a/talk/icooolps2011/talk/figures/map03.pdf b/talk/icooolps2011/talk/figures/map03.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..e9944db6caa3a34e1852cfb8934df628bf64d089
GIT binary patch

[cut]

diff --git a/talk/icooolps2011/talk/talk.pdf b/talk/icooolps2011/talk/talk.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..66d79ac74735959368d77448b8d8606105e447f1
GIT binary patch

[cut]

diff --git a/talk/icooolps2011/talk/talk.tex b/talk/icooolps2011/talk/talk.tex
--- a/talk/icooolps2011/talk/talk.tex
+++ b/talk/icooolps2011/talk/talk.tex
@@ -107,12 +107,12 @@
 \end{frame}
 
 \begin{frame}
-  \frametitle{A Tracing JIT}
+  \frametitle{An Interpreter}
   \includegraphics[scale=0.5]{figures/trace01.pdf}
 \end{frame}
 
 \begin{frame}
-  \frametitle{An Interpreter}
+  \frametitle{A Tracing JIT}
   \includegraphics[scale=0.5]{figures/trace02.pdf}
 \end{frame}
 
@@ -149,6 +149,7 @@
 \begin{frame}
   \frametitle{Example: Attribute Reads in Python}
   What happens when an attribute \texttt{x.m} is read? (simplified)
+  \pause
   \begin{itemize}
       \item check for \texttt{x.\_\_getattribute\_\_}, if there, call it
       \pause
@@ -180,7 +181,7 @@
   \frametitle{Meta-Tracing JITs}
   \begin{block}{Advantages:}
     \begin{itemize}
-        \item semantics is always like that of the interpreter
+        \item semantics are always like that of the interpreter
         \item trace fully contains language semantics
         \item meta-tracers can be reused for various interpreters
     \end{itemize}
@@ -240,12 +241,17 @@
 
 \begin{frame}
   \frametitle{Example: Instances with Maps}
-  \includegraphics[scale=0.5]{figures/map01.pdf}
+  \includegraphics[scale=0.7]{figures/map01.pdf}
 \end{frame}
 
 \begin{frame}
   \frametitle{Example: Instances with Maps}
-  \includegraphics[scale=0.5]{figures/map02.pdf}
+  \includegraphics[scale=0.7]{figures/map02.pdf}
+\end{frame}
+
+\begin{frame}
+  \frametitle{Example: Instances with Maps}
+  \includegraphics[scale=0.7]{figures/map03.pdf}
 \end{frame}
 
 \begin{frame}[containsverbatim]
@@ -286,7 +292,7 @@
 \end{frame}
 
 \begin{frame}[plain,containsverbatim]
-\frametitle{Trace for code \texttt{inst.a + inst.b}}
+\frametitle{Trace for Code \texttt{inst.a + inst.b}}
 \begin{lstlisting}[mathescape,escapechar=|,basicstyle=\ttfamily]]
 # $inst_1$.getfield("a")
 $map_1$ = $inst_1$.map
@@ -393,7 +399,6 @@
     \PY{k}{def} \PY{n+nf}{getindex}\PY{p}{(}\PY{n+nb+bp}{self}\PY{p}{,} \PY{n}{name}\PY{p}{)}\PY{p}{:}
         \PY{k}{return} \PY{n+nb+bp}{self}\PY{o}{.}\PY{n}{indexes}\PY{o}{.}\PY{n}{get}\PY{p}{(}\PY{n}{name}\PY{p}{,} \PY{o}{-}\PY{l+m+mi}{1}\PY{p}{)}
 
-    \PY{n+nd}{@elidable}
     \PY{k}{def} \PY{n+nf}{add\PYZus{}attribute}\PY{p}{(}\PY{n+nb+bp}{self}\PY{p}{,} \PY{n}{name}\PY{p}{)}\PY{p}{:}
         \PY{o}{.}\PY{o}{.}\PY{o}{.}
 


More information about the pypy-commit mailing list