2003-12-29

Humanism
Bam's Earthquake has changed people at least for the time being. Every one wants to help the quake-sticken people. Especially, here in Sabzevar, people are very sympathetic. One of the causes are the chain of earthquakes that happened here about one month ago. Though there were no losses, but they frightened much of the people badly.
I wish we could help each other all the times, not only in these times. Especially, the medical community must be sympathetic towards the deprived people. Sort of professionalism!

2003-12-28

Disastrous Earthquake in Bam
I have not yet recovered from the shock of the destructive earthquake that demolished the city of Bam in the morning of 2003-12-26, killing tens of thousands of people. The situation is very grave, there are a lot of casualties. People are sad in Iran and still, they know that not so much can be done to compensate this big loss. There are qeues of people waiting to donate their blood or to donate relief goods for earthquake-stricken people of Bam.
When in the future will we be able to prevent these great losses at least to some degree?!

2003-12-15

"Thinking and Programming"
This is my weblog on programming (in the Persian language). Please refer to that weblog if you find here so deserted!
http://thought.persianblog.com

2003-09-17

مرغزار اثر ري برادبري

داستان كوتاه زيبايي به نام مرغزار (The Veldt) را كه از آثار ري برادبري (Ray Bradbury), نويسنده‌ي «فارنهايت 451», است, اخيراً ترجمه كرده‌ام. قسمتي از آن را ذيلاً مي‌خوانيد.

مرغزار

«جورج (George), كاش نگاهي به اتاق بازي مي‌انداختي.»

«چطور, چه شده؟»

«نمي‌دانم.»

«خوب, پس چي؟»

«فقط مي‌خواستم نگاهي بيندازي, و يا اينكه يك روانشناس صدا كني نگاهي به آنجا بيندازد.»

«روانشناس چكار به اتاق بازي دارد؟»

همسرش در حالي كه وسط آشپزخانه ايستاده بود و به اجاق كه مشغول آماده كردن عصرانه بود, نگاه مي‌كرد, گفت: «خودت خوب مي‌داني به اتاق بازي چكار دارد. مسئله فقط اين است كه حالا اتاق بازي با گذشته فرق دارد.»

«بسيار خوب. بگذار برويم ببينيم.»

با هم از داخل هال گذشتند. اين خانه‌ي ضدصداي «زندگي شادمان» را به قيمت سي هزار دلار نصب كرده بودند. خانه به آنها پوشاك و خوراك مي‌داد, آنها را مي‌خواباند. برايشان آواز مي‌خواند و بازي مي‌كرد, و خلاصه خيلي برايشان خوب بود. با نزديك شدن آنها, وقتي كه به فاصله‌ي سه متري اتاق بازي رسيدند, چراغ اتاق روشن شد. در ضمن, چراغ‌هاي هال پشت سرشان خود به خود خاموش شد.

جورج هدلي (George Hadley) گفت: «خوب.»

روي كف كاه‌اندود اتاق بازي ايستاده بودند. طول و عرض آن دوازده متر و ارتفاع آن نه متر بود؛ هزينه‌ي بر پا كردن آن معادل نصف قيمت كل خانه شده بود. البته جورج گفته بود: «پول خرج كردن براي بچه‌ها هيچ وقت زيادي نيست.»

در اتاق بازي صدايي شنيده نمي‌شد. مانند عرصه‌ي جنگل در روشنايي ظهر بود. ديوارها خالي و دوبعدي بود. اكنون كه جورج و ليديا (Lydia) هدلي در وسط اتاق ايستاده بودند, از ديوارها صداي خرخر شنيده شد و كم‌كم حالت بلوري و سه‌بعدي پيدا كردند, و منظره‌ي يك مرغزار آفريقايي در آنها پديدار شد. تصوير در تمام جهات گسترده شده بود, و حتي تا كوچك‌ترين ذرات مطابق با واقعيت ديده مي‌شد. سقف بالاي سرشان تبديل به آسماني ژرف با خورشيد زرد درخشان شد.

جورج هدلي احساس كرد كه دانه‌هاي عرق روي ابروانش شكل مي‌گيرد.

گفت: «بيا از زير آفتاب برويم. زيادي واقعي به نظر مي‌رسد, ولي به هر حال, فكر نمي‌كنم مشكلي داشته باشد.»

زنش گفت: «چند لحظه صبر كن, خواهي ديد.»

پس از مدتي از پايانه‌هاي بوي اتاق كه به طور مخفي نصب شده بود, بوهايي به سمت دو نفري كه در مركز اتاق بودند, وزيدن گرفت. بوي داغ و كاهي علف شير, بوي سرد و خنك چشمه‌ي آب, بوي ترشيده‌ي جانوران, و بوي غبار, مانند بوي يك فلفل قرمز در هواي داغ. و بعد صداها به گوش رسيد: صداي چهارنعل غزالي در دوردست, خش‌خش كاغذي لاشخورها. سايه‌اي از آسمان گذشت. جورج هدلي با صورتي عرق كرده به آسمان نگاه كرد و عبور سايه را ديد.

صداي زنش را شنيد كه مي‌گفت: «موجودات كثيف.»

«لاشخورها.»

«نگاه كن, آن دورها چند شير هم هستند. دارند به طرف چشمه مي‌آيند. ظاهراً الآن غذا خورده‌اند. البته نمي‌دانم غذايشان چه بوده است.»

جورج هدلي دستش را بالاي پيشاني قرار داد تا جلوي تابش نور به چشمانش را بگيرد, و گفت: «احتمالاً يك جانور بوده است. شايد يك گورخر يا يك بچه‌زرافه.»

زنش با لحن بدبينانه‌اي پرسيد: «مطمئني؟»

جورج با شوخي گفت: «نه, براي مطمئن بودن كمي دير شده است. من در آنجا چيزي جز استخوان‌هاي تميز شده نمي‌بينم, و البته لاشخورها كه در صدد جمع كردن بقاياي آن هستند.»

زنش پرسيد: «آن فرياد را شنيدي؟»

«نه.»

«تقريباً يك دقيقه پيش.»

«نه, متأسفانه نشنيدم.»

شيرها نزديك مي‌شدند. جورج هدلي باز هم به فكر نبوغ مهندسي به كار رفته در ساخت اين خانه افتاد. فروش معجزه‌آساي محصولات كارآمد با قيمت فوق‌العاده پايين. هر خانه‌اي بايد يك چنين چيزي داشته باشد. اوه, حتي بعضي وقت‌ها از شدت دقت و واقعيت شما را مي‌ترساند. البته اكثر اوقات مايه‌ي سرگرمي بود, نه فقط براي بچه‌ها, بلكه براي خود شما كه شاهد تغيير سريع منظره و صحنه‌هاي گوناگون بوديد. خوب, حالا رسيدند!

حالا شيرها اينجا بودند, در فاصله‌ي پنج متري. آنقدر واقعي به نظر مي‌رسيدند كه مو را بر تن آدم سيخ مي‌كردند. بوي پوست‌هاي داغ آنها در اطراف پخش شده بود, و زردي آنها مانند پرده‌ي نقش‌دار فرانسوي نفيسي مي‌نمود. در هواي داغ ظهر, صداي نفس‌هاي آنها به گوش مي‌رسيد, و در حالي كه له‌له مي‌زدند, بوي گوشت از دهان آنها استشمام مي‌شد.

شيرها با چشمان وحشتناك به رنگ زرد مايل به سبز به جورج و ليديا هدلي خيره شدند.

ليديا فرياد زد: «فرار كن!»

شيرها به طرف آنها به دويدن پرداختند. جورج به طور غريزي به دنبال زنش به دويدن پرداخت. وقتي به داخل هال رسيدند, و در را پشت سر خود بستند, جورج شروع به خنديدن كرد و زنش به گريه افتاد. هر كدام از واكنش ديگري ترسيده بود.

«جورج!»

«ليديا! اوه, ليدياي عزيز بيچاره‌ي من!»

«نزديك بود ما را بگيرند!»

«ديوارها, ليديا, فكر كن؛ آنها فقط ديوارهاي بلوري هستند. البته قبول مي‌كنم كه خيلي واقعي به نظر مي‌رسند—آفريقا در اتاق پذيرايي!—ولي اين فقط فيلم‌هاي رنگي سه بعدي با واكنش و حساسيت خيلي بالا و فيلم‌هاي نوار ذهني در پشت پرده‌هاي شيشه‌اي است. اينها فقط عملكرد پايانه‌هاي بويي و صوتي است, ليديا. بيا اين دستمال را بگير.»

ليديا كنار او آمد و با گريه و ناله گفت: «ديدي؟ احساس كردي؟ زيادي واقعي بود.»

«خيلي خوب, ليديا…»

«بايد به وندي (Wendy) و پيتر (Peter) بگويي كه ديگر راجع به آفريقا مطالعه نكنند.»

جورج دستش را روي شانه‌ي او نهاد و گفت: «البته, البته…»

«قول مي‌دهي؟»

«حتماً.»

«و به علاوه, در اتاق بازي را بايد چند روزي قفل كني تا اعصاب من به سر جايش بر گردد.»

«مي‌داني كه اين كار براي پيتر چقدر مشكل است. يادت نيست يك ماه قبل وقتي براي تنبيه او در اتاق بازي را حتي براي چند ساعت قفل كردم, چه قشقرقي به پا كرد! وندي هم همينطور. آنها همه‌ي اميدشان به اتاق بازي است.»

«بايد درش قفل شود, همين و بس.»

جورج با بي‌ميلي در بزرگ را قفل كرد و گفت: «بسيار خوب. تو زياد كار كرده‌اي و خسته‌اي. احتياج به استراحت داري.»

ليديا روي يك صندلي نشست. صندلي بلافاصله خودش را تطبيق داد, و با تكان خوردن او را آرام كرد. بعد, ليديا در حالي كه بيني‌اش را با دستمال پاك مي‌كرد, گفت: «نمي‌دانم—نمي‌دانم. شايد به قدر كافي كار براي انجام دادن ندارم. شايد زيادي وقت براي فكر كردن دارم. اصلاً چرا كل خانه را براي مدتي خاموش نمي‌كنيم و به تعطيلات نمي‌رويم؟»

«منظورت اين است كه دوست داري خودت برايم نيمرو درست كني؟»

ليديا سرش را تكان داد و گفت: «بله.»

«و جوراب‌هايم را بشويي؟»

ليديا با عصبانيت و چشمان پرآب گفت: «بله.»

«و خانه را جارو كني؟»

«بله, بله … اوه, بله!»

«ولي من فكر مي‌كردم اين خانه را براي همين دلايل خريده‌ايم, تا مجبور نباشيم هيچ كاري انجام دهيم.»

«مسئله همين است. من احساس نمي‌كنم به اينجا تعلق دارم. حالا خانه تبديل به زن و مادر و دايه شده است. آيا من مي‌توانم با يك مرغزار آفريقايي رقابت كنم؟ آيا مي‌توانم بچه‌ها را به خوبي دستگاه خودكار استحمام به حمام ببرم و برس بكشم و با سرعت تميز كنم؟ نمي‌توانم. تازه مسئله فقط من نيستم. خودت هم اين اواخر خيلي عصبي شده‌اي.»

«فكر كنم به علت سيگار كشيدن زياد بوده است.»

«به نظر مي‌رسد تو هم نمي‌دانستي در اين خانه چكار بايد بكني. هر روز صبح بيشتر از گذشته سيگار مي‌كشي, عصرها بيشتر مشروب مي‌خوري, شب‌ها هم احتياج به داروهاي آرام‌بخش بيشتري داري.»

جورج گفت: «واقعاً؟» سعي كرد به دقت خودش را احساس كند ببيند واقعاً تبديل به چه چيزي شده است.

ليديا به در اتاق بازي نگاه كرد و گفت: «اوه, جورج, اين شيرها كه از آنجا نمي‌توانند خارج شوند, اينطور نيست؟»

جورج به در نگاه كرد, و ديد كه در به لرزه در آمده است, انگار از پشت چيزي به آن كوبيده شده باشد.

گفت: «البته كه نه.»

...

2003-09-16

وبلاگ روزبه پورنادر
خوشحالم كه آقاي پورنادر دوباره نوشتن وبلاگش را بعد از مدتي كه ظاهراً در سفر ايرلند بوده است, از سر گرفته است. من از خوانندگان هميشگي وبلاگ او هستم. چون هم برنامه‌نويس فهيمي است, و هم مطالب خوبي در وبلاگ مي‌نويسد. به همه توصيه مي‌كنم سري به وبلاگ او بزنند.

2003-08-31

A Few Changes

Today, I added a statistics link here. Also placed my email in the left column.

2003-08-30

گروه ايران-جاوا: مقاله‌ي فارسي در باره‌ي روبوكد

آيا چيزي در باره‌ي روبوكد مي‌دانيد؟ روبوكد يك شبيه‌ساز نبرد است كه مي‌توانيد در آن شاهد نبرد روبوت‌هايي باشيد كه خودتان و برنامه‌نويسان ديگر به زبان جاوا مي‌نويسيد.

ترجمه‌ي فارسي يك مقاله در باره‌ي روبوكد در قسمت پرونده‌هاي گروه قرار داده شده است. لطفاً به نشاني زير مراجعه فرماييد.

http://groups.yahoo.com/group/iran_java/files/robocode.pdf

نمايش رنگي كليدواژه‌ها و عناصر متني برنامه‌نويسي در سازه‌هاي متني سوينگ


فرض كنيد برنامه‌اي به زبان جاوا نوشته‌ايد كه متن پرونده‌هاي جاوا (يا زبان‌هاي برنامه‌نويسي ديگر, مثلاً HTML) را نشان مي‌دهد. مي‌دانيد چگونه مي‌توانيم به آساني قابليت نمايش رنگي كليدواژه‌ها و عناصر متني برنامه‌نويسي در سازه‌هاي متني سوينگ را به آن اضافه كنيم؟

بهترين روش آن است كه از بسته‌ي org.gjt.sp.jedit.syntax نوشته‌ي Slava Pestov استفاده كنيد كه جزئي از برنامه‌ي jEdit (به نشاني http://jedit.org) است, و تحت ليسانس GPL عرضه مي‌شود. (متن اين برنامه را مي‌توانيد از نشاني http://prdownloads.sourceforge.net/jedit/jedit41source.tar.gz?download بگيريد. البته اين بسته در برنامه‌ي BlueJ نيز مورد استفاده قرار گرفته و نشاني متن آن ftp://ftp.cc.monash.edu.au/pub/bluej/bluej-editor-src-114.jar است.)

در صورتي كه بسته‌ي مذكور را در اختيار داشته باشيم, مي‌توانيم مانند مثال زير از آن استفاده كنيم:

/*
 * In the name of God
 * TestSyntax.java
 * � Ghasem Kiani
 * 29/08/2003 10:07:10 PM
 * ghasemkiani@yahoo.com
 */

package com.ghasemkiani.app.test.syntax;

import javax.swing.*;
import org.gjt.sp.jedit.syntax.SyntaxDocument;

public class TestSyntax extends JFrame
{
	protected JEditorPane editor;
	public TestSyntax()
	{
		super("Syntax Colorizing Test");
		setDefaultCloseOperation(DISPOSE_ON_CLOSE);
		editor = new JEditorPane();
		editor.setEditorKit(new org.gjt.sp.jedit.syntax.SyntaxEditorKit());
		SyntaxDocument doc = (SyntaxDocument)editor.getDocument();
		doc.setTokenMarker(new org.gjt.sp.jedit.syntax.JavaTokenMarker());
		getContentPane().add(new JScrollPane(editor));
		setSize(480, 320);
		setVisible(true);
	}
	public static void main(java.lang.String[] args)
	{
		new TestSyntax();
	}
}

2003-07-11

ترجمه‌ي هري پاتر
چند روزي است مشغول ترجمه‌ي كتاب «هري پاتر و محفل ققنوس» هستم. ترجمه‌ي فصل 1 و 2 آن را مي‌توانيد در قالب يك پرونده‌ي PDF از نشاني زير بگيريد (بايد عضو ياهو باشيد):
اين اولين مطلب فارسي من در اينجا بود. اگر موفقيت‌آميز باشد, شايد بعداً هم مطالب فارسي بنويسم.
فرستادن ايميل را هم فراموش نكنيد.

2003-06-09

I have implemented a LISP interpreter in Java (after a previous version in Delphi). It is a minimal implementation, or better to say, a pure one. I am going to publish it in my site. Anyone interested can email me.

2003-03-13

Consider that you are living a few centuries later! You may be able to manipulate your world in a virtual manner--programmatically. For example, to acquire a car for transportation (virtual or real?), you may do the following:
  java.transport.Car car = new com.chrysler.Automobile();
  car.setColor(java.awt.Color.GREEN);
  car.setMotor(new com.mercedesbenz.Motor(2200));
  // ...
Just imagine! (... could you figure out what I meant?)

2003-03-01

If you are interested, you can also visit my website at http://www.geocities.com/ghasemkiani. I have another site at http://members.fortunecity.com/ghasemkiani. More notes will be added here in the future.
In the name of God Communication is a continuous need of every living creature, humans being no exception. It is to answer this need that I am creating this weblog. May I be welcome!