Skip to content
Python Developer's Guide
Logo
Python Developer's Guide
  • Getting started
    • Setup and building
    • Fixing “easy” issues (and beyond)
    • Git bootcamp and cheat sheet
    • Lifecycle of a pull request
    • Where to get help
    • Generative AI
  • Development workflow
    • Following Python’s development
    • Development cycle
    • Adding to the stdlib
    • Standard library extension modules
    • Changing Python’s C API
    • Changing the Python language
    • Changing CPython’s grammar
    • Porting to a new platform
    • Software Bill-of-Materials (SBOM)
    • Python Security Response Team (PSRT)
  • Issues and triaging
    • Issue tracker
    • Triaging an issue
    • GitHub labels
    • GitHub issues for BPO users
    • Triage Team
  • Documentation
    • Getting started
    • Helping with documentation
    • Style guide
    • reStructuredText markup
    • Translating
    • Helping with the Developer’s Guide
  • Testing and buildbots
    • Running and writing tests
    • Silence warnings from the test suite
    • Increase test coverage
    • Working with buildbots
    • New buildbot workers
  • Development tools
    • Argument Clinic
    • GDB support
    • Dynamic analysis with Clang
    • Tools for tracking compiler warnings
  • Core developers
    • Responsibilities
    • Accepting pull requests
    • Experts index
    • Developer log
    • Motivations and affiliations
    • How to become a core developer
    • Memorialization
  • CPython’s internals
    • CPython source code
    • Guide to the parser
    • Compiler design
    • The bytecode interpreter
    • Garbage collector design
  • Status of Python versions
  • Python Contributor’s Guide (draft)
    • [Plan for the Contributor’s Guide]
    • Introduction
    • The CPython project
      • Code of Conduct
      • Roles
      • Governance
      • Generative AI
      • GitHub
      • Directory structure
      • Communication channels
      • Outreach
    • Issues and triaging
      • Issue tracker
      • Triaging an issue
      • GitHub labels
      • Reviewing
      • Triage Team
    • Documentation contributions
      • Getting started
      • Helping with documentation
      • Style guide
      • reStructuredText markup
      • Pull request lifecycle
      • Translating
      • Helping with the Developer’s Guide
    • Code contributions
      • Setup and building
      • Git tips
      • Pull request lifecycle
      • Development workflow
        • Following Python’s development
        • Development cycle
        • Adding to the stdlib
        • Standard library extension modules
        • Changing Python’s C API
        • Changing the Python language
        • Changing CPython’s grammar
        • Porting to a new platform
        • Software Bill-of-Materials (SBOM)
        • Python Security Response Team (PSRT)
      • Testing and buildbots
        • Running and writing tests
        • Silence warnings from the test suite
        • Increase test coverage
        • Working with buildbots
        • New buildbot workers
      • Development tools
        • Argument Clinic
        • GDB support
        • Dynamic analysis with Clang
        • Tools for tracking compiler warnings
    • Core team
      • Responsibilities
      • Accepting pull requests
      • Experts index
      • Developer log
      • Motivations and affiliations
      • How to join the core team
    • Accessibility, design, and user success
    • Security and infrastructure contributions
    • Workflows
      • Install Git
      • Get the source code
      • Install Dependencies
      • Compile and build
      • Regenerating auto-created files
      • Install Git
      • Using GitHub Codespaces
Back to top
View this page
Edit this page

Changing CPython’s grammar¶

This document is now part of the CPython Internals Docs.

Next
Porting to a new platform
Previous
Changing the Python language
Copyright © 2011 Python Software Foundation
Made with Sphinx and @pradyunsg's Furo