﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-天字一号</title><link>http://www.cppblog.com/wizard/</link><description>泠泠七弦上 静听松风寒 古调虽自爱 今人多不弹</description><language>zh-cn</language><lastBuildDate>Tue, 14 Apr 2026 23:06:10 GMT</lastBuildDate><pubDate>Tue, 14 Apr 2026 23:06:10 GMT</pubDate><ttl>60</ttl><item><title>Human Consciousness</title><link>http://www.cppblog.com/wizard/archive/2009/04/28/81282.html</link><dc:creator>Wizard</dc:creator><author>Wizard</author><pubDate>Mon, 27 Apr 2009 17:01:00 GMT</pubDate><guid>http://www.cppblog.com/wizard/archive/2009/04/28/81282.html</guid><wfw:comment>http://www.cppblog.com/wizard/comments/81282.html</wfw:comment><comments>http://www.cppblog.com/wizard/archive/2009/04/28/81282.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/wizard/comments/commentRss/81282.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wizard/services/trackbacks/81282.html</trackback:ping><description><![CDATA[<font color=#0000ff>去年10月的一次物理大会上，诺贝尔奖获得者&nbsp;David&nbsp;Gross&nbsp;列举了科学领域&nbsp;25&nbsp;个他认为物理学可能帮助解决的问题。除了有关黑洞以及暗物质和暗能量这些传统物理领域的问题外，有些问题已经超出了物理的范围，冒险进入了原本属于生命科学的领地。<br><br></font>这些问题当中有一个就是关于人类意识（human&nbsp;consciousness）的。<br><br>他想知道科学家是否能够测量婴儿的初始意识，并推测意识可能跟物理学中的&#8220;相变&#8221;--&nbsp;物质的一种由某些微观变化所引起的突然而急剧的大规模转变&nbsp;--&nbsp;类似。当温度降至某个临界温度以下，某些金属会突然失去电阻，出现超导现象，这就是相变的一个例子。<br><br>在最近的一次电邮采访当中，Gross&nbsp;说，他认为意识可能有许多不同的层次，但是他相信语言能力是人类区别于动物的一个关键因素。<br><br>Gross&nbsp;并不是唯一一个对人类意识有想法的物理学家。<br><br>&nbsp;<br><br>超越神秘主义<br><br>牛津大学著名的数学物理学家&nbsp;Roger&nbsp;Penrose&nbsp;相信，如果一种&#8220;万物之理（theory&nbsp;of&nbsp;everything）&#8221;的物理理论最终被发展出来用于解释宇宙中所有已知的现象，那么它至少能够部分地解释意识问题。<br><br>Penrose&nbsp;同时也相信量子力学，这个在亚原子层次主宰世界的物理规律，可能在意识中扮演重要角色。<br><br>还在不久以前，意识还被认为太抽象，太主观或者太难以致不能科学地进行研究。但是近年来，它成为生物学最热门的新领域之一，就像弦论之于物理学，或像寻找地球外生命之于天文学。<br><br>意识不再是哲学家和神秘主义学者研究的专属领地，它现在吸引着来自不同领域的科学家，这些领域似乎都有自己关于意识是什么和大脑如何产生意识这类问题的理论。<br><br>在许多宗教学说中，意识跟古代灵魂（soul）的概念紧密联系在一起，这些观念认为我们每个人都有一个精神本源，它不会死亡，甚至可能在你出生之前就已存在。人们相信灵魂使我们产生思想和感觉，使我们能够记忆和推理。<br><br>我们的人格，个性和人性都被认为起源于灵魂。<br><br>现在，这些通常都归之于大脑中的生理过程，但是究竟数以万亿计的大脑神经元之间的化学和电信号如何转化成思想、情感和自我意识，依然是个谜。<br><br>&#8220;几乎每个人都同意大脑中的某种东西和意识之间存在强烈关联，&#8221;澳大利亚国立大学意识研究中心的主管，哲学家&nbsp;David&nbsp;Chalmers&nbsp;说。&#8220;问题在于我们如何解释。我们想知道的不仅仅是关联，我们想要解释&nbsp;--&nbsp;大脑过程如何产生意识，为什么产生意识？这才是神秘之处。&#8221;<br><br>&nbsp;<br><br>接受就好了<br><br>Chalmers&nbsp;以区分意识研究中的&#8220;容易&#8221;问题和&#8220;困难&#8221;问题为大家所熟知。&nbsp;<br><br>容易问题是指研究与意识相关的功能和行为，它包括以下这类问题：感知（perception）是如何发生的？大脑如何将感官信息组合起来产生体验的连续性错觉？<br><br>&#8220;我称之为容易问题，并不是它们不重要，而是因为它们能够用认知科学（cognitive&nbsp;sciences）标准方法来研究，&#8221;Chalmers&nbsp;说。&nbsp;<br><br>Chalmers&nbsp;称主观体验（subjective&nbsp;experience）的问题为困难问题。<br><br>&#8220;人们有不同类型的体验&nbsp;--&nbsp;不同性质的体验&nbsp;--&nbsp;当你看到红色，看到绿色，听到中央C音，或者品尝巧克力时，&#8221;Chalmers&nbsp;告诉&nbsp;LiveScience。&#8220;只要你有意识，只要你有主观体验，总会感觉到一些东西。&#8221;<br><br>根据&nbsp;Chalmers&nbsp;的观点，意识的主观性阻止其通过更简单的要素来理解它，而这种还原论方法在其他科学领域获得了极大的成功。他相信，不像物理世界中的大部分对象，能够分解成单个原子，也不像生物体，可以分解成细胞，意识是宇宙中一个不可还原的部分，就像空间、时间和质量等概念。<br><br>&#8220;这些对象无需发展，&#8221;Chalmers&nbsp;说，&#8220;它们从来就是属于我们这个世界的基本构成部分。&#8221;<br><br>Chalmers&nbsp;认为，不要试图将意识还原成其他组成要素，应该简单对待意识，就像对待物理学中的空间、时间和质量一样。根据这样一种观点，意识的理论不应该去解释意识是什么或者意识如何产生这类问题；而应该解释意识和世界中其他对象之间的关系。&nbsp;<br><br>但是，并非所有人都信服这一个观点。<br><br>&nbsp;<br><br>帮助不大<br><br>&#8220;这种观点对我们帮助不大。&#8221;牛津大学药理学教授&nbsp;Susan&nbsp;Greenfield&nbsp;说。&nbsp;<br><br>&#8220;你做不了什么，&#8221;Greenfield&nbsp;指出。&#8220;这是一种终极说辞，因为根据这一观点你还可能做些什么呢？你不能证明它也不能证伪它，而且无从检验。它不提供解释，或者启发，也回答不了为什么人们感受到他们所感受的。&#8221;&nbsp;<br><br>Greendfield&nbsp;关于意识的理论受她研究药物和精神疾病的经历的影响。一些科学家，比如最著名的有近期的&nbsp;Francis&nbsp;Crick，他是&nbsp;DNA&nbsp;结构的共同发现者，和他的同事加州理工计算和神经系统教授&nbsp;Christof&nbsp;Koch&nbsp;，他们相信，不同的意识，比如说视觉感知，由不同的神经元产生。跟他们的观点不同，Greenfied&nbsp;认为，意识由大批非特定的散布在整个大脑的神经元产生。&nbsp;<br><br>Greenfield&nbsp;的理论重要之处在于区分了&#8220;意识（consciousness）&#8221;和&#8220;精神（mind）&#8221;。她说她的许多同事都交替使用这两个术语，但是她认为它们是两个完全不同的概念。&nbsp;<br><br>&#8220;人们说到精神错乱或者精神遭受打击或者精神不正常，这些都不意味着意识丧失，&#8221;Greenfield&nbsp;在电话采访中说。&#8220;同样的，当你丧失意识，当你晚上睡觉或者当你被麻醉，你并不认为自己精神错乱了。&#8221;<br><br>&nbsp;<br><br>就像水的湿度<br><br>根据&nbsp;Greenfield&nbsp;的观点，精神由神经元之间的生理连接组成。这些连接缓慢地演化，并且受过去的体验影响，因此每个人的大脑都是独一无二的。&nbsp;<br><br>但是，Greenfield&nbsp;相信，跟精神直接源于神经元之间的生理连接不同的是，意识是大脑的一种突现性质（emergent&nbsp;property），类似于&#8220;湿度&#8221;之于水或者&#8220;透明性&#8221;之于玻璃，这两种性质都是大量单个分子作用的结果，进一步说，是从大量单个分子行为中突然出现的。<br><br>根据&nbsp;Greenfield&nbsp;的观点，当某种刺激&nbsp;--&nbsp;要么来自外部，比如一件耸人听闻的事件，要么来自内部，比如一种想法或者记忆&nbsp;--&nbsp;在大脑中触发了一个连锁反应，意识体验就产生了。就像地震一般，每次意识体验都有一个震中，震动波纹从震中通过大脑向外传播，所经之处不断触发新的神经元。<br><br>在&nbsp;Greenfield&nbsp;的理论中精神和意识是有联系的，因为意识体验的强度由精神和已经存在的神经元连接强度所确定的，这些连接来自于过去的体验。<br><br>意识的神秘和诱人之处在于科学家并不知道将会从最终答案中获得什么。<br><br>&#8220;如果我告诉你已经解决了这个难题，你可能猜不到答案究竟是一个公式，一个模型，一种生理感觉或者是一种药物，&#8221;Greenfield&nbsp;说，&#8220;我本该给你什么答案呢？&#8221; 
<img src ="http://www.cppblog.com/wizard/aggbug/81282.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wizard/" target="_blank">Wizard</a> 2009-04-28 01:01 <a href="http://www.cppblog.com/wizard/archive/2009/04/28/81282.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我思故我在</title><link>http://www.cppblog.com/wizard/archive/2009/04/26/81084.html</link><dc:creator>Wizard</dc:creator><author>Wizard</author><pubDate>Sat, 25 Apr 2009 16:59:00 GMT</pubDate><guid>http://www.cppblog.com/wizard/archive/2009/04/26/81084.html</guid><wfw:comment>http://www.cppblog.com/wizard/comments/81084.html</wfw:comment><comments>http://www.cppblog.com/wizard/archive/2009/04/26/81084.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/wizard/comments/commentRss/81084.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wizard/services/trackbacks/81084.html</trackback:ping><description><![CDATA[<div id=blogDetailDiv style="FONT-SIZE: 16px">&#8220;I think, therefore I am"笛卡尔说的。<br>2000年以前，柏拉图提出设想说：真正的世界只是存在于我们的想象中。<br>2000后的今天老夫也唯心的提出：我们的世界是运行在既定的程序当中。<br><br>世界上的物理学，化学，生物学。。。。。。这些无非就是所谓的&#8221;创世主&#8220;在程序中所define的既定规则，而我们所谓的思维感官是在改程序中无数的Random中产生，由于无数的不确定从而产生形形色色的感觉。而事物跟事物之间的发展，跟时间的运转，正是无数的function在这些define之下利用这些不确定因素下所执行出来的结果。牛顿当年很厉害通过一个苹果推出了程序中的部分define虽然还是有点偏差，不过他破译了部分。我的偶像爱因斯坦更是厉害，他反汇编出了时间运转的部分函数。今天我冒着生命危险抛出了该理论，我预言终有一天人类会将这些所有的规则破解，能够利用这些define创造出新的function。我们不停的在推算，也许我们是另一个世界的&#8221;创世主&#8220;。。。。。。<br><br>We are freedom! <!--v:3.2--></div>
<img src ="http://www.cppblog.com/wizard/aggbug/81084.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wizard/" target="_blank">Wizard</a> 2009-04-26 00:59 <a href="http://www.cppblog.com/wizard/archive/2009/04/26/81084.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用Lua写个轻量级服务器</title><link>http://www.cppblog.com/wizard/archive/2009/03/23/77627.html</link><dc:creator>Wizard</dc:creator><author>Wizard</author><pubDate>Mon, 23 Mar 2009 12:12:00 GMT</pubDate><guid>http://www.cppblog.com/wizard/archive/2009/03/23/77627.html</guid><wfw:comment>http://www.cppblog.com/wizard/comments/77627.html</wfw:comment><comments>http://www.cppblog.com/wizard/archive/2009/03/23/77627.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/wizard/comments/commentRss/77627.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wizard/services/trackbacks/77627.html</trackback:ping><description><![CDATA[<p>由于项目要换成全Lua的，所以趁这个机会研究了下LuaSocket和Lua Loop<br>Lua Loop: http://loop.luaforge.net/<br>LuaSocket: <a href="http://www.tecgraf.puc-rio.br/~diego/professional/luasocket/">http://www.tecgraf.puc-rio.br/~diego/professional/luasocket/</a><br>感觉用这个写个简单的聊天服务器，或者写个文字Mud的网络小游戏挺方便的，而且上手容易，适合一些策划做些自己想法的东西。Lua Loop我就不做介绍了，上面网站例子有很多。下面两段便是用Lua写的个服务器和客户端的示例代码：<br>运行很简单，只要将LuaSocket放在下面代码说在的路径，然后用lua5.0运行。</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">&nbsp;1</span>&nbsp;<span style="COLOR: #000000">--</span><span style="COLOR: #000000">&nbsp;server端Lua代码<br></span><span style="COLOR: #008080">&nbsp;2</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;3</span>&nbsp;<span style="COLOR: #000000">socket&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;require(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">socket</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">&nbsp;4</span>&nbsp;<span style="COLOR: #000000">host&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;host&nbsp;or&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">localhost</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">&nbsp;5</span>&nbsp;<span style="COLOR: #000000">port&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;port&nbsp;or&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">8383</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">&nbsp;6</span>&nbsp;<span style="COLOR: #000000">server&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;assert(socket.bind(host,&nbsp;port,&nbsp;</span><span style="COLOR: #000000">1000</span><span style="COLOR: #000000">))<br></span><span style="COLOR: #008080">&nbsp;7</span>&nbsp;<span style="COLOR: #000000">server:settimeout(&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;)<br></span><span style="COLOR: #008080">&nbsp;8</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;9</span>&nbsp;<span style="COLOR: #000000">local&nbsp;client&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;{}<br></span><span style="COLOR: #008080">10</span>&nbsp;<span style="COLOR: #000000">print(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">server:&nbsp;waiting&nbsp;for&nbsp;client&nbsp;connection<img src="http://www.cppblog.com/Images/dot.gif"></span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)<br></span><span style="COLOR: #008080">11</span>&nbsp;<span style="COLOR: #000000">local&nbsp;clientcount&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">12</span>&nbsp;<span style="COLOR: #000000"></span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">13</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;control&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;server:accept()<br></span><span style="COLOR: #008080">14</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">15</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;control&nbsp;</span><span style="COLOR: #000000">~=</span><span style="COLOR: #000000">&nbsp;nil&nbsp;then<br></span><span style="COLOR: #008080">16</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;client[control]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;control&nbsp;<br></span><span style="COLOR: #008080">17</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clientcount&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;clientcount&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">18</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">有新客户端连入链接总数为：</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;..&nbsp;clientcount&nbsp;..&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;)<br></span><span style="COLOR: #008080">19</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;end<br></span><span style="COLOR: #008080">20</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">21</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">22</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">&nbsp;user&nbsp;</span><span style="COLOR: #0000ff">in</span><span style="COLOR: #000000">&nbsp;pairs(&nbsp;client&nbsp;)&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">23</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;command&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;&nbsp;user:receive();<br></span><span style="COLOR: #008080">24</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;command&nbsp;</span><span style="COLOR: #000000">~=</span><span style="COLOR: #000000">&nbsp;nil&nbsp;then&nbsp;<br></span><span style="COLOR: #008080">25</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(&nbsp;command&nbsp;)&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">26</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br></span><span style="COLOR: #008080">27</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;end<br></span><span style="COLOR: #008080">28</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">29</span>&nbsp;<span style="COLOR: #000000">end</span></div>
<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">&nbsp;1</span>&nbsp;<span style="COLOR: #000000">--</span><span style="COLOR: #000000">&nbsp;Client端Lua代码<br></span><span style="COLOR: #008080">&nbsp;2</span>&nbsp;<span style="COLOR: #000000">local&nbsp;MaxLink&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">220</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;3</span>&nbsp;<span style="COLOR: #000000">local&nbsp;socket&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;require(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">socket</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)<br></span><span style="COLOR: #008080">&nbsp;4</span>&nbsp;<span style="COLOR: #000000">local&nbsp;c&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;{}<br></span><span style="COLOR: #008080">&nbsp;5</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;6</span>&nbsp;<span style="COLOR: #000000">host&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;host&nbsp;or&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">localhost</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;7</span>&nbsp;<span style="COLOR: #000000">port&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;port&nbsp;or&nbsp;</span><span style="COLOR: #000000">8383</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">&nbsp;8</span>&nbsp;<span style="COLOR: #000000"></span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;arg&nbsp;then<br></span><span style="COLOR: #008080">&nbsp;9</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;host&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;arg[</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">]&nbsp;or&nbsp;host<br></span><span style="COLOR: #008080">10</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;port&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;arg[</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">]&nbsp;or&nbsp;port<br></span><span style="COLOR: #008080">11</span>&nbsp;<span style="COLOR: #000000">end<br></span><span style="COLOR: #008080">12</span>&nbsp;<span style="COLOR: #000000">print(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Attempting&nbsp;connection&nbsp;to&nbsp;host&nbsp;'</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;..host..&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">'&nbsp;and&nbsp;port&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;..port..&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><img src="http://www.cppblog.com/Images/dot.gif"></span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)<br></span><span style="COLOR: #008080">13</span>&nbsp;<span style="COLOR: #000000"></span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">&nbsp;i&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,&nbsp;MaxLink&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">14</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;c[i]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;assert(socket.connect(host,&nbsp;port))<br></span><span style="COLOR: #008080">15</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;c[i]:settimeout(&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;)<br></span><span style="COLOR: #008080">16</span>&nbsp;<span style="COLOR: #000000">end<br></span><span style="COLOR: #008080">17</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">18</span>&nbsp;<span style="COLOR: #000000">print(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Connected!&nbsp;Please&nbsp;type&nbsp;stuff&nbsp;(empty&nbsp;line&nbsp;to&nbsp;stop):</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)<br></span><span style="COLOR: #008080">19</span>&nbsp;<span style="COLOR: #000000">l&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;io.read()<br></span><span style="COLOR: #008080">20</span>&nbsp;<span style="COLOR: #000000"></span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">&nbsp;i&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,&nbsp;MaxLink&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">21</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;assert(&nbsp;c[i]:send(l&nbsp;..&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)&nbsp;)<br></span><span style="COLOR: #008080">22</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;assert(&nbsp;c[i]:send(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">test</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;..&nbsp;i&nbsp;..&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)&nbsp;)&nbsp;<br></span><span style="COLOR: #008080">23</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;print(&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">test</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;..&nbsp;i&nbsp;..&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;)<br></span><span style="COLOR: #008080">24</span>&nbsp;<span style="COLOR: #000000">end<br></span><span style="COLOR: #008080">25</span>&nbsp;<span style="COLOR: #000000"><br></span><span style="COLOR: #008080">26</span>&nbsp;<span style="COLOR: #000000"></span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">27</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">&nbsp;i&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,&nbsp;MaxLink&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">28</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;command&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;c[i]:receive()<br></span><span style="COLOR: #008080">29</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;command&nbsp;</span><span style="COLOR: #000000">~=</span><span style="COLOR: #000000">&nbsp;nil&nbsp;then&nbsp;<br></span><span style="COLOR: #008080">30</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print(command)<br></span><span style="COLOR: #008080">31</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br></span><span style="COLOR: #008080">32</span>&nbsp;<span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;end<br></span><span style="COLOR: #008080">33</span>&nbsp;<span style="COLOR: #000000">end<br></span><span style="COLOR: #008080">34</span>&nbsp;<span style="COLOR: #000000"></span></div>
<img src ="http://www.cppblog.com/wizard/aggbug/77627.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wizard/" target="_blank">Wizard</a> 2009-03-23 20:12 <a href="http://www.cppblog.com/wizard/archive/2009/03/23/77627.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>肖邦降E大调夜曲 and 小星星变奏曲 </title><link>http://www.cppblog.com/wizard/archive/2009/03/17/76818.html</link><dc:creator>Wizard</dc:creator><author>Wizard</author><pubDate>Mon, 16 Mar 2009 17:25:00 GMT</pubDate><guid>http://www.cppblog.com/wizard/archive/2009/03/17/76818.html</guid><wfw:comment>http://www.cppblog.com/wizard/comments/76818.html</wfw:comment><comments>http://www.cppblog.com/wizard/archive/2009/03/17/76818.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wizard/comments/commentRss/76818.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wizard/services/trackbacks/76818.html</trackback:ping><description><![CDATA[<img height=768 src="http://www.cppblog.com/images/cppblog_com/wizard/20071812211331346.JPG" width=523 border=0><br><img height=768 src="http://www.cppblog.com/images/cppblog_com/wizard/2007371244394918.JPG" width=523 border=0> 
<img src ="http://www.cppblog.com/wizard/aggbug/76818.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wizard/" target="_blank">Wizard</a> 2009-03-17 01:25 <a href="http://www.cppblog.com/wizard/archive/2009/03/17/76818.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>