自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (31)
  • 收藏
  • 关注

原创 全国行政区划分简单分析

从国家统计局网站(2018年统计用区划代码和城乡划分代码(截止2018年10月31日))获取了一份省、市、区、镇、村的数据。数据下载地址(MySQL):https://download.csdn.net/download/luojxun/111886931、简单总结一下爬取数据需要注意事项(网上有不少爬取国家统计局的这份数据,下载了好多,要么不全,要么是有错。本文提供的数据核对了一下,没有...

2019-05-21 11:18:22 1367

原创 error C2065: 'DirectInputCreate' : undeclared identifier

www.mvps.org/directx/faq/directx_general_issues.htm#dinputcreateQ. When attempting to compile under the DirectX 8 SDK, I recieve a compiler error stating that  DirectInputCreateEx or DirectInputCr

2010-04-18 22:47:00 3769 1

原创 尽量不要使用gb2312避免乱码

查阅以下几种编码  GB2312双字节,定长包括一二级汉字和9区符号高位低位一样,都是从0xA1~0xFE汉字编码范围是0xB0A1~0xF7FE GBK双字节,定长兼容GB2312编码范围:0x8140~0xFEFE所有字符都可以映射到Unicode2.0 GB18030-2000(GBK2K)收藏少数民族字型不定长,包含二字节部分和四字节部分二字节部分兼容GBK四字

2010-04-06 11:02:00 7278

原创 开源的游戏引擎irrlicht中不使用比较、条件、三元运算求最值与中值的代码

看过论坛里很多人问这个问题,呵呵,其实在开源的游戏引擎irrlicht的1.6版本里有相当好的解决解决方案。所在文件名为irrMath.h typedef __int32   s32; 1、最小值inline s32 s32_min(s32 a, s32 b){    const s32 mask = (a - b) >> 31; // 取得a-b的符号位    ret

2010-02-09 22:50:00 941

原创 谈PHP的二叉树的表示

PHP已经发行到了5.2.10了,5.3.0rc4也已公布。6.0早就出了测试版。PHP是日趋完美。呵呵但是在C++/C中有个重要的概念就是链表。而链表中有个重要概念就是二叉树。实现二叉树关键是一个节点如何表示。我们知道C++/C中可以使用以下代码表示一个二叉树的节点(使用模板):template struct nodeType{    elemType info;  

2009-06-29 15:41:00 3651

原创 firefox兼容在线编辑器资料

网址:https://developer.mozilla.org/en/Midas 摘要如下: 以下是firefox支持的document.execCommand可用参数,虽然有大部分与ie相同但还有部分不同Supported Commands Command Value Description backcolor A color

2009-04-25 16:27:00 989

原创 使用自定义setTimeout和setInterval使之可以传递参数和对象参数

/****************************************************** // // 功能: 修改window.setTimeout,使之可以传递参数和对象参数    // 使用方法: window.setTimeout(回调函数,延迟时间,参数1,参数n)// *************************************************

2009-04-23 11:11:00 772

原创 在线编辑器中换行与内容自动提取

这几天在写在线编辑器,碰到个问题,当使用回车换行时不是你希望的而是对或是对。使用google搜索,在网上找不到满意的答案。有的是使用“return false”解决了ie的插入问题,但是firefox并没有解决。而且这个问题连fckeditor都没解决。呵呵,不知是否有意为之。 可能看了以上的描述还不太明白什么问题。我们做个实验,打开fckeditor切换到源码模式输入test test

2009-04-22 17:25:00 1103

原创 js判断浏览器大全

今天看见有人发了个js判断浏览器,其实在ext里有很好的判断浏览器的代码,而且可以说是大全,呵呵代码在ext里的src/core/ext.js下最新的ext3.0beat1的代码如下:var idSeed = 0,        ua = navigator.userAgent.toLowerCase(),        check = function(r){           

2009-04-18 15:38:00 10168 1

原创 透明层覆盖在另一层上,透明层在ie6下不能响应事件的解决

     ie6下,当使用一个透明层覆盖在另一层上时,这个透明层就不能响应事件。(ie7和ie8下是否有该问题,就不知道了。)而firefox下是可以响应事件的。如何解决这一问题呢?Google上搜不到该问题的答案。    不过幸好,ext-core-3.0-beta1发布了,发现在他的examples里有一个lightbox,里面的例子就解决了这问题。他是使用标签作为覆盖层的。找到他的css

2009-04-11 11:46:00 2366

原创 firefox可以通过javascript控制Windows Media Player 11了

以前使用Windows Media Player 9时查看过sdk并没有发现ff可以通过js可以控制Media Player,今天翻看微软的msdn里的Windows Media Player 11 SDK发现firefox居然也能使用js控制Media Player了。看Using the Windows Media Player Control with Firefox 看表格:

2009-03-22 17:44:00 3832

原创 用源码在ubuntu 8.04.1上安装 compiz-fusion 0.7.8

 ubuntu 8.10终于在10月30日正式发布了,怀着迫切的心情下载了ubuntu 8.10的dvd版,(这个链接是官方链接,最近特慢估计是下载的人太多)并安装了一下,但非常遗憾。没有我的显卡受限驱动(nvidia gforce2 mx400),打开受限驱动里是空的。也就意味着不能玩3d特效了,失望中。     要知道在ubuntu 8.04 和 8.04.1里的默认compiz-funs

2008-11-03 17:30:00 2038

原创 解决网页中iframe刷新ie进度条不结束的问题

当一个页面中包含有一个iframe时,并且iframe使用的是动态页面就会出现当iframe刷新时,页面已经结束,ie状态栏里的进度条却结束不了的现象。   如何结束这个ie的进度条,这问题可能困扰了很多人。其实要解决这问题并不难。   首先页面包含一个如下的隐藏超链接。  其中 endIeStatus()是个什么也不做的函数function endIeStatus(){}

2008-09-27 20:44:00 3700

原创 关于base64加密

今天研究了一下base64加密,base64加密算法在加密要求不高的网络通信中应用非常广泛。你若有兴趣打开Local Settings/Temporary Internet Files即ie的缓存或有时在ie地址栏里,你可以看到类似‘GVkIHN0cmluZw==’的字符串,这字符串就是经过base64加密的。 原理就是1.将字符串中的每个字符转换成8位的2进制数(位数不够在高位加0,

2008-09-25 17:37:00 3701

原创 改进的php验证码生成程序

上一篇文章说的验证码生成,最后得到的程序在使用中你会发现有个问题,就是生成的验证码有时会不好辨认。干扰线越多情况就越严重。如下图:(5条干扰线的效果)(10条干扰线的效果)其中的第2个数字是1还是7,不太好辨认。我实验了一下生成的容易分辨的验证码大概在80% - 90%间。如果去除干扰线效果就好很多,基本都能辨认出来。但是图片简单了容易让别人使用程序给识别出来。不是好办法。,再分析

2008-09-25 17:11:00 4340 2

原创 使用php生成验证码

很久没发blog了,呵呵,今天讨论一下验证码生成的问题。常上网的人都知道很多网站在发帖时都要输入验证码,这是因为网站为防止别人使用程序在网站上自动发布大量的垃圾信息(如果是人为的危害就不是太大,不可能短时间发个几千甚至上万信息)。因此就诞生了验证码,在发贴时要验证码正确才能发表成功。这方法大概是现在为止最简单有效的方法了,因为要使用程序去辨认上面的字符难度系数相当高。我使用php写了个验证码生

2008-09-25 16:46:00 1078

原创 javascript中动态绑定带参数的函数

有如下代码:点我改变字符function testChange(){    document.getElementById(test).innerHTML = "字符改变了,呵呵";}document.getElementById(test).onclick = testChange;这是大家都知道的方法但是如果是点我改变字符functi

2008-09-14 14:38:00 894

原创 ajax返回值的问题的一个例子

这两天偶然看到有人问ajax返回值的问题,呵呵,恰巧我这几天也在做这方面的一个东西。顺便解决一下这问题大家可以看看以下代码   ajax测试  // 生成xhr对象(兼容各种浏览器)   function createXHR()   {    var xhr;            try    {     xhr = new ActiveXObject("Msxml2.XMLHTTP");   

2008-05-30 12:18:00 6092 1

原创 在线编辑器一个关键问的题解决

最近自己做了个在线编辑器,呵呵,fck功能是强大,但好多功能用不上而且文件有点大,上万行代码在互联网上下载要花不少时间,初始化又要花一些时间。运行起来有点慢。还是自己写个好点,呵呵。下载了几个别人的代码参考,发现并不是想象的那么难,至于打开iframe的编辑方式和如何取得选中的代码就略去不说了google一下,呵呵。其实在线编辑器的大部分功能使用javascript的execCommand函数都可

2008-05-14 18:15:00 812

原创 favicon.ico在ie6中不显示的问题的解决

最近想在ie的地址栏中显示个ico图标google了一下在页面的里加入以下两行代码。 并且在网站的根目录下面放一个favicon.ico文件当你打开页面时地址栏中的图标就会变成你的ico图标(firefox,和ie7下)。但是ie6下不显示,再google了一下,呵呵,发现好多都说ie6不支持。其实不是的,我发现http://www.mandriva.com/中就正常显示,太奇怪了,我下载了

2008-05-14 16:56:00 5966 3

带gc9a01驱动ESP32S3的MicroPython v1.22.1固件

使用 esp-idf v5.1.2 编译 esp32-s3 带 gc9a01 驱动的MicroPython v1.22.1固件 可以适用微雪 ESP32-S3-Touch-LCD-1.28 圆形屏固件 具体模块刷完固件后使用 help('modules') 查看 微雪官方wiki固件Micropython版本好像是1.19.1

2024-02-03

2018年统计用区划代码和城乡划分代码(截止2018年10月31日,修正版)

修正上一版生僻字乱码问题 数据来源:http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2018/ 其中:province:31条,city:343条,district:3,285条,town:43,563条,village:666,260条 解压后60.3M 数据表关系看字段名就能明白 使用MySQL8.0.12 使用Navicat导出的数据 生成的插入语句是标准的MySQL语句,如果出现导入失败可能是MySQL版过低,在理解文件中的生成表的MySQL语句基础上,重建数据表就可以解决问题。

2019-05-20

Learning Android

Oreilly 2011年的新书,内容看书名就知道了.

2011-06-25

Java The Good Parts(Java语言精粹)(英文版)

  这是一本几乎只讲java优点的书。    jim waldo先生是原sun微系统公司实验室的杰出工程师,他亲历并参与了java从技术萌生、发展到崛起的整个过程。在这《java语言精粹》里,jim总结了他所认为的java语言及其环境的诸多精良部分,包括:类型系统、异常处理、包机制、垃圾回收、java虚拟机、javadoc、集合、远程方法调用和并发机制。另外,他还从开发者的角度分析了在java技术周围发展起来的“开发者生态环境”。如果要把java技术精炼到只含有它的最佳部分,在jim看来,以上这些就是必须保留的部分。    作者还从历史的视角阐述了java中某些技术的发展历程,解释了某些问题之所以存在的原因,使人读后有一种“知其所以然”的通透感。阅读《java语言精粹》不但能使你重温java的核心机制,还可以使你了解语言的设计者和实现者们是如何权衡、折中并维护各种不同的语言特性,从而成就了这门流行的系统级通用编程语言的。    相信不管是java语言的学习者,还是使用java语言构建软件系统的开发者,以及对程序设计语言感兴趣的技术爱好者,都可以从《java语言精粹》中汲取营养。

2011-06-23

编译原理技术与工具(英文版)

之前由于权限问题,分割成两部分上传,老有人只下载了一部分,反映下载了不能打开,现在重新完整传一下。 这就是有"龙书"之称的编译原理方面的书。但不是最新版。

2011-06-23

数据可视化之美(Beautiful Visualization)(英文版)

  可视化是数据描述的图形表示,旨在一目了然地揭示数据中的复杂信息。可视化的典型如纽约地铁图和人脑图。成功的可视化的美丽之处既在于其艺术设计,也在于其通过对细节的优雅展示,能够有效地产生对数据的洞察和新的理解。    在本书中,20多位可视化专家包括艺术家、设计师、评论家、科学家、分析师、统计学家等,展示了他们如何在各自的学科领域内开展项目。他们共同展示了可视化所能实现的功能以及如何使用它来改变世界。在《数据可视化之美》中,你将:    · 通过简单的可视化实践探索讲故事的重要性。    · 了解颜色如何传达我们尚未充分意识到而大脑已经识别出的信息。    · 发现我们购买的书籍和我们的交际圈如何揭示内心的自我。    · 通过对民航交通的可视化探索识别航空旅行的混乱的一种方法。    · 揭秘研究人员如何调查未知问题,包括从最初的草图到发表的论文。 121

2011-06-23

gameassassin(含D3DX9_40.dll)

网络游戏工具是一个针对网络游戏和3D游戏的辅助工具,具有设置3D游戏的线框显示模式,截获3D游戏的模型贴图数据等功能,针对于网络游戏,此软件能够接获游戏所发出并且接受的网络消息,并且能够向服务器直接发送外部的自定义数据。 本资源带有D3DX9_40.dll解压后无需安装即可使用

2010-08-14

Ajax Design Patterns Jun 2006(ajax设计模式)

Ajax, or Asynchronous JavaScript and XML, exploded onto the scene in the spring of 2005 and remains the hottest story among web developers. With its rich combination of technologies, Ajax provides a strong foundation for creating interactive web applications with XML or JSON-based web services by using JavaScript in the browser to process the web server response. Ajax Design Patterns shows you best practices that can dramatically improve your web development projects. It investigates how others have successfully dealt with conflicting design principles in the past and then relays that information directly to you.

2008-11-16

Beginning Ajax with ASP.NET

Ajax has the power to revolutionize the way web-based applications are designed. This book provides you with a thorough working knowledge of what Ajax has to offer and how to take full advantage of it in your application development. Following an exploration of how Ajax works with .NET, you'll get acquainted with DHTML, the role of JavaScript and the Document Object Model, and the XMLHttpRequest Object, which is the foundation of Ajax. Then you will examine the Ajax-type features built into ASP.NET and explore the Ajax.NET Professional Library in detail. Finally, you will explore client scripting as well as building and using controls with Microsoft's Atlas. With an entire chapter devoted to debugging, you will have all you need to use this cutting-edge technology. What you will learn from this book * What you can do with the open source Ajax.NET Professional Library * How to use the corresponding functionality, Asynchronous Client Script Callbacks, that comes with ASP.NET 2.0 * Techniques for using the XMLHttpRequest Object to communicate between the client web browser and the server * An overview of XML, XSLT, and other ways to send data between client and server * How to integrate Microsoft's Atlas with many of the services available in ASP.NET 2.0 Who this book is for This book is for programmers who use ASP.NET and are just starting to use Ajax technologies to create more responsive, modern applications. Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that will guide you through all the techniques involved.

2008-11-16

HTML Dog - The Best-Practice Guide to XHTML and CSS (2007)

这名字挺怪,HTML Dog 怎么翻“HTML 狗”?又号称最优实践(谷歌金山翻译为最优方法),所以发上来共享一下。看名字就知道是讲HTML XHTML CSS。反正本人共享从不收费,下载了当参考吧。

2008-09-28

CSS and HTML Design Patterns (css和html设计模式 英文版)

现在什么都“模式”了,发现个css和html模式,也没看,发上来共享一下。

2008-09-28

php的官方手册带例子

文件生成时间:Wed Mar 19 04:04:31 2008<br>大小有18M多<br>带有大量例子<br><br>注意:如果出现无法显示,请取消文件的只读属性。<br>

2008-07-02

apache2.2中文手册

apache2.2中文手册

2008-05-10

C++编程你也行(英文版)

本书是一本优秀的C++教材,内容包括:基础类型、操作符和简单变量,循环和决策,命名空间和C++标准库,用C++编写函数,行为、序列点和求值顺序,泛型函数,用户自定义类型、指针、智能指针、迭代器和动态实例,动态对象创建和多态对象,流、文件和持久性,异常,重载操作符和转换操作符,容器、迭代器和算法等。作者重点介绍类、模板、操作符重载、异常、命名空间等从事现代C++编程不可或缺的语言特性,以及容器、算法、迭代器等重要的标准库组件。本书通过例子代码和“代码详解”,将C++的精华展示给读者。.<br>本书可供完全不同的读者群体使用。无论你是否有编程基础,都可以从本书中受益。<br>学习C++的过程可能很枯燥。为了使学习过程生动有趣,Francis Glassborow以其独树一帜的激励风格讲解编程任务和工具,使你得以迅速开始编程。他的教学方式鼓舞人心,并提供了亲手打造的例子和项目。图形用户界面(GUI)扩展可为你提供即时反馈,你可从创建GUI程序中获得更多的乐趣。每一章末尾的参考素材则为你提供进一步的帮助。..<br>本书带有一款完全可移植的开源编译器,以及针对Windows和Linux的IDE。书中广泛地使用了作者的图形库,为你带来丰富的辅助素材,以便迅速有效地处理编程任务。<br>如果你已经通过自学掌握了编程基础,或在工作中学会了基本的编程技能,那么本书非读不可!它将把你的编程水平推向更高的层次。在学习过程中你一定会获得许多乐趣!...

2007-11-04

带例子的php中文手册

呵呵,这是我在网上搜到的最好的php手册,13m大小带有例子。相信很多人用得着。

2007-10-23

Essential PHP Security -PHP安全基础(中文图书)

最近读了一本有关php安全方面的书觉得还不错。发出来<br>原地址在:http://www.phpchina.com/bbs/viewthread.php?tid=4267&extra=page%3D1

2007-10-23

mysql5.1手册中文版

mysql5.1手册中文版

2007-07-29

在线编辑器FCKeditor_2.4.2

FCKeditor - The text editor for Internet - http://www.fckeditor.net<br/>Copyright (C) 2003-2007 Frederico Caldeira Knabben<br/><br/>Licensed under the terms of any of the following licenses at your<br/>choice:<br/><br/> - GNU General Public License Version 2 or later (the "GPL")<br/> http://www.gnu.org/licenses/gpl.html<br/> (See Appendix A)<br/><br/> - GNU Lesser General Public License Version 2.1 or later (the "LGPL")<br/> http://www.gnu.org/licenses/lgpl.html<br/> (See Appendix B)<br/><br/> - Mozilla Public License Version 1.1 or later (the "MPL")<br/> http://www.mozilla.org/MPL/MPL-1.1.html<br/> (See Appendix C)<br/><br/>You are not required to, but if you want to explicitly declare the<br/>license you have chosen to be bound to when using, reproducing,<br/>modifying and distributing this software, just include a text file<br/>titled "legal.txt" in your version of this software, indicating your<br/>license choice. In any case, your choice will not restrict any<br/>recipient of your version of this software to use, reproduce, modify<br/>and distribute this software under any of the above licenses.<br/><br/>Appendix A: The GPL License<br/>===========================<br/><br/> GNU GENERAL PUBLIC LICENSE<br/> Version 2, June 1991<br/><br/> Copyright (C) 1989, 1991 Free Software Foundation, Inc.,<br/> 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA<br/> Everyone is permitted to copy and distribute verbatim copies<br/> of this license document, but changing it is not allowed.<br/><br/> Preamble<br/><br/> The licenses for most software are designed to take away your<br/>freedom to share and change it. By contrast, the GNU General Public<br/>License is intended to guarantee your freedom to share and change free<br/>software--to make sure the software is free for all its users. This<br/>General Public License applies to most of the Free Software<br/>Foundation's software and to any other program whose authors commit to<br/>using it. (Some other Free Software Foundation software is covered by<br/>the GNU Lesser General Public License instead.) You can apply it to<br/>your programs, too.<br/><br/> When we speak of free software, we are referring to freedom, not<br/>price. Our General Public Licenses are designed to make sure that you<br/>have the freedom to distribute copies of free software (and charge for<br/>this service if you wish), that you receive source code or can get it<br/>if you want it, that you can change the software or use pieces of it<br/>in new free programs; and that you know you can do these things.<br/><br/> To protect your rights, we need to make restrictions that forbid<br/>anyone to deny you these rights or to ask you to surrender the rights.<br/>These restrictions translate to certain responsibilities for you if you<br/>distribute copies of the software, or if you modify it.<br/><br/> For example, if you distribute copies of such a program, whether<br/>gratis or for a fee, you must give the recipients all the rights that<br/>you have. You must make sure that they, too, receive or can get the<br/>source code. And you must show them these terms so they know their<br/>rights.<br/><br/> We protect your rights with two steps: (1) copyright the software, and<br/>(2) offer you this license which gives you legal permission to copy,<br/>distribute and/or modify the software.<br/><br/> Also, for each author's protection and ours, we want to make certain<br/>that everyone understands that there is no warranty for this free<br/>software. If the software is modified by someone else and passed on, we<br/>want its recipients to know that what they have is not the original, so<br/>that any problems introduced by others will not reflect on the original<br/>authors' reputations.<br/><br/> Finally, any free program is threatened constantly by software<br/>patents. We wish to avoid the danger that redistributors of a free<br/>program will individually obtain patent licenses, in effect making the<br/>program proprietary. To prevent this, we have made it clear that any<br/>patent must be licensed for everyone's free use or not licensed at all.<br/><br/> The precise terms and conditions for copying, distribution and<br/>modification follow.<br/><br/> GNU GENERAL PUBLIC LICENSE<br/> TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION<br/><br/> 0. This License applies to any program or other work which contains<br/>a notice placed by the copyright holder saying it may be distributed<br/>under the terms of this General Public License. The "Program", below,<br/>refers to any such program or work, and a "work based on the Program"<br/>means either the Program or any derivative work under copyright law:<br/>that is to say, a work containing the Program or a portion of it,<br/>either verbatim or with modifications and/or translated into another<br/>language. (Hereinafter, translation is included without limitation in<br/>the term "modification".) Each licensee is addressed as "you".<br/><br/>Activities other than copying, distribution and modification are not<br/>covered by this License; they are outside its scope. The act of<br/>running the Program is not restricted, and the output from the Program<br/>is covered only if its contents constitute a work based on the<br/>Program (independent of having been made by running the Program).<br/>Whether that is true depends on what the Program does.<br/><br/> 1. You may copy and distribute verbatim copies of the Program's<br/>source code as you receive it, in any medium, provided that you<br/>conspicuously and appropriately publish on each copy an appropriate<br/>copyright notice and disclaimer of warranty; keep intact all the<br/>notices that refer to this License and to the absence of any warranty;<br/>and give any other recipients of the Program a copy of this License<br/>along with the Program.<br/><br/>You may charge a fee for the physical act of transferring a copy, and<br/>you may at your option offer warranty protection in exchange for a fee.<br/><br/> 2. You may modify your copy or copies of the Program or any portion<br/>of it, thus forming a work based on the Program, and copy and<br/>distribute such modifications or work under the terms of Section 1<br/>above, provided that you also meet all of these conditions:<br/><br/> a) You must cause the modified files to carry prominent notices<br/> stating that you changed the files and the date of any change.<br/><br/> b) You must cause any work that you distribute or publish, that in<br/> whole or in part contains or is derived from the Program or any<br/> part thereof, to be licensed as a whole at no charge to all third<br/> parties under the terms of this License.<br/><br/> c) If the modified program normally reads commands interactively<br/> when run, you must cause it, when started running for such<br/> interactive use in the most ordinary way, to print or display an<br/> announcement including an appropriate copyright notice and a<br/> notice that there is no warranty (or else, saying that you provide<br/> a warranty) and that users may redistribute the program under<br/> these conditions, and telling the user how to view a copy of this<br/> License. (Exception: if the Program itself is interactive but<br/> does not normally print such an announcement, your work based on<br/> the Program is not required to print an announcement.)<br/><br/>These requirements apply to the modified work as a whole. If<br/>identifiable sections of that work are not derived from the Program,<br/>and can be reasonably considered independent and separate works in<br/>themselves, then this License, and its terms, do not apply to those<br/>sections when you distribute them as separate works. But when you<br/>distribute the same sections as part of a whole which is a work based<br/>on the Program, the distribution of the whole must be on the terms of<br/>this License, whose permissions for other licensees extend to the<br/>entire whole, and thus to each and every part regardless of who wrote it.<br/><br/>Thus, it is not the intent of this section to claim rights or contest<br/>your rights to work written entirely by you; rather, the intent is to<br/>exercise the right to control the distribution of derivative or<br/>collective works based on the Program.<br/><br/>In addition, mere aggregation of another work not based on the Program<br/>with the Program (or with a work based on the Program) on a volume of<br/>a storage or distribution medium does not bring the other work under<br/>the scope of this License.<br/><br/> 3. You may copy and distribute the Program (or a work based on it,<br/>under Section 2) in object code or executable form under the terms of<br/>Sections 1 and 2 above provided that you also do one of the following:<br/><br/> a) Accompany it with the complete corresponding machine-readable<br/> source code, which must be distributed under the terms of Sections<br/> 1 and 2 above on a medium customarily used for software interchange; or,<br/><br/> b) Accompany it with a written offer, valid for at least three<br/> years, to give any third party, for a charge no more than your<br/> cost of physically performing source distribution, a complete<br/> machine-readable copy of the corresponding source code, to be<br/> distributed under the terms of Sections 1 and 2 above on a medium<br/> customarily used for software interchange; or,<br/><br/> c) Accompany it with the information you received as to the offer<br/> to distribute corresponding source code. (This alternative is<br/> allowed only for noncommercial distribution and only if you<br/> received the program in object code or executable form with such<br/> an offer, in accord with Subsection b above.)<br/><br/>The source code for a work means the preferred form of the work for<br/>making modifications to it. For an executable work, complete source<br/>code means all the source code for all modules it contains, plus any<br/>associated interface definition files, plus the scripts used to<br/>control compilation and installation of the executable. However, as a<br/>special exception, the source code distributed need not include<br/>anything that is normally distributed (in either source or binary<br/>form) with the major components (compiler, kernel, and so on) of the<br/>operating system on which the executable runs, unless that component<br/>itself accompanies the executable.<br/><br/>If distribution of executable or object code is made by offering<br/>access to copy from a designated place, then offering equivalent<br/>access to copy the source code from the same place counts as<br/>distribution of the source code, even though third parties are not<br/>compelled to copy the source along with the object code.<br/><br/> 4. You may not copy, modify, sublicense, or distribute the Program<br/>except as expressly provided under this License. Any attempt<br/>otherwise to copy, modify, sublicense or distribute the Program is<br/>void, and will automatically terminate your rights under this License.<br/>However, parties who have received copies, or rights, from you under<br/>this License will not have their licenses terminated so long as such<br/>parties remain in full compliance.<br/><br/> 5. You are not required to accept this License, since you have not<br/>signed it. However, nothing else grants you permission to modify or<br/>distribute the Program or its derivative works. These actions are<br/>prohibited by law if you do not accept this License. Therefore, by<br/>modifying or distributing the Program (or any work based on the<br/>Program), you indicate your acceptance of this License to do so, and<br/>all its terms and conditions for copying, distributing or modifying<br/>the Program or works based on it.<br/><br/> 6. Each time you redistribute the Program (or any work based on the<br/>Program), the recipient automatically receives a license from the<br/>original licensor to copy, distribute or modify the Program subject to<br/>these terms and conditions. You may not impose any further<br/>restrictions on the recipients' exercise of the rights granted herein.<br/>You are not responsible for enforcing compliance by third parties to<br/>this License.<br/><br/> 7. If, as a consequence of a court judgment or allegation of patent<br/>infringement or for any other reason (not limited to patent issues),<br/>conditions are imposed on you (whether by court order, agreement or<br/>otherwise) that contradict the conditions of this License, they do not<br/>excuse you from the conditions of this License. If you cannot<br/>distribute so as to satisfy simultaneously your obligations under this<br/>License and any other pertinent obligations, then as a consequence you<br/>may not distribute the Program at all. For example, if a patent<br/>license would not permit royalty-free redistribution of the Program by<br/>all those who receive copies directly or indirectly through you, then<br/>the only way you could satisfy both it and this License would be to<br/>refrain entirely from distribution of the Program.<br/><br/>If any portion of this section is held invalid or unenforceable under<br/>any particular circumstance, the balance of the section is intended to<br/>apply and the section as a whole is intended to apply in other<br/>circumstances.<br/><br/>It is not the purpose of this section to induce you to infringe any<br/>patents or other property right claims or to contest validity of any<br/>such claims; this section has the sole purpose of protecting the<br/>integrity of the free software distribution system, which is<br/>implemented by public license practices. Many people have made<br/>generous contributions to the wide range of software distributed<br/>through that system in reliance on consistent application of that<br/>system; it is up to the author/donor to decide if he or she is willing<br/>to distribute software through any other system and a licensee cannot<br/>impose that choice.<br/><br/>This section is intended to make thoroughly clear what is believed to<br/>be a consequence of the rest of this License.<br/><br/> 8. If the distribution and/or use of the Program is restricted in<br/>certain countries either by patents or by copyrighted interfaces, the<br/>original copyright holder who places the Program under this License<br/>may add an explicit geographical distribution limitation excluding<br/>those countries, so that distribution is permitted only in or among<br/>countries not thus excluded. In such case, this License incorporates<br/>the limitation as if written in the body of this License.<br/><br/> 9. The Free Software Foundation may publish revised and/or new versions<br/>of the General Public License from time to time. Such new versions will<br/>be similar in spirit to the present version, but may differ in detail to<br/>address new problems or concerns.<br/><br/>Each version is given a distinguishing version number. If the Program<br/>specifies a version number of this License which applies to it and "any<br/>later version", you have the option of following the terms and conditions<br/>either of that version or of any later version published by the Free<br/>Software Foundation. If the Program does not specify a version number of<br/>this License, you may choose any version ever published by the Free Software<br/>Foundation.<br/><br/> 10. If you wish to incorporate parts of the Program into other free<br/>programs whose distribution conditions are different, write to the author<br/>to ask for permission. For software which is copyrighted by the Free<br/>Software Foundation, write to the Free Software Foundation; we sometimes<br/>make exceptions for this. Our decision will be guided by the two goals<br/>of preserving the free status of all derivatives of our free software and<br/>of promoting the sharing and reuse of software generally.<br/><br/> NO WARRANTY<br/><br/> 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY<br/>FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN<br/>OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES<br/>PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED<br/>OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF<br/>MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS<br/>TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE<br/>PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,<br/>REPAIR OR CORRECTION.<br/><br/> 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING<br/>WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR<br/>REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,<br/>INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING<br/>OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED<br/>TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY<br/>YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER<br/>PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE<br/>POSSIBILITY OF SUCH DAMAGES.<br/><br/> END OF TERMS AND CONDITIONS<br/><br/><br/>Appendix B: The LGPL License<br/>============================<br/><br/> GNU LESSER GENERAL PUBLIC LICENSE<br/> Version 2.1, February 1999<br/><br/> Copyright (C) 1991, 1999 Free Software Foundation, Inc.<br/> 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA<br/> Everyone is permitted to copy and distribute verbatim copies<br/> of this license document, but changing it is not allowed.<br/><br/>[This is the first released version of the Lesser GPL. It also counts<br/> as the successor of the GNU Library Public License, version 2, hence<br/> the version number 2.1.]<br/><br/> Preamble<br/><br/> The licenses for most software are designed to take away your<br/>freedom to share and change it. By contrast, the GNU General Public<br/>Licenses are intended to guarantee your freedom to share and change<br/>free software--to make sure the software is free for all its users.<br/><br/> This license, the Lesser General Public License, applies to some<br/>specially designated software packages--typically libraries--of the<br/>Free Software Foundation and other authors who decide to use it. You<br/>can use it too, but we suggest you first think carefully about whether<br/>this license or the ordinary General Public License is the better<br/>strategy to use in any particular case, based on the explanations below.<br/><br/> When we speak of free software, we are referring to freedom of use,<br/>not price. Our General Public Licenses are designed to make sure that<br/>you have the freedom to distribute copies of free software (and charge<br/>for this service if you wish); that you receive source code or can get<br/>it if you want it; that you can change the software and use pieces of<br/>it in new free programs; and that you are informed that you can do<br/>these things.<br/><br/> To protect your rights, we need to make restrictions that forbid<br/>distributors to deny you these rights or to ask you to surrender these<br/>rights. These restrictions translate to certain responsibilities for<br/>you if you distribute copies of the library or if you modify it.<br/><br/> For example, if you distribute copies of the library, whether gratis<br/>or for a fee, you must give the recipients all the rights that we gave<br/>you. You must make sure that they, too, receive or can get the source<br/>code. If you link other code with the library, you must provide<br/>complete object files to the recipients, so that they can relink them<br/>with the library after making changes to the library and recompiling<br/>it. And you must show them these terms so they know their rights.<br/><br/> We protect your rights with a two-step method: (1) we copyright the<br/>library, and (2) we offer you this license, which gives you legal<br/>permission to copy, distribute and/or modify the library.<br/><br/> To protect each distributor, we want to make it very clear that<br/>there is no warranty for the free library. Also, if the library is<br/>modified by someone else and passed on, the recipients should know<br/>that what they have is not the original version, so that the original<br/>author's reputation will not be affected by problems that might be<br/>introduced by others.<br/><br/> Finally, software patents pose a constant threat to the existence of<br/>any free program. We wish to make sure that a company cannot<br/>effectively restrict the users of a free program by obtaining a<br/>restrictive license from a patent holder. Therefore, we insist that<br/>any patent license obtained for a version of the library must be<br/>consistent with the full freedom of use specified in this license.<br/><br/> Most GNU software, including some libraries, is covered by the<br/>ordinary GNU General Public License. This license, the GNU Lesser<br/>General Public License, applies to certain designated libraries, and<br/>is quite different from the ordinary General Public License. We use<br/>this license for certain libraries in order to permit linking those<br/>libraries into non-free programs.<br/><br/> When a program is linked with a library, whether statically or using<br/>a shared library, the combination of the two is legally speaking a<br/>combined work, a derivative of the original library. The ordinary<br/>General Public License therefore permits such linking only if the<br/>entire combination fits its criteria of freedom. The Lesser General<br/>Public License permits more lax criteria for linking other code with<br/>the library.<br/><br/> We call this license the "Lesser" General Public License because it<br/>does Less to protect the user's freedom than the ordinary General<br/>Public License. It also provides other free software developers Less<br/>of an advantage over competing non-free programs. These disadvantages<br/>are the reason we use the ordinary General Public License for many<br/>libraries. However, the Lesser license provides advantages in certain<br/>special circumstances.<br/><br/> For example, on rare occasions, there may be a special need to<br/>encourage the widest possible use of a certain library, so that it becomes<br/>a de-facto standard. To achieve this, non-free programs must be<br/>allowed to use the library. A more frequent case is that a free<br/>library does the same job as widely used non-free libraries. In this<br/>case, there is little to gain by limiting the free library to free<br/>software only, so we use the Lesser General Public License.<br/><br/> In other cases, permission to use a particular library in non-free<br/>programs enables a greater number of people to use a large body of<br/>free software. For example, permission to use the GNU C Library in<br/>non-free programs enables many more people to use the whole GNU<br/>operating system, as well as its variant, the GNU/Linux operating<br/>system.<br/><br/> Although the Lesser General Public License is Less protective of the<br/>users' freedom, it does ensure that the user of a program that is<br/>linked with the Library has the freedom and the wherewithal to run<br/>that program using a modified version of the Library.<br/><br/> The precise terms and conditions for copying, distribution and<br/>modification follow. Pay close attention to the difference between a<br/>"work based on the library" and a "work that uses the library". The<br/>former contains code derived from the library, whereas the latter must<br/>be combined with the library in order to run.<br/><br/> GNU LESSER GENERAL PUBLIC LICENSE<br/> TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION<br/><br/> 0. This License Agreement applies to any software library or other<br/>program which contains a notice placed by the copyright holder or<br/>other authorized party saying it may be distributed under the terms of<br/>this Lesser General Public License (also called "this License").<br/>Each licensee is addressed as "you".<br/><br/> A "library" means a collection of software functions and/or data<br/>prepared so as to be conveniently linked with application programs<br/>(which use some of those functions and data) to form executables.<br/><br/> The "Library", below, refers to any such software library or work<br/>which has been distributed under these terms. A "work based on the<br/>Library" means either the Library or any derivative work under<br/>copyright law: that is to say, a work containing the Library or a<br/>portion of it, either verbatim or with modifications and/or translated<br/>straightforwardly into another language. (Hereinafter, translation is<br/>included without limitation in the term "modification".)<br/><br/> "Source code" for a work means the preferred form of the work for<br/>making modifications to it. For a library, complete source code means<br/>all the source code for all modules it contains, plus any associated<br/>interface definition files, plus the scripts used to control compilation<br/>and installation of the library.<br/><br/> Activities other than copying, distribution and modification are not<br/>covered by this License; they are outside its scope. The act of<br/>running a program using the Library is not restricted, and output from<br/>such a program is covered only if its contents constitute a work based<br/>on the Library (independent of the use of the Library in a tool for<br/>writing it). Whether that is true depends on what the Library does<br/>and what the program that uses the Library does.<br/><br/> 1. You may copy and distribute verbatim copies of the Library's<br/>complete source code as you receive it, in any medium, provided that<br/>you conspicuously and appropriately publish on each copy an<br/>appropriate copyright notice and disclaimer of warranty; keep intact<br/>all the notices that refer to this License and to the absence of any<br/>warranty; and distribute a copy of this License along with the<br/>Library.<br/><br/> You may charge a fee for the physical act of transferring a copy,<br/>and you may at your option offer warranty protection in exchange for a<br/>fee.<br/><br/> 2. You may modify your copy or copies of the Library or any portion<br/>of it, thus forming a work based on the Library, and copy and<br/>distribute such modifications or work under the terms of Section 1<br/>above, provided that you also meet all of these conditions:<br/><br/> a) The modified work must itself be a software library.<br/><br/> b) You must cause the files modified to carry prominent notices<br/> stating that you changed the files and the date of any change.<br/><br/> c) You must cause the whole of the work to be licensed at no<br/> charge to all third parties under the terms of this License.<br/><br/> d) If a facility in the modified Library refers to a function or a<br/> table of data to be supplied by an application program that uses<br/> the facility, other than as an argument passed when the facility<br/> is invoked, then you must make a good faith effort to ensure that,<br/> in the event an application does not supply such function or<br/> table, the facility still operates, and performs whatever part of<br/> its purpose remains meaningful.<br/><br/> (For example, a function in a library to compute square roots has<br/> a purpose that is entirely well-defined independent of the<br/> application. Therefore, Subsection 2d requires that any<br/> application-supplied function or table used by this function must<br/> be optional: if the application does not supply it, the square<br/> root function must still compute square roots.)<br/><br/>These requirements apply to the modified work as a whole. If<br/>identifiable sections of that work are not derived from the Library,<br/>and can be reasonably considered independent and separate works in<br/>themselves, then this License, and its terms, do not apply to those<br/>sections when you distribute them as separate works. But when you<br/>distribute the same sections as part of a whole which is a work based<br/>on the Library, the distribution of the whole must be on the terms of<br/>this License, whose permissions for other licensees extend to the<br/>entire whole, and thus to each and every part regardless of who wrote<br/>it.<br/><br/>Thus, it is not the intent of this section to claim rights or contest<br/>your rights to work written entirely by you; rather, the intent is to<br/>exercise the right to control the distribution of derivative or<br/>collective works based on the Library.<br/><br/>In addition, mere aggregation of another work not based on the Library<br/>with the Library (or with a work based on the Library) on a volume of<br/>a storage or distribution medium does not bring the other work under<br/>the scope of this License.<br/><br/> 3. You may opt to apply the terms of the ordinary GNU General Public<br/>License instead of this License to a given copy of the Library. To do<br/>this, you must alter all the notices that refer to this License, so<br/>that they refer to the ordinary GNU General Public License, version 2,<br/>instead of to this License. (If a newer version than version 2 of the<br/>ordinary GNU General Public License has appeared, then you can specify<br/>that version instead if you wish.) Do not make any other change in<br/>these notices.<br/><br/> Once this change is made in a given copy, it is irreversible for<br/>that copy, so the ordinary GNU General Public License applies to all<br/>subsequent copies and derivative works made from that copy.<br/><br/> This option is useful when you wish to copy part of the code of<br/>the Library into a program that is not a library.<br/><br/> 4. You may copy and distribute the Library (or a portion or<br/>derivative of it, under Section 2) in object code or executable form<br/>under the terms of Sections 1 and 2 above provided that you accompany<br/>it with the complete corresponding machine-readable source code, which<br/>must be distributed under the terms of Sections 1 and 2 above on a<br/>medium customarily used for software interchange.<br/><br/> If distribution of object code is made by offering access to copy<br/>from a designated place, then offering equivalent access to copy the<br/>source code from the same place satisfies the requirement to<br/>distribute the source code, even though third parties are not<br/>compelled to copy the source along with the object code.<br/><br/> 5. A program that contains no derivative of any portion of the<br/>Library, but is designed to work with the Library by being compiled or<br/>linked with it, is called a "work that uses the Library". Such a<br/>work, in isolation, is not a derivative work of the Library, and<br/>therefore falls outside the scope of this License.<br/><br/> However, linking a "work that uses the Library" with the Library<br/>creates an executable that is a derivative of the Library (because it<br/>contains portions of the Library), rather than a "work that uses the<br/>library". The executable is therefore covered by this License.<br/>Section 6 states terms for distribution of such executables.<br/><br/> When a "work that uses the Library" uses material from a header file<br/>that is part of the Library, the object code for the work may be a<br/>derivative work of the Library even though the source code is not.<br/>Whether this is true is especially significant if the work can be<br/>linked without the Library, or if the work is itself a library. The<br/>threshold for this to be true is not precisely defined by law.<br/><br/> If such an object file uses only numerical parameters, data<br/>structure layouts and accessors, and small macros and small inline<br/>functions (ten lines or less in length), then the use of the object<br/>file is unrestricted, regardless of whether it is legally a derivative<br/>work. (Executables containing this object code plus portions of the<br/>Library will still fall under Section 6.)<br/><br/> Otherwise, if the work is a derivative of the Library, you may<br/>distribute the object code for the work under the terms of Section 6.<br/>Any executables containing that work also fall under Section 6,<br/>whether or not they are linked directly with the Library itself.<br/><br/> 6. As an exception to the Sections above, you may also combine or<br/>link a "work that uses the Library" with the Library to produce a<br/>work containing portions of the Library, and distribute that work<br/>under terms of your choice, provided that the terms permit<br/>modification of the work for the customer's own use and reverse<br/>engineering for debugging such modifications.<br/><br/> You must give prominent notice with each copy of the work that the<br/>Library is used in it and that the Library and its use are covered by<br/>this License. You must supply a copy of this License. If the work<br/>during execution displays copyright notices, you must include the<br/>copyright notice for the Library among them, as well as a reference<br/>directing the user to the copy of this License. Also, you must do one<br/>of these things:<br/><br/> a) Accompany the work with the complete corresponding<br/> machine-readable source code for the Library including whatever<br/> changes were used in the work (which must be distributed under<br/> Sections 1 and 2 above); and, if the work is an executable linked<br/> with the Library, with the complete machine-readable "work that<br/> uses the Library", as object code and/or source code, so that the<br/> user can modify the Library and then relink to produce a modified<br/> executable containing the modified Library. (It is understood<br/> that the user who changes the contents of definitions files in the<br/> Library will not necessarily be able to recompile the application<br/> to use the modified definitions.)<br/><br/> b) Use a suitable shared library mechanism for linking with the<br/> Library. A suitable mechanism is one that (1) uses at run time a<br/> copy of the library already present on the user's computer system,<br/> rather than copying library functions into the executable, and (2)<br/> will operate properly with a modified version of the library, if<br/> the user installs one, as long as the modified version is<br/> interface-compatible with the version that the work was made with.<br/><br/> c) Accompany the work with a written offer, valid for at<br/> least three years, to give the same user the materials<br/> specified in Subsection 6a, above, for a charge no more<br/> than the cost of performing this distribution.<br/><br/> d) If distribution of the work is made by offering access to copy<br/> from a designated place, offer equivalent access to copy the above<br/> specified materials from the same place.<br/><br/> e) Verify that the user has already received a copy of these<br/> materials or that you have already sent this user a copy.<br/><br/> For an executable, the required form of the "work that uses the<br/>Library" must include any data and utility programs needed for<br/>reproducing the executable from it. However, as a special exception,<br/>the materials to be distributed need not include anything that is<br/>normally distributed (in either source or binary form) with the major<br/>components (compiler, kernel, and so on) of the operating system on<br/>which the executable runs, unless that component itself accompanies<br/>the executable.<br/><br/> It may happen that this requirement contradicts the license<br/>restrictions of other proprietary libraries that do not normally<br/>accompany the operating system. Such a contradiction means you cannot<br/>use both them and the Library together in an executable that you<br/>distribute.<br/><br/> 7. You may place library facilities that are a work based on the<br/>Library side-by-side in a single library together with other library<br/>facilities not covered by this License, and distribute such a combined<br/>library, provided that the separate distribution of the work based on<br/>the Library and of the other library facilities is otherwise<br/>permitted, and provided that you do these two things:<br/><br/> a) Accompany the combined library with a copy of the same work<br/> based on the Library, uncombined with any other library<br/> facilities. This must be distributed under the terms of the<br/> Sections above.<br/><br/> b) Give prominent notice with the combined library of the fact<br/> that part of it is a work based on the Library, and explaining<br/> where to find the accompanying uncombined form of the same work.<br/><br/> 8. You may not copy, modify, sublicense, link with, or distribute<br/>the Library except as expressly provided under this License. Any<br/>attempt otherwise to copy, modify, sublicense, link with, or<br/>distribute the Library is void, and will automatically terminate your<br/>rights under this License. However, parties who have received copies,<br/>or rights, from you under this License will not have their licenses<br/>terminated so long as such parties remain in full compliance.<br/><br/> 9. You are not required to accept this License, since you have not<br/>signed it. However, nothing else grants you permission to modify or<br/>distribute the Library or its derivative works. These actions are<br/>prohibited by law if you do not accept this License. Therefore, by<br/>modifying or distributing the Library (or any work based on the<br/>Library), you indicate your acceptance of this License to do so, and<br/>all its terms and conditions for copying, distributing or modifying<br/>the Library or works based on it.<br/><br/> 10. Each time you redistribute the Library (or any work based on the<br/>Library), the recipient automatically receives a license from the<br/>original licensor to copy, distribute, link with or modify the Library<br/>subject to these terms and conditions. You may not impose any further<br/>restrictions on the recipients' exercise of the rights granted herein.<br/>You are not responsible for enforcing compliance by third parties with<br/>this License.<br/><br/> 11. If, as a consequence of a court judgment or allegation of patent<br/>infringement or for any other reason (not limited to patent issues),<br/>conditions are imposed on you (whether by court order, agreement or<br/>otherwise) that contradict the conditions of this License, they do not<br/>excuse you from the conditions of this License. If you cannot<br/>distribute so as to satisfy simultaneously your obligations under this<br/>License and any other pertinent obligations, then as a consequence you<br/>may not distribute the Library at all. For example, if a patent<br/>license would not permit royalty-free redistribution of the Library by<br/>all those who receive copies directly or indirectly through you, then<br/>the only way you could satisfy both it and this License would be to<br/>refrain entirely from distribution of the Library.<br/><br/>If any portion of this section is held invalid or unenforceable under any<br/>particular circumstance, the balance of the section is intended to apply,<br/>and the section as a whole is intended to apply in other circumstances.<br/><br/>It is not the purpose of this section to induce you to infringe any<br/>patents or other property right claims or to contest validity of any<br/>such claims; this section has the sole purpose of protecting the<br/>integrity of the free software distribution system which is<br/>implemented by public license practices. Many people have made<br/>generous contributions to the wide range of software distributed<br/>through that system in reliance on consistent application of that<br/>system; it is up to the author/donor to decide if he or she is willing<br/>to distribute software through any other system and a licensee cannot<br/>impose that choice.<br/><br/>This section is intended to make thoroughly clear what is believed to<br/>be a consequence of the rest of this License.<br/><br/> 12. If the distribution and/or use of the Library is restricted in<br/>certain countries either by patents or by copyrighted interfaces, the<br/>original copyright holder who places the Library under this License may add<br/>an explicit geographical distribution limitation excluding those countries,<br/>so that distribution is permitted only in or among countries not thus<br/>excluded. In such case, this License incorporates the limitation as if<br/>written in the body of this License.<br/><br/> 13. The Free Software Foundation may publish revised and/or new<br/>versions of the Lesser General Public License from time to time.<br/>Such new versions will be similar in spirit to the present version,<br/>but may differ in detail to address new problems or concerns.<br/><br/>Each version is given a distinguishing version number. If the Library<br/>specifies a version number of this License which applies to it and<br/>"any later version", you have the option of following the terms and<br/>conditions either of that version or of any later version published by<br/>the Free Software Foundation. If the Library does not specify a<br/>license version number, you may choose any version ever published by<br/>the Free Software Foundation.<br/><br/> 14. If you wish to incorporate parts of the Library into other free<br/>programs whose distribution conditions are incompatible with these,<br/>write to the author to ask for permission. For software which is<br/>copyrighted by the Free Software Foundation, write to the Free<br/>Software Foundation; we sometimes make exceptions for this. Our<br/>decision will be guided by the two goals of preserving the free status<br/>of all derivatives of our free software and of promoting the sharing<br/>and reuse of software generally.<br/><br/> NO WARRANTY<br/><br/> 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO<br/>WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.<br/>EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR<br/>OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY<br/>KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE<br/>IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR<br/>PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE<br/>LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME<br/>THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.<br/><br/> 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN<br/>WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY<br/>AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU<br/>FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR<br/>CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE<br/>LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING<br/>RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A<br/>FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF<br/>SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH<br/>DAMAGES.<br/><br/> END OF TERMS AND CONDITIONS<br/><br/><br/>Appendix C: The MPL License<br/>===========================<br/><br/> MOZILLA PUBLIC LICENSE<br/> Version 1.1<br/><br/> ---------------<br/><br/>1. Definitions.<br/><br/> 1.0.1. "Commercial Use" means distribution or otherwise making the<br/> Covered Code available to a third party.<br/><br/> 1.1. "Contributor" means each entity that creates or contributes to<br/> the creation of Modifications.<br/><br/> 1.2. "Contributor Version" means the combination of the Original<br/> Code, prior Modifications used by a Contributor, and the Modifications<br/> made by that particular Contributor.<br/><br/> 1.3. "Covered Code" means the Original Code or Modifications or the<br/> combination of the Original Code and Modifications, in each case<br/> including portions thereof.<br/><br/> 1.4. "Electronic Distribution Mechanism" means a mechanism generally<br/> accepted in the software development community for the electronic<br/> transfer of data.<br/><br/> 1.5. "Executable" means Covered Code in any form other than Source<br/> Code.<br/><br/> 1.6. "Initial Developer" means the individual or entity identified<br/> as the Initial Developer in the Source Code notice required by Exhibit<br/> A.<br/><br/> 1.7. "Larger Work" means a work which combines Covered Code or<br/> portions thereof with code not governed by the terms of this License.<br/><br/> 1.8. "License" means this document.<br/><br/> 1.8.1. "Licensable" means having the right to grant, to the maximum<br/> extent possible, whether at the time of the initial grant or<br/> subsequently acquired, any and all of the rights conveyed herein.<br/><br/> 1.9. "Modifications" means any addition to or deletion from the<br/> substance or structure of either the Original Code or any previous<br/> Modifications. When Covered Code is released as a series of files, a<br/> Modification is:<br/> A. Any addition to or deletion from the contents of a file<br/> containing Original Code or previous Modifications.<br/><br/> B. Any new file that contains any part of the Original Code or<br/> previous Modifications.<br/><br/> 1.10. "Original Code" means Source Code of computer software code<br/> which is described in the Source Code notice required by Exhibit A as<br/> Original Code, and which, at the time of its release under this<br/> License is not already Covered Code governed by this License.<br/><br/> 1.10.1. "Patent Claims" means any patent claim(s), now owned or<br/> hereafter acquired, including without limitation, method, process,<br/> and apparatus claims, in any patent Licensable by grantor.<br/><br/> 1.11. "Source Code" means the preferred form of the Covered Code for<br/> making modifications to it, including all modules it contains, plus<br/> any associated interface definition files, scripts used to control<br/> compilation and installation of an Executable, or source code<br/> differential comparisons against either the Original Code or another<br/> well known, available Covered Code of the Contributor's choice. The<br/> Source Code can be in a compressed or archival form, provided the<br/> appropriate decompression or de-archiving software is widely available<br/> for no charge.<br/><br/> 1.12. "You" (or "Your") means an individual or a legal entity<br/> exercising rights under, and complying with all of the terms of, this<br/> License or a future version of this License issued under Section 6.1.<br/> For legal entities, "You" includes any entity which controls, is<br/> controlled by, or is under common control with You. For purposes of<br/> this definition, "control" means (a) the power, direct or indirect,<br/> to cause the direction or management of such entity, whether by<br/> contract or otherwise, or (b) ownership of more than fifty percent<br/> (50%) of the outstanding shares or beneficial ownership of such<br/> entity.<br/><br/>2. Source Code License.<br/><br/> 2.1. The Initial Developer Grant.<br/> The Initial Developer hereby grants You a world-wide, royalty-free,<br/> non-exclusive license, subject to third party intellectual property<br/> claims:<br/> (a) under intellectual property rights (other than patent or<br/> trademark) Licensable by Initial Developer to use, reproduce,<br/> modify, display, perform, sublicense and distribute the Original<br/> Code (or portions thereof) with or without Modifications, and/or<br/> as part of a Larger Work; and<br/><br/> (b) under Patents Claims infringed by the making, using or<br/> selling of Original Code, to make, have made, use, practice,<br/> sell, and offer for sale, and/or otherwise dispose of the<br/> Original Code (or portions thereof).<br/><br/> (c) the licenses granted in this Section 2.1(a) and (b) are<br/> effective on the date Initial Developer first distributes<br/> Original Code under the terms of this License.<br/><br/> (d) Notwithstanding Section 2.1(b) above, no patent license is<br/> granted: 1) for code that You delete from the Original Code; 2)<br/> separate from the Original Code; or 3) for infringements caused<br/> by: i) the modification of the Original Code or ii) the<br/> combination of the Original Code with other software or devices.<br/><br/> 2.2. Contributor Grant.<br/> Subject to third party intellectual property claims, each Contributor<br/> hereby grants You a world-wide, royalty-free, non-exclusive license<br/><br/> (a) under intellectual property rights (other than patent or<br/> trademark) Licensable by Contributor, to use, reproduce, modify,<br/> display, perform, sublicense and distribute the Modifications<br/> created by such Contributor (or portions thereof) either on an<br/> unmodified basis, with other Modifications, as Covered Code<br/> and/or as part of a Larger Work; and<br/><br/> (b) under Patent Claims infringed by the making, using, or<br/> selling of Modifications made by that Contributor either alone<br/> and/or in combination with its Contributor Version (or portions<br/> of such combination), to make, use, sell, offer for sale, have<br/> made, and/or otherwise dispose of: 1) Modifications made by that<br/> Contributor (or portions thereof); and 2) the combination of<br/> Modifications made by that Contributor with its Contributor<br/> Version (or portions of such combination).<br/><br/> (c) the licenses granted in Sections 2.2(a) and 2.2(b) are<br/> effective on the date Contributor first makes Commercial Use of<br/> the Covered Code.<br/><br/> (d) Notwithstanding Section 2.2(b) above, no patent license is<br/> granted: 1) for any code that Contributor has deleted from the<br/> Contributor Version; 2) separate from the Contributor Version;<br/> 3) for infringements caused by: i) third party modifications of<br/> Contributor Version or ii) the combination of Modifications made<br/> by that Contributor with other software (except as part of the<br/> Contributor Version) or other devices; or 4) under Patent Claims<br/> infringed by Covered Code in the absence of Modifications made by<br/> that Contributor.<br/><br/>3. Distribution Obligations.<br/><br/> 3.1. Application of License.<br/> The Modifications which You create or to which You contribute are<br/> governed by the terms of this License, including without limitation<br/> Section 2.2. The Source Code version of Covered Code may be<br/> distributed only under the terms of this License or a future version<br/> of this License released under Section 6.1, and You must include a<br/> copy of this License with every copy of the Source Code You<br/> distribute. You may not offer or impose any terms on any Source Code<br/> version that alters or restricts the applicable version of this<br/> License or the recipients' rights hereunder. However, You may include<br/> an additional document offering the additional rights described in<br/> Section 3.5.<br/><br/> 3.2. Availability of Source Code.<br/> Any Modification which You create or to which You contribute must be<br/> made available in Source Code form under the terms of this License<br/> either on the same media as an Executable version or via an accepted<br/> Electronic Distribution Mechanism to anyone to whom you made an<br/> Executable version available; and if made available via Electronic<br/> Distribution Mechanism, must remain available for at least twelve (12)<br/> months after the date it initially became available, or at least six<br/> (6) months after a subsequent version of that particular Modification<br/> has been made available to such recipients. You are responsible for<br/> ensuring that the Source Code version remains available even if the<br/> Electronic Distribution Mechanism is maintained by a third party.<br/><br/> 3.3. Description of Modifications.<br/> You must cause all Covered Code to which You contribute to contain a<br/> file documenting the changes You made to create that Covered Code and<br/> the date of any change. You must include a prominent statement that<br/> the Modification is derived, directly or indirectly, from Original<br/> Code provided by the Initial Developer and including the name of the<br/> Initial Developer in (a) the Source Code, and (b) in any notice in an<br/> Executable version or related documentation in which You describe the<br/> origin or ownership of the Covered Code.<br/><br/> 3.4. Intellectual Property Matters<br/> (a) Third Party Claims.<br/> If Contributor has knowledge that a license under a third party's<br/> intellectual property rights is required to exercise the rights<br/> granted by such Contributor under Sections 2.1 or 2.2,<br/> Contributor must include a text file with the Source Code<br/> distribution titled "LEGAL" which describes the claim and the<br/> party making the claim in sufficient detail that a recipient will<br/> know whom to contact. If Contributor obtains such knowledge after<br/> the Modification is made available as described in Section 3.2,<br/> Contributor shall promptly modify the LEGAL file in all copies<br/> Contributor makes available thereafter and shall take other steps<br/> (such as notifying appropriate mailing lists or newsgroups)<br/> reasonably calculated to inform those who received the Covered<br/> Code that new knowledge has been obtained.<br/><br/> (b) Contributor APIs.<br/> If Contributor's Modifications include an application programming<br/> interface and Contributor has knowledge of patent licenses which<br/> are reasonably necessary to implement that API, Contributor must<br/> also include this information in the LEGAL file.<br/><br/> (c) Representations.<br/> Contributor represents that, except as disclosed pursuant to<br/> Section 3.4(a) above, Contributor believes that Contributor's<br/> Modifications are Contributor's original creation(s) and/or<br/> Contributor has sufficient rights to grant the rights conveyed by<br/> this License.<br/><br/> 3.5. Required Notices.<br/> You must duplicate the notice in Exhibit A in each file of the Source<br/> Code. If it is not possible to put such notice in a particular Source<br/> Code file due to its structure, then You must include such notice in a<br/> location (such as a relevant directory) where a user would be likely<br/> to look for such a notice. If You created one or more Modification(s)<br/> You may add your name as a Contributor to the notice described in<br/> Exhibit A. You must also duplicate this License in any documentation<br/> for the Source Code where You describe recipients' rights or ownership<br/> rights relating to Covered Code. You may choose to offer, and to<br/> charge a fee for, warranty, support, indemnity or liability<br/> obligations to one or more recipients of Covered Code. However, You<br/> may do so only on Your own behalf, and not on behalf of the Initial<br/> Developer or any Contributor. You must make it absolutely clear than<br/> any such warranty, support, indemnity or liability obligation is<br/> offered by You alone, and You hereby agree to indemnify the Initial<br/> Developer and every Contributor for any liability incurred by the<br/> Initial Developer or such Contributor as a result of warranty,<br/> support, indemnity or liability terms You offer.<br/><br/> 3.6. Distribution of Executable Versions.<br/> You may distribute Covered Code in Executable form only if the<br/> requirements of Section 3.1-3.5 have been met for that Covered Code,<br/> and if You include a notice stating that the Source Code version of<br/> the Covered Code is available under the terms of this License,<br/> including a description of how and where You have fulfilled the<br/> obligations of Section 3.2. The notice must be conspicuously included<br/> in any notice in an Executable version, related documentation or<br/> collateral in which You describe recipients' rights relating to the<br/> Covered Code. You may distribute the Executable version of Covered<br/> Code or ownership rights under a license of Your choice, which may<br/> contain terms different from this License, provided that You are in<br/> compliance with the terms of this License and that the license for the<br/> Executable version does not attempt to limit or alter the recipient's<br/> rights in the Source Code version from the rights set forth in this<br/> License. If You distribute the Executable version under a different<br/> license You must make it absolutely clear that any terms which differ<br/> from this License are offered by You alone, not by the Initial<br/> Developer or any Contributor. You hereby agree to indemnify the<br/> Initial Developer and every Contributor for any liability incurred by<br/> the Initial Developer or such Contributor as a result of any such<br/> terms You offer.<br/><br/> 3.7. Larger Works.<br/> You may create a Larger Work by combining Covered Code with other code<br/> not governed by the terms of this License and distribute the Larger<br/> Work as a single product. In such a case, You must make sure the<br/> requirements of this License are fulfilled for the Covered Code.<br/><br/>4. Inability to Comply Due to Statute or Regulation.<br/><br/> If it is impossible for You to comply with any of the terms of this<br/> License with respect to some or all of the Covered Code due to<br/> statute, judicial order, or regulation then You must: (a) comply with<br/> the terms of this License to the maximum extent possible; and (b)<br/> describe the limitations and the code they affect. Such description<br/> must be included in the LEGAL file described in Section 3.4 and must<br/> be included with all distributions of the Source Code. Except to the<br/> extent prohibited by statute or regulation, such description must be<br/> sufficiently detailed for a recipient of ordinary skill to be able to<br/> understand it.<br/><br/>5. Application of this License.<br/><br/> This License applies to code to which the Initial Developer has<br/> attached the notice in Exhibit A and to related Covered Code.<br/><br/>6. Versions of the License.<br/><br/> 6.1. New Versions.<br/> Netscape Communications Corporation ("Netscape") may publish revised<br/> and/or new versions of the License from time to time. Each version<br/> will be given a distinguishing version number.<br/><br/> 6.2. Effect of New Versions.<br/> Once Covered Code has been published under a particular version of the<br/> License, You may always continue to use it under the terms of that<br/> version. You may also choose to use such Covered Code under the terms<br/> of any subsequent version of the License published by Netscape. No one<br/> other than Netscape has the right to modify the terms applicable to<br/> Covered Code created under this License.<br/><br/> 6.3. Derivative Works.<br/> If You create or use a modified version of this License (which you may<br/> only do in order to apply it to code which is not already Covered Code<br/> governed by this License), You must (a) rename Your license so that<br/> the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape",<br/> "MPL", "NPL" or any confusingly similar phrase do not appear in your<br/> license (except to note that your license differs from this License)<br/> and (b) otherwise make it clear that Your version of the license<br/> contains terms which differ from the Mozilla Public License and<br/> Netscape Public License. (Filling in the name of the Initial<br/> Developer, Original Code or Contributor in the notice described in<br/> Exhibit A shall not of themselves be deemed to be modifications of<br/> this License.)<br/><br/>7. DISCLAIMER OF WARRANTY.<br/><br/> COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,<br/> WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,<br/> WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF<br/> DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.<br/> THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE<br/> IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,<br/> YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE<br/> COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER<br/> OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF<br/> ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.<br/><br/>8. TERMINATION.<br/><br/> 8.1. This License and the rights granted hereunder will terminate<br/> automatically if You fail to comply with terms herein and fail to cure<br/> such breach within 30 days of becoming aware of the breach. All<br/> sublicenses to the Covered Code which are properly granted shall<br/> survive any termination of this License. Provisions which, by their<br/> nature, must remain in effect beyond the termination of this License<br/> shall survive.<br/><br/> 8.2. If You initiate litigation by asserting a patent infringement<br/> claim (excluding declatory judgment actions) against Initial Developer<br/> or a Contributor (the Initial Developer or Contributor against whom<br/> You file such action is referred to as "Participant") alleging that:<br/><br/> (a) such Participant's Contributor Version directly or indirectly<br/> infringes any patent, then any and all rights granted by such<br/> Participant to You under Sections 2.1 and/or 2.2 of this License<br/> shall, upon 60 days notice from Participant terminate prospectively,<br/> unless if within 60 days after receipt of notice You either: (i)<br/> agree in writing to pay Participant a mutually agreeable reasonable<br/> royalty for Your past and future use of Modifications made by such<br/> Participant, or (ii) withdraw Your litigation claim with respect to<br/> the Contributor Version against such Participant. If within 60 days<br/> of notice, a reasonable royalty and payment arrangement are not<br/> mutually agreed upon in writing by the parties or the litigation claim<br/> is not withdrawn, the rights granted by Participant to You under<br/> Sections 2.1 and/or 2.2 automatically terminate at the expiration of<br/> the 60 day notice period specified above.<br/><br/> (b) any software, hardware, or device, other than such Participant's<br/> Contributor Version, directly or indirectly infringes any patent, then<br/> any rights granted to You by such Participant under Sections 2.1(b)<br/> and 2.2(b) are revoked effective as of the date You first made, used,<br/> sold, distributed, or had made, Modifications made by that<br/> Participant.<br/><br/> 8.3. If You assert a patent infringement claim against Participant<br/> alleging that such Participant's Contributor Version directly or<br/> indirectly infringes any patent where such claim is resolved (such as<br/> by license or settlement) prior to the initiation of patent<br/> infringement litigation, then the reasonable value of the licenses<br/> granted by such Participant under Sections 2.1 or 2.2 shall be taken<br/> into account in determining the amount or value of any payment or<br/> license.<br/><br/> 8.4. In the event of termination under Sections 8.1 or 8.2 above,<br/> all end user license agreements (excluding distributors and resellers)<br/> which have been validly granted by You or any distributor hereunder<br/>

2007-06-16

JavaScript源代码集

JavaScript源代码集(chm格式,中文)

2007-06-15

JavaScript.Examples.Bible

JavaScript.Examples.Bible(宝典英文)

2007-06-15

JavaScript快速查询手册

有人发布这个要分,我把我收集的不要分发布<br/><br/>再发几个收集的javascript的资源,全部免积分.发扬开源精神!

2007-06-15

mysql5.1中文手册

介绍就不用多说了.因为看到有人发这手册还要积分,就免积分发个,从官方网下载的html版.希望有人本着开源的精神,制作一个chm版.

2007-06-14

SQL实用教程第二版

关于本书:<br/>章——本书按概念的逻辑联系分章,便于自学<br/>节——每章中按关键技能分节<br/>思考与练习——章末使用问答题、选择题和填空题测试您对知识的掌握程度<br/>专家问答——专家问答介绍补充知识和要点<br/>学习检查——可以快速自测本节掌握程序<br/>项目——实习项目帮助你将学习的知识应用到实践中去<br/>语法和范例代码——实际演示代码介绍的编程技巧 <br/>本书可以帮助您尽快掌握SQL编程技术,书中提供了丰富的范例,帮助您学习如何创建和修改数据库对象、从数据库中添加和检索数据,并修改已经添加到数据库中的数据。本书按照SQL:1999标准编写,可以帮助您执行查询和修改,创建数据库,创建和修改嵌入式语句,排除与系统和数据相关的故障,等等。书中具有丰富的讲解内容、注释的代码以及其他行之有效的教学手段。

2007-05-07

游戏编程大师技巧(英文版)pdf

游戏编程大师技巧非常好的一本书.可惜老版本的翻译不太好.共享一下英文原版以补缺憾.共有1029页

2007-05-01

千千静听250款皮肤

千千静听250款皮肤

2007-04-29

编译原理 技术与工具(英文版)part2

请注意这是第二部分,第一部分在 http://download.csdn.net/source/173597 编译原理方面的经典书籍.中文版翻译不太好还是看英文的吧!好不容易在网上找到的.

2007-04-29

编译原理技术与工具(英文版)part1

请注意这是第一部分,第二部分在 http://download.csdn.net/source/173602 这就是有"龙书"之称的编译原理方面的书还有本"虎书"之称的不知道谁共享一下.由于大于30m所以分两部分. 作为编译器设计的教程,本书重点主要放在解决在设计语言翻译器过程中所普遍面对的一些问题上而并不考虑源语言或者目标机器。本书共12章:第一章介绍了编译器的基本结构;第二章给出了一个将前缀表达式转换成后缀表达式的编译器,主要使用本书的一些基本技巧来构建;第三章阐述了词法分析、正则表达式、有限自动机和扫描生成器工具,这章中的技术广泛应用于文本处理;第四章详细阐述了主要的分析技术,从适合手工实现的递归下降算法到在分析生成器中使用的LR算法;第五章介绍了语法制导翻译中的主要思想,本书的其它部分都用本章来说明和实现翻译;第六章提出了完成静态语义检查的主要思想,并对类型检查和类型的统一进行了详细的讨论;第七章讨论了支持应用程序运行时环境的存储组织;第八章从中间语言的讨论开始,说明了编程语言结构翻译成中间代码;第九章阐述了目标代码的生成,包含基本的on_the_fly代码生成方法、为表达式生成代码的优化方法、Peephole优化和代码生成器;第十章是代码优化的总述。除了关于数据流分析方法的详细说明,还有关于如何进行全局优化的基本方法;第十一章讨论了在编译器实现过程中可能会产生的一些实际问题;第十二章提出一些使用本书中的技术构建的一些编译器的学习用例。本书可作为高校计算机专业本科和研究生编译原理的教科书,也可供从事计算机软件开发的人员参考。

2007-04-29

数据结构 C++语言描述——应用标准模板库(STL)(第2版)源代码 .net版

本书是Ford和Topp两位教授于1996年出版的名著Data Structures with C++的第2版,新版中引入了在ANSI C 1998中正式规定的标准模板库(STL)来讲授数据结构,在全球范围内已经有数以万计的学生从中受益。 作者将C++语言作为算法描述语言,应用包含规范化的数据结构的标准模板库,集中讲述了数组、向量、表、关联树容器,以及集合、映射、堆、哈希表和图等数据结构及其算法,重点讨论了如何高效地存储大型数据集合,涵盖了数据结构初级和高级教程的最新内容。书中各章章前提出学习目标,章后附有丰富的练习题、答案以及书面练习和上机编程练习,指导读者迅速、全面地掌握核心知识点和编程技巧。 本书可作为计算机及相关专业数据结构课程的核心教材,对于广大研发人员,也是一本数据结构与面向对象技术完整结合的全新技术参考用书。<br/><br/><br/>非常好的一本书,要学习此书该代码是必不可少的! <br/>

2007-04-28

数据结构 C++语言描述——应用标准模板库(STL)(第2版)源代码

本书是Ford和Topp两位教授于1996年出版的名著Data Structures with C++的第2版,新版中引入了在ANSI C 1998中正式规定的标准模板库(STL)来讲授数据结构,在全球范围内已经有数以万计的学生从中受益。 作者将C++语言作为算法描述语言,应用包含规范化的数据结构的标准模板库,集中讲述了数组、向量、表、关联树容器,以及集合、映射、堆、哈希表和图等数据结构及其算法,重点讨论了如何高效地存储大型数据集合,涵盖了数据结构初级和高级教程的最新内容。书中各章章前提出学习目标,章后附有丰富的练习题、答案以及书面练习和上机编程练习,指导读者迅速、全面地掌握核心知识点和编程技巧。 本书可作为计算机及相关专业数据结构课程的核心教材,对于广大研发人员,也是一本数据结构与面向对象技术完整结合的全新技术参考用书。非常好的一本书,要学习此书该代码是必不可少的!

2007-04-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除