致编辑的信
我发现[在1995年4月刊中设置服务]一文很有趣。我认为错过了一个主要的点。管理员不应随机分配端口给服务。实际上,有一个RFC列出了端口。最新的版本是rfc1700。对于新手来说,学习这一点非常重要。
—Matthew B. Guest mbguest@fastbox.ridgecrest.ca.us
我非常同意Graham Leach(g_leach@pavo.concordia.ca)在1995年4月刊的Linux Journal中的来信。您的杂志非常出色。但是“链接列表”格式令人讨厌。请避免使用它,或者至少尽量减少它。
我不同意你们的一个理由,即读者期望“重要”的文章位于杂志的前面。我当然不这么认为。我猜想你们的大部分普通读者,像我一样,会从头到尾阅读每一期,而且不止一次。也许您可以调查一下您的读者,以确定这一点。
正如我所说,您的杂志非常棒。但是这种格式使其难以阅读,而且没有必要。
此致,
—Carl Renneberg renneber@tmx.mhs.oz.au
刚刚收到我的第一期Linux Journal:四月刊。太棒了!
关于Graham Leach在致编辑的信中提出的文章拆分问题,我可以建议一些在排版时代对我很有效的方法:与其“不跳跃”,这真的很困难,不如设定一个目标,即每篇文章最多跳跃一次。如果在跳转页面顶部添加文章名称到“续上页...”中也会很有帮助。
感谢您提供一本有趣且易于阅读的书籍。
—John Miller, N4VU jsm@n4vu.Atl.GA.US
我很高兴阅读 Robert A. Dalrymple 关于 Scilab 的文章。我使用 Scilab 已经 7 年了,我认为它是一款非常出色的产品(比 Matlab 更强大)。INRIA 决定向公众免费提供这款工具真是太棒了。
我写这封信的目的是因为我认为您的读者会对了解一些关于 Scilab 的额外事实感兴趣,这些事实在文章中没有提到。Scilab 最强大的方面之一是它能够轻松地执行数据抽象和运算符重载。
Scilab 提供了几个预定义的抽象数据类型,例如有理多项式和线性动态系统。对常用运算符(如“+”、“-”、“*”、“/”和“=”)的重载允许用户轻松地操作这些抽象数据类型,并大大简化了更高级别操作的开发。这是一个包含两个有理数的例子
^> r1=(2+3*s)/(1+s**2) r1 = 2 + 3s ^^^- 2 1 + s ^> r2=s/(5+s) r2 = s ^^^ 5 + s ^> r3=r1+r2 r3 = 2 3 10 + 18s + 3s + s ^^^^^^^^^ 2 3 5 + s + 5s + s
请注意,即使示例中的有理数是用户定义的对象,“=”运算符的重载也会产生用户友好的屏幕显示,可以识别为有理数的屏幕显示。此外,由于“+”运算符已为有理数重载,因此它们的和已定义,不需要特殊函数(例如 r3=poly_add(r1,r2))。
Scilab 中有理抽象数据类型的实现允许人们期望的两个有理数之间以及有理数和其他数据类型(如标量和矩阵)之间的所有常用运算。
Scilab 用户可以轻松定义新的抽象数据类型,并开发 Scilab 宏来实现用户透明的运算符重载。这些 Scilab 功能在 Matlab 类产品中是独一无二的,这也是我认为 Scilab 比 Matlab 更强大的产品的原因。
我希望这些评论对您的读者有用。
真诚地,
—Carey Bunks bunks@rechser.total.fr