如今Python给人的感觉是大,东西多,在Windows上安装后竟然要占100多兆的空间。

lua给人的感觉是非常小,非常轻便。Python 2.7在linux下编译出来的代码在strip之后也有3M多,早期版本号应该会更小些,但也应该有700K到800K吧。

那么Python是不是不能编译出轻便。体积小的代码呢?答案是否定的,这里介绍几个Python的变种。来看下Python能够有多小。

1、Pymite

这是一个能够执行在8位单片机上的Python,没想到吧!单片机上的rom往往小于100KB。RAM小于8KB,假设对照一下PC机,真的能够说是巨人和蚂蚁的差别啊,python竟然能够在上面执行。是不是非常颠覆你的思想?现在Pymite能够执行在Arduino
Mega上,Arduino是一个出了名的开源硬件平台,主要使用avr的8位单片机,Pymite在上面执行仅仅须要64KB的rom,4KB的ram,更具体的情况见以下的链接:

http://playground.arduino.cc/CommonTopics/PyMite

源码的路径例如以下:

https://code.google.com/p/python-on-a-chip/



2、tinypy

这是一个号称能够编译出小于64K的Python的项目。当然实际的编译出来的大小为200K左右。文档里有写,在使用优化的方法时是能够编译出<64K的程序的,可是我没有试过。

可是200K已经是非常小了。更让人不可思议的是,它竟然把pygame也集成进去了。官网见:

http://www.tinypy.org/

貌似非常久没更新了。

只是,既然编译出来的代码小。功能当然就没那么强大了,这是一个鱼和熊掌的问题了。

事实上啊。比較哪种语言好。那种语言差全然没有必要,每种语言都有自己的优势和劣势,关键是语言不能停止进化的脚步。

仅仅要是自己喜欢的语言就是好的语言。用不着太在意别人喜欢什么。并且也没有必要由于自己喜欢某种语言而停止去尝试其他语言。

还是那句话,规则是用来打破的,观念是用来颠覆的。在IT行业更是如此。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

只有有lua编译能力不足200K代码吧?NO! Python 有可能。的更多相关文章

  1. Lua 学习笔记(七)编译、执行外部代码块

    Lua称为解释型语言的原因:Lua允许在运行源代码之前,先将源代码预编译为一种中间形式.区别解释型语言的主要特征是在于编译器是否是语言运行时库的一部分,即有能力执行动态生成的代码.因为Lua中有dof ...

  2. Sublime Text 3(中文)添加Lua编译环境

    Sublime Text 3(中文)添加Lua编译环境 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 没有 ...

  3. Step By Step(Lua编译执行与错误)

    Step By Step(Lua编译执行与错误) 1. 编译:    Lua中提供了dofile函数,它是一种内置的操作,用于运行Lua代码块.但实际上dofile只是一个辅助函数,loadfile才 ...

  4. 编译原理-词法分析04-NFA & 代码实现

    编译原理-词法分析04-NFA & 代码实现 0.术语 NFA 非确定性有穷自动机nondeterministic finite automation. ε-转换ε-transition 是无 ...

  5. java如何在eclipse编译时自动生成代码

    用eclipse写java代码,自动编译时,如何能够触发一个动作,这个动作是生成本项目的代码,并且编译完成后,自动生成的代码也编译好了, java编辑器中就可以做到对新生成的代码的自动提示? 不生成代 ...

  6. lua编译出so文件

    把lua编译出so文件 http://superuser.com/questions/557884/getting-error-recompile-with-fpic http://guiquanz. ...

  7. 页面上动态编译及执行java代码

    本文地址:http://www.cnblogs.com/liaoyu/p/real-time-compile-and-run-java-code-web-app.html 最近看到同事在页面上编译和执 ...

  8. 反编译工具 使用.NET JustDecompile来反编译你的程序代码

    原文地址:http://www.it165.net/pro/html/201310/7383.html 前言 在项目的进行中有时会碰到需要去了解由第三方所开发的程序代码或者因为年久已经遗失原始码的程序 ...

  9. 如何用CSC.exe来编译Visual C#的代码文件

    原文:如何用CSC.exe来编译Visual C#的代码文件 C#的编译过程      如何用CSC.exe来编译Visual C#的代码文件   Csc.exe 编译器的位置路径:C:\Window ...

随机推荐

  1. UVA 11774 - Doom&#39;s Day(规律)

    UVA 11774 - Doom's Day 题目链接 题意:给定一个3^n*3^m的矩阵,要求每次按行优先取出,按列优先放回,问几次能回复原状 思路:没想到怎么推理,找规律答案是(n + m) / ...

  2. 在JBuilder8在使用ANT

    在JBuilder8中使用ANT                                                            作者:翁驰原    在JBuilder8中.Ap ...

  3. 在投票系统方法的原则刷票(突破ip限制刷票PHP版)

    让我谈一点:事实上,没有一个突破ip限制,因为实际上,,这项限制server结束,client牛逼,不能突破..只要是能够始终重复刷票罢了 一个朋友突然来了个网站,让我帮她投票..我是一个更好的人说话 ...

  4. 【Android进阶】Listview分页加载数据的实现

    Listview分页加载数据的实现 public class MainActivity extends Activity { protected static final int SUCCESS_GE ...

  5. 自己写CPU第四阶段(2)——验证该第一指令ori实现效果

    我们会继续上传新书<自己写CPU>(未公布),今天是12片,四篇 书名又之前的<自己动手写处理器>改为<自己动手写CPU> 4.3 验证OpenMIPS实现效果 4 ...

  6. IntelliSense 无法仅由函数的返回类型重装分辨

    IntelliSense:无法仅由函数的返回类型重装分辨       d:\programfiles (x86)\microsoft sdks\windows\v7.0a\include\winbas ...

  7. 【Leetcode】Partition List (Swap)

    Given a linked list and a value x, partition it such that all nodes less than x come before nodes gr ...

  8. 建立ORACLE10G DATA GUARD---&gt;Physical Standby

    下面是我自己建Physical Standby,按照下面的步骤一步我一步,当然,打造成功,以下步骤可以作为建筑物Data Guard结构操作手册. HA和DG差额:HA:可以做IP切换自己主动  DG ...

  9. ACdreamoj1110(多重背包)

    意甲冠军:多个裸露的双肩背包.水的问题. 解决方法:然背包一样,仅仅只是加一个数组,记录着每一个物品用过的次数,多于存储量时就pass不更新. 另一种方法是将每一个物品用二进制压缩处理.第一个代码比較 ...

  10. OpenCV(C++接口)学习笔记1-图像读取、显示、保存

    OpenCV在2.0加入版本号之后C++接口函数,学习前C语言的接口功能.现在OpenCV它已被发展到2.4.9版本号,所以,我决定学习C++接口函数,与步伐. 1.创建图像 cv::Mat imag ...