启示录1:丑陋的,坏的和好的 (上) apocalypses i: the ugly, the bad, and the good by larry wall april 02, 2001 当听到启示录这个词的时候,人们往往会感到害怕,但是此时,我赋予了它好的意思:启迪。用好的思想来启迪好的人,这就是启示录的作用。 在这篇文章里面我要揭示的,是关于perl6的设计。或者,更精确的说,是最初的设计,因为,在当我把我最初说的话付诸于实际之后,设计过程会依然进行。我不是一个先知,同上帝的游戏对我来说有些难以承受。但无论如何,有些人必须去这么做,所以,我会尽我的全力。我希望你们所有人能够帮助我来创造历史。 “如果你着眼于perl6的历史,你就能发现为什么这篇文章的幅标题是“丑陋的,坏的和好的”了,从好的意义上来说,去年的rfc过程(rfc=the requests for comments )...
版本: 1.0 原文作者: shishir gundavaram <shishir@ora.com> tom christiansen <tchrist@perl.com> 中译、补充: 萧百龄 <hsiao@uconnvm.uconn.edu> 版权事宜:(复制、转载者务必遵守) this document, and all its parts, are copyright (c) 1996, shishir gundavaram and tom christiansen. all rights reservered. permisson to distribute this collection, in part or full, via electronic means (emailed, posted or archived) or prin...
如何得知使用者正在哪个作业系统下执行我的 perl 程式?$o 这个变数(若使用 english 模组就是 $ostype)会指出你的 perl 解译器执 行档是替哪个作业系统、平台所建的。 为什麽 exec() 不会传值回来?因为这正是它所做的:它用另一个不同的程式来取代你当时所执行的。如果你的程 式需要继续跑下去(这可能正是你问此问题的原因吧?),改用system() 。如何对 键盘/萤幕/滑鼠 做些花样?连接/控制 键盘、萤幕和指标装置(「滑鼠」)的方法因作业系统的不同而有不 同;不妨试试下列模组: 键盘 term::cap perl 标准内建模组 term::readkey cpan term::readline::gnu cpan term::readline::perl cpan term::screen cpan萤幕 term::cap perl 标准内建模...
我的 cgi script可在指令列下执行但无法从浏览器执行。您能不能帮我修修看? 当然,但您恐怕付不起雇我们的签约金 :-) 说真的,如果您能够先证明您已读过下列这几个 faqs ,但遇到的问题并不单纯、非叁言两语即可回答的话,那麽您 post到 comp.infosystems.www.authoring.cgi上(如果是有关 http 、 html ,或 cgi通信协定)的问题可能也会得到口气和缓而有用的答覆。表面上看似 perl,但骨子里是 cgi之类的问题,如果 post到 comp.lang.perl.misc人家可能就不会这麽乐意地接受了。 几个实用的 faqs 分别是: http://www.perl.com/perl/faq/idiots-guide.html http://www3.pair.com/webthing/docs/cgi/faqs/cgifaq.shtml...
我能拿到 perl的 bnf/yacc/re吗?不行,引用 chaim frenkel的话:“perl的语法无法被简化到可以用bnf 表示。解析perl的工作是分散於 yacc、lexer、烟雾和镜子之间。” $@%*这些符号是什麽意思?我怎麽知道何时该使用他们呢? 他们都是指定形态 (type)用的符号,如同perldata里所详述的: $纯量值 (scalar) (数字,字串或参考值 [reference]) @阵列 %杂凑阵列 (关连阵列) *代表同一个变数名的所有类形。在第四版中它们常用来达到指标 (pointers)的功能,但现在在新版的 perl中这个角色已被参考值 (reference)取代了。虽然这些符号在某些场合下可省略,但建议你随处都用。有些其他的符号你可能会碰到但却不是指定形态用的有: <>这是用来从一个档案把手 (file...
我该如何使用正规表示式才不至於写出不合语法且难以维护的程式码? 以下提供叁个技巧使得你的正规表示式易懂又好维护。 在正规表示式外围作注解。 用 perl的注解方式描述你所作的事以及你如何作到它。 #把每行变成「第一个字、冒号,和剩馀的字元数」这样的格式。 s/(w+)(.*)/ lc($1) . ":" . length($2) /ge;在正规表示式内部作注解。 /x修饰子会要直译器忽略正规表示式内的任意空白 (在特定字元类别 [character class]中例外),同时也让你在式子中使用平常的注解方法。你应该能想像得到, 加上一些空白与注解帮助会有多大。 /x让你把下面这行: s{<(?:[>'"]*".*?"'.*?')+>}{}gs;变成: s{ < #箭头括弧区起始 (?: #划分「勿追溯前段」(non-backrefe...
我如何作 (任何事)?你到 cpan(见perlfaq2)找过了吗?也许别人已经写了某个模组可以解决你的 问题。你查过相关的说明文件了吗 (man pages)?以下是一份概要的索引: 物件 (objects)perlref,perlmod,perlobj,perltie资料结构 (data structures)perlref,perllol,perldsc模组 (modules)perlmod,perlmodlib,perlsub正规表示法 (regexps)perlre,perlfunc,perlop升级至 perl5 (moving to perl5)perltrap, perl与 c连结 (linking w/c)perlxstut,perlxs,perlcall,perlguts,perlembed杂项 (various)http://www.perl.com/cpan/doc...
perl是什麽? perl是一个高阶程式语言,由 larry wall和其他许多人所写,融合了许多语言的特性。它主要是由无所不在的 c语言,其次由 sed、awk,unix shell 和至少十数种其他的工具和语言所演化而来。perl对 process、档案,和文字有很强的处理、变换能力,因此举凡有关快速原型设计、系统工具、软体工具、系统管理、资料库连结、图像程式设计、网路连结,和 www程式设计等之类的任务,都特别 适合用 perl来做。这些特长不但使 perl成为系统维护管理者和 cgi作者的宠儿,就连数学家、遗传学家、新闻从业者,甚至企业管理者也都用 perl,所以或许您也该用。谁对 perl提供支援?由谁负责发展?它为什麽是免费的? perl自由开放的发行方式要归功於发烧前的 internet的传统文化及其作者 larry wall。perl是由使用者提供支援。现在 perl的核心...
哪些平台上有 perl?要到哪里去找? perl的标准发行版(由 perl发展小组负责维护)仅以原始码形式发行。您可在 http://www.perl.com/cpan/src/latest.tar.gz处取得。这个档案的格式是 posix tar档案柜,再以 gzip格式压缩。这套原始码完全不需任何移植工作便可轻易地在绝大多数的 unix系统(perl的原生系统),以及 plan 9、vms、qnx、 os/2 ,和 amiga上编译安装完成。尽管有谣传说(即将推出的)第 5.004版或许能直接在 windows nt上成功地编译和安装,但这尚待证实。适合 32 位元的微软系统和苹果系统、以执行档形式发行的 perl各可在http://www.perl.com/cpan/ports/这个目录底下找到。由於这两个不属於标准发行的一部分,它们可能(事实上的确)和基本的 perl有多方面的不同...
perl cgi可能在开发网站的初期是一种常用方式。但在实际使用后采用perl cgi,性能问题就开始变得很明显。这种情况在原型应用程序应用在实际环境中经常碰到,表现为较慢的响应速度、不寻常的行为和系统失败等。 在一个站点遭遇perl cgi脚本产生的性能问题之后,不可能再次允许其出现在实际环境中。 perl cgi在测试一个web程序的初期工作很好,但随着站点使用得越来越多,应用程序负载也更大,cgi进程产生越来越多的开销,并最终超过服务器的能力。处理器过载,内存被占满,数据库没有可用连接,系统将比预期地更早终止。 perl 的随机编译器在这里是一个最大缺陷,执行perl cgi进程时cpu的许多负载都来源于编译和初始化程序。最明显的结论是perl相对当前任务响应太慢了,当然不会有任何公司会鼓吹perl cgi的速度,在实际使用中,经过优化的perl程序的例子更少。 一次性任务 perl...
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器