问题标签 [pypy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9029 浏览

python - 如何在 PyPy 中使用 PIL?

我搜索了一下,但找不到将 PIL 与 PyPy 一起使用的教程。根据 PyPy 的博客,支持 PIL。

  • 我在我的 PYTHONPATH 中安装了带有 pip 的 PIL。
  • 下载后,pip 制作 2 个 .pyd 文件:_imaging.pyd 和 _imagingmath.pyd。
  • 安装后,我将 %PYTHONPATH%/lib/site-packages/PIL 复制到我的 PyPy 站点包目录。
  • 当我运行我的脚本(使用 PIL)时,它说它无法导入 _imaging C 模块。

我应该怎么做?

编辑:我在 Windows 7 x64 (python 2.7.1 32bits) 上运行它

这是回溯(pypy 1.4.1 windows 二进制文件):

0 投票
2 回答
1263 浏览

python - 诅咒库导入错误pypy

我一直在使用 pypy 1.4,据说它与 cpython 2.5 完全兼容,但是当我尝试导入 curses 模块时,即使 curses 模块可用,我也会收到导入错误。任何指针为什么会发生这种情况?

0 投票
5 回答
2134 浏览

python - 将 PyPy 的 Rpython 开发为通用编程语言

是否有兴趣从PyPy 项目开发Rpython(受限 Python)作为通用编程语言?也许它可能是 PyPy 项目的一个分支。有这样的项目吗?由于程序是编译的,因此可以简单地贡献用 Rpython 编写的模块,它可以与其他 python 实现竞争,包括 CPython 和 PyPy。

0 投票
3 回答
3930 浏览

user-interface - PyPy 的 GUI 库

目前是否有任何可用于 PyPy 开发的 GUI 库?

0 投票
3 回答
2507 浏览

python - 如何使用 pypy 1.4.1 安装扭曲的 10.2.0?

我无法将 twisted 10.2.0 安装到我的 ubuntu 机器上。下载扭曲的源代码后,我发出命令:pypy setup.py install。之后我收到错误:

那么,我该如何解决呢?谢谢。

0 投票
4 回答
849 浏览

python - 小团体和大项目的 Python 或 PyPy?

规划大型项目的早期阶段 - 选择框架的艰难决定:)

心里:

  1. “选择方式 - 快速运行”。选择具有增长机会的技术,尽快原型化。
  2. “看看地平线 - 建造一艘船”。了解范围,投资于艰难的决定,但达到目标。
  3. “采取最好的 - 享受旅程”。带上最好的团队,不要让他们掉队。

从中选择:

HTML 5、CSS 3 - PyPy 1.4/CPython 3 + Pylons/Tornado/Django - CouchDB/MongoDB/Riak + Erlang?

第一步:团队中 3-4 名开发人员 + 1 名管理员 + 1 名设计师。

设计师 - 视图 + 服务开发人员 - 管理员 - 平衡 + 结构开发人员

第二步:团队 5-7 名开发人员 + 2-3 名管理员 + 1-2 名设计师。

更新: Python + Pyramid (Pylons) + Couchbase (CouchDB)

0 投票
2 回答
530 浏览

pypy - PyPy 翻译错误

我希望这是这个问题的正确位置。我正在尝试编写一个简单的支持 JIT 的解释器。但是,在翻译方面我遇到了一个奇怪的错误。我几乎逐字复制了 JavaScript 示例解析器,但这是我的问题:

首先,这是解析器(几乎 100% 像 JS 示例):

和我的语法:

我正在执行以下操作以将代码编译为 c:

我错过了什么?这看起来很直接......

0 投票
1 回答
743 浏览

python - 在 pypy 翻译期间指定已安装的本机库路径

我正在尝试在 Mac 机器上构建最新的 pypy 存储库。所需的库之一 libintl 安装在$HOME/opt/local/lib. 我运行(使用以前构建的pypy-c),

然而,大约半小时后,它停止了

那么我应该如何指定这个库的路径呢?我假设编译和执行自定义 rpython 程序也会发生同样的情况。

0 投票
1 回答
2621 浏览

python - 为 PyPy 的 JIT 编写快速代码的指南

PyPy 的 JIT 可以使 Python 代码的执行速度比 CPython 快得多。是否有一套可以通过 JIT 编译器更好地优化的代码编写指南?例如,Cython 可以将一些静态代码编译成 C++,并且它有编写高效代码的指南。PyPy 有一套好的实践吗?我知道 PyPy 项目有指导方针,在为其他动态语言编写自己的支持 JIT 的解释器时包含提示,但这与框架的大多数最终用户无关,他们只是使用解释器。我想知道的问题包括:

  1. 将脚本打包成函数
  2. 显式删除变量
  3. 提供或提示变量类型的可能方式
  4. 以某种方式编写循环
0 投票
3 回答
8609 浏览

python - LLVM、鹦鹉、JVM、PyPy + python

开发某些语言有什么问题,例如 python 用于一些 LLVM / Parrot 的一些优化技术。

PyPy、LLVM、Parrot是常用平台开发的主要技术。
我看到这样的:

  • PyPy - 用于构建 VM 的框架,其中包含针对 python 的优化 VM
    所以它是非常通用的解决方案。该过程如下所列:
    1. 动态语言代码->
    2. PyPy 前端 ->
    3. PyPy 内部代码 - 字节码 ->
    4. PyPy 优化 ->
    5. 留下 PyPy 代码和
      :某些 VM(如 jvm)的 PyPy 后端
      b. som Kit 制作自己的虚拟机
      c. 处理/运行 PyPy 内部代码

我对这个过程是正确的吗?对于 python 有优化的 VM?特别是默认情况下,VM 中内置了优化的 PyPy 代码(步骤 5.c)——它适用于 python,并且每种语言处理都可以在那里停止并由它运行?

  • Parrot - 很像 PyPy,但没有 5.a 和 5.b ?动态处理的一些内部改进(Parrot Magic Cookies)。

ParrotPyPy都旨在创建一个创建通用动态语言运行时的平台,但 PyPy 想要更多——也需要创建更多 VM。
PyPy 的意义在哪里?为了什么我们需要创建更多的虚拟机?不应该更好地专注于一个虚拟机(比如在鹦鹉中)——因为有一个共同的代码级别——PyPy 内部字节码或 Parrot 字节码。我认为我们无法将 PyPy 字节码转换为新创建的 PyPy VM。

  • LLVM - 我认为这与 PyPy 非常相似,但没有 VM 生成器。
    它是成熟的、精心设计的环境,具有与 PyPy 相似的目标(但没有 VM 生成器),但使用的是低级结构和出色的优化/JIT 技术

将其视为:LLVM是通用的,但Parrot和 **PyPy* 是为动态语言设计的。在 PyPy / Parrot 中更容易引入一些复杂的技术——因为它比 LLVM 更高级——比如复杂的编译器,它可以更好地理解高级代码并产生更好的汇编代码(人类无法在合理的时间内编写),然后LLVM 之一?

问题:

  1. 我对吗?是否有任何理由将某些动态语言移植到 llvm 比移植到 Parrot 更好?

  2. 我还没有看到 Parrot 上开发 python 的活动。是因为使用 python C 扩展对 parrot 不起作用吗?PyPy 也有同样的问题

  3. 为什么其他 VM 不想迁移到 LLVM / parrot。例如 ruby​​ -> parrot,CLR/ JVM -> LLVM。他们转向更复杂的解决方案不是更好吗?LLVM 正处于高速发展过程中,并有大公司投资。

  4. 我知道问题可能在于重新编译资源,如果需要更改字节码 - 但这不是强制性的 - 因为我们可以尝试将旧字节码移植到新字节码,并且新编译器会生成新字节码(Java 仍然需要解释自己的字节码 - 所以前端可以检查它并将其转换为新的字节码)?

  5. 在 llvm 中链接例如 jvm 库有什么问题(如果我们以某种方式将 java/jvm/scala 移植到 llvm)?

  6. 如果我在某个地方错了,你能纠正我吗

一些补充:

==============

澄清

我想弄清楚所有这些软件是如何组成的——将一个软件移植到另一个软件有什么问题。