PyCParser

C parser and interpreter written in Python with automatic ctypes interface generation (by albertz)

PyCParser Alternatives

Similar projects and alternatives to PyCParser

  • angr

    13 PyCParser VS angr

    A powerful and user-friendly binary analysis platform!

  • PyCPython

    interpret CPython in pure Python

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better PyCParser alternative or higher similarity.

PyCParser reviews and mentions

Posts with mentions or reviews of PyCParser. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-03.
  • 30 Years of Decompilation and the Unsolved Structuring Problem: Part 1
    3 projects | news.ycombinator.com | 3 Jan 2024
    A funny anecdote: Some time ago, I was writing a C-to-Python translator.

    (Why? Just for fun, https://github.com/albertz/PyCParser, even more just-for-fun goal was this: https://github.com/albertz/PyCPython).

    It literally would translate the C code in equivalent Python code, using ctypes heavily. It was mostly straight-forward, except for mapping goto (thus related to this control flow structuring problem).

    Of course, there are some hacks to introduce goto in Python, which in many cases would operate on the Python bytecode, which actually has the JUMP_ABSOLUTE op, but there are also other ways (https://stackoverflow.com/questions/6959360/goto-in-python).

    I could also have translated C directly to equivalent Python bytecode and not Python source code, but I really wanted to have Python source code.

    My ugly solution worked basically like this: Whenever there was some goto in a function, it would translate it as follows:

    First, we flatten any Python AST into a series of statements,

Stats

Basic PyCParser repo stats
1
342
10.0
over 4 years ago

albertz/PyCParser is an open source project licensed under BSD 2-clause "Simplified" License which is an OSI approved license.

The primary programming language of PyCParser is Python.

Popular Comparisons


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com