X
تبلیغات
رایتل

در باره نرم افزار جاده ابریشم

یکشنبه 20 دی 1388 ساعت 12:55 ب.ظ

جاده ابریشم یا راه ابریشم شبکه راههای متصل شده‌ای بمنظور بازرگانی در قاره آسیا بود که شرق و غرب و جنوب آسیا را بهم و به شمال آفریقا و شرق اروپا متصل می‌کرد. این راه از شهرستان توان هوانگ در چین به ولایت کانسو می‌آمد و از آنجا داخل ترکستان شرقی امروزی می‌شد و از طریق بیش‌بالیغ و آلمالیغ و اترار به سمرقند و بخارا می‌رسید. در بخارا قسمت اصلی آن از راه مرو،سرخس،نیشابور، گرگان به ری می‌آمد و از ری به قزوین و زنجان و تبریز و ایروان می‌رفت و از ایروان به طرابوزان یا بیکی از بنادر شام منتهی می‌گردید. قسمت فرعی این راه از سمرقند به خوارزم و از خوارزم به سرای و هشترخان و از آنجا به کنار شط «دن» و بنادر دریای آزف انتها می‌یافت. مهم‌ترین کالایی که بصورت ترانزیت از ایران می‌گذشت ابریشم بود، اما چون ایرانیان مقدار بسیاری از ابریشم خام چین را که وارد می‌کردند، بخود تخصیص می‌دادند قادر بودند محصولات خویش را بهر قیمتی بخواهند بممالک مغرب زمین بفروشند.

نخستین فردی که نام جاده ابریشم یا راه ابریشم را برای این مسیرها انتخاب کرد, جغرافی دان آلمانی بود بنام ]فردیناند ریختوفن که در سال ۱۸۷۷ این کار را انجام داد. وی بسبب حمل ابریشم چین از این راه به دریای مدیترانه و مناطق مختلف دیگر بین راه این نام را برگزید.(برگرفته از ویکی‌پدیا، دانشنامهٔ آزاد)

همان طور تاریچه نشان می دهد که جاده ابریشم یک جاده تجاری وارتباطی بوده.برهمین اساس  یک   نرم اقزار نقشه برداری طراحی نموده و نام آن را جاده ابریشم نامیدیم . 

 

 

 

جاده ابریشم در سده یکم میلادی

در حال حاضر یک نسخه ازمایشی از ان ساخته شده و امید بر ان دارم که بتوان نسخه به روزتر وبا امکانات بالاتر به جامع      نقشه برداران معرفی گردد.ودر این خصوص از تمامی اساتید ، دانشجویان ،برنامه نویسان و علاقمندان به این کار  خواهشمند است با ارائه پیشنهادات ،مشکلات وتجربیات خود مارا یاری کنند 

از قابلیت های این نرم افزار می توان به موارد زیر اشاره کرد 

1.    تماما فارسی 

2.    مشاهده تصاویر رقمی به صورت سه بعدی(در بخش فتوگرامتری) 

3.    محاسبه مساحت ومحیط انواع اشکال هندسی  

4.    دارای محیط گرافیکی برای ترسیم اشکال 

5.    پشتیبانی از dxf 

6.    محاسبه طول و عرض جغرافیایی 

7.    و غیره 

دانلو نرم افزار جاده ابریشم(نسخه 1.2) فارسی

 به دلیل استفاده از فونت خاصی ،امکان دارد در کامپیوتر شما مشکل فونتی وجود داشته باشد.که برای رفع این مشکل می توانید از بسته فونت های فارسی استفاده کنید 

 

نمایی از نرم افزار 

 

 

 محیط کار-main 

 

 

محاسبه کوپل 

 

 

منوهای نرم افزار 

 

سه بعدی ساز نرم افز(تبدیل تصاویر رقومی به شکل سه بعدی 

 

نمایش طول و عرض جغرافیایی 

 

و با امکانات جالب و دیدنی دیگر و محیطی جذاب و دیدنی . 

نسخه ۲ این نرم در حال اماده سازی می باشد که امکانات زیادی از جمله 

چند سندی بودن(کارکرد با چند سند به صورت همزمان مانند اتوکد) 

منوی ابزارهای ویرایشی  

و ......................... 

به ما در بالا بردن کیفیت و ارتقاع کمک کنید.(راهنمایی ها-ایده ها-مشکلات نرم افزارو ۰۰۰۰) خود را درقسمت تماس با ما یا از طریق ایمیل به ما اطلاع دهید.تا شما هم در پیشرفت علم نقشه برداری سهیم باشید.

اروپا طرح موقعیت یاب گالیله را راه اندازی می کند

یکشنبه 20 دی 1388 ساعت 12:52 ب.ظ

اتحادیه اروپا اعلام کرده گالیله، سیستم موقعیت یاب ماهواره ای را که قرار است در این منطقه جایگزین سیستم جی پی اس آمریکا شود، در سال ۲۰۱۴ فعال خواهد کرد.خدمات امداد رسانی اولین گروهی است که به این سیستم دسترسی خواهد داشت و به دنبال آنها سایر گروه های خدماتی خواهند توانست از گالیله استفاده کنند.

سیستم های موقعیت یاب ماهواره ای از فضا اشیای زمینی را ردیابی و مکان دقیق آنها را اعلام می کنند.این سیستم ها نقش حیاتی در سیستم های جهت یاب در خودروها و شبکه های مخابراتی ایفا می کند و استفاده نظامی نیز دارد.

مارک گریگوری، گزارشگر تکنولوژی در بی بی سی می گوید هزینه راه اندازی موقعیت یاب ماهواره ای گالیله فراتر از آن بوده است که پیش بینی می شده و همچنین بارها با تاخیر مواجه بوده است.

پیگیری این طرح دو سال پیش تقریبا متوقف شد. در ابتدا قرار بود هزینه آن توسط بخش خصوصی تامین شود اما تردید درباره عملی بودن آن و حتی این که خلق رقیبی برای جی پی اس تا چه حد منطقی است، باعث شد که تعقیب این طرح متزلزل شود.

نهایتا دولت های اتحادیه اروپا موافقت کردند هزینه این طرح را که بزرگترین طرح فضایی اروپاست، پرداخت کنند.کمیته اجرایی اتحادیه اروپا روز پنجشنبه (۷ ژانویه)، اولین قراردادهای این سیستم را، که گفته می شود کیفیت بهتری نسبت به جی پی اس آمریکا دارد، به کشورهای فرانسه، آلمان و اسپانیا اعطا کرد. ارزش سه قرارداد در مجموع یک میلیارد دلار است.

شرکت “OHB” آلمان برای این سیستم چهارده ماهواره می سازد و گروه فرانسوی آرین اسپیس از ماه اکتبر ۲۰۱۲، آنها را به فضا خواهد فرستاد.قراردادی کوچکتر برای تامین خدمات پشتیبانی به شرکتی در اسپانیا اعطا شده است.

در حال حاضر جی پی اس بازار سیستم های موقعیت یاب را قبضه کرده است اما اتحادیه اروپا می گوید زمانی که گالیله فعال شود دقیق تر خواهد بود و کاربران خواهند توانست مکان های مورد نظر خود را با اختلاف یک متر ردیابی کنند. 

حل معادلات ریاضی پایه توسط موتورجستجوگر مایکروسافت

یکشنبه 24 آبان 1388 ساعت 12:18 ق.ظ

            

در یک اقدام جالب Live Search مایکروسافت امکان حل معادلات ریاضی پایه و یک مجهولی را در موتور جستجوی خود فعال کرده است.  

 

ثلا اگر عبارت 3x + 2x = 150 را جستجو کنید مقدار 30 را برای ایکس بر می گرداند. همچنین میتوانید پاسخ معادلات درجه 2 را نیز به راحتی بدست آورید.

البته گوگل هم در موتور جستجوی خود از ماشین حساب استفاده میکند. اما ماشن حساب گوگل توانایی حل معادلات مجهول دار را ندارد و فقط در موارد ساده 4 عمل اصلی و توان و جذر ، تبدیل واحد ها به یکدیگر و … مورد استفاده قرار میگیرد.

 

شوخی مایکروسافت با طرفداران ایران برخوردار از دانش هسته ای!  

 

ظاهرآ مایکروسافت قصد شوخی با افرادی را دارد که به هر نحوی طرفدار دسترسی ایران به دانش و فناوری هسته ای هستند. برای روشن شدن موضوع مراحل زیر را انجام دهید. 

 

 ابتدا یک فایل Notepad جدید باز کرده و درآن عبارت "iran win via atoms" را بنویسید. (بدون گذاشتن "")

- اکنون این فایل متنی را ذخیره (save) کرده و آنرا ببندید.

- مجددآ این فایل را باز کنید !!!


عبارت iran win via atoms تبدیل به عبارت 物湡眠湩瘠慩愠潴獭 می شود


در این لحظه برای شما یک ضرب المثل به زبان چینی نشان داده می شود. متاسفانه هنوز با کمک چندین برنامه ترجمه موفق به ترجمه دقیق آن نشده ام.

اما آنچه که در این رابطه مسلم می باشد آنکه قطعاً چنین امری در گذشته در ویندوز وجود نداشته است یعنی حداقل تا همین اواخر و بالا گرفتن بحث تمایل ایران به برخورداری از تکنولوژی هسته ای. پس چگونه این موضوع به سیستم عامل ویندوز اضافه شده است؟!

پاسخ این سوال آسان است؛ از طریق بروز رسانی های به اصطلاح امنیتی که مایکروسافت بصورت خودکار برای ویندوز انجام می دهد. بدین ترتیب برنامه نویسان مایکروسافت این تغییرات جانبی را در ویندوز بوجود می آورند. به مایکروسافت پیشنهاد می کنیم بجای این شیطنت بازی ها اندکی به فکر امنیت و توسعه محصولات خود باشد.

نصب SDR Map در ویندوز ویستا یا ویندوز 7

چهارشنبه 20 آبان 1388 ساعت 11:16 ق.ظ

شاید برای شما پیش آمده باشه خواستید نرم افزار SDR Map  را روی سیستم یا لپ تاب خود نصب کنید و به دلیل اینکه سیستم شما ویندوز ویستا یا سیستم عامل جدید مایکروسافت ویندوز سیوین(7) بوده نتوانسید این نرم افزار را نصب کنید.در این مواقع چه کاری انجام می دهید؟؟؟؟؟

خوب چندین راه وجود داره.اول اینکه سیستم فعلی خود را پاک کنید و ویندوز اکس پی نصب کنید.خوب ممکنه در این روش سیستم اورجینال خود تون از دست بدید و یا بدتر اینکه درایورهای ان را نداشته باشد مثل لپ تاب های دل که بعضی از مدل های ان را ندارند. که مشکلات دیگری به وجود میاورد. و یا  از دست دادن جذابیت ها و کارایی های ویندوز جدید(ویستا -7)

دوم اینکه فایل به روز رسانی این نرم که ویندوز ان نرم افزار را پشتیبانی کنه را از مایکروسافت بگیرید. که کار شدنی نیست.(چون در ایران زندگی می کنیم)

گروه نرم افزاری جاده ابریشم روشی را به شما پیشنهاد می کند که شما مشکلات بالا را نداشته و هر نرم افزاری با ویندوز جدید شما مشکل داشته را بصورت کامل و بدون هیچ مشکلی در سیستم خود اجرا کنید.در این روش شما یک سیستم عامل را درون یک سیستم عامل دیگر اجرا می کنید.به عبارتی اجرای ویندوز داخل ویندوز یعنی اگر شما ویندوز ویستا روی سیستم داشته باشید.در داخل سیستم خود می توانید چندین سیستم عامل را به  طور همزمان داشته باشید مانند(( Windows Xp ,Windows 98-Me-2000-Server 2003,Linux,OS/2 که به این روش مجازی سازی گفته می شود.اجازه بدهید توضیح مختصری در رابطه با مجازی سازی بدهیم.

به‌طور خلاصه، مجازی ‌سازی  یعنی استفاده از یک نرم افزار خاص برای جداسازی منابع فیزیکی یک کامپیوتر در قالب کامپیوترهای مجازی. لایه جداسازی امکان می‌دهد که روی هر کامپیوتر فیزیکی چند VM‌ داشته باشیم. هریک از (Virtual Machine)‌VM ها می‌توانند دارای سیستم‌ عامل خود باشند و آن را اجرا کنند. اگر راه‌اندازی ‌VM در لایه جداسازی به‌ درستی صورت گیرد، سیستم‌ عاملی که روی‌ ‌VM اجرا می‌شود، درست مثل این‌که روی خود سخت افزار نصب شده باشد، کار می‌کند. سیستم‌ عامل میزبان ‌(‌host)، اولین سیستم‌ عامل است و مستقیما روی سخت‌افزار فیزیکی نصب می‌شود. مجازی ‌سازی به وسیله نرم‌افزاری که روی این سیستم‌ عامل نصب می‌شود و کار می‌کند، انجام می‌گیرد. سیسستم‌عامل‌های میهمان ‌(‌guest)، تحت نرم‌افزار مجازی ‌سازی و روی ‌VMهایاختصاصی خودشان اجرا می‌شوند. سیستم‌ عامل‌های میهمان از طریق لایه مجازی ‌سازی به‌منابع ماشین فیزیکی (کامپیوتر اصلی) دسترسی دارند.مجازی سازی روشی را برای خلاص شدن از شر یکسری  قوانین که هر روز هم بیشتر می‌شوند فراهم می‌کند. هنگامی که یک سیستم و یا زیر سیستم، مثلا یک CPU و یا هارد دیسک مجازی‌سازی می‌شوند، ظواهر مربوط به آنها و تمامی منابعی که از طریق آن ظواهر قابل دسترسی هستند به ظواهر و منابعی از سیستم واقعی که در حال کار است نگاشت می‌شوند. اگر بخواهیم مجازی‌سازی را بصورت رسمی تعریف کنیم، باید گفت که مجازی‌سازی عبارتست از یک همریختی که یک سیستم مهمان را به یک سیستم میزبان نگاشت می‌کند.

نرم افزارهای زیادی برای این روش وجود دارند که ما در اینجا نرم افزار  Microsoft Virtual PC را به علت سادگی و قابل اصمینان بودن به شما معرفی و توضیح مختصری درباره ان خواهیم داد

مایکروسافت ویرچوال پی ‌سی ( Microsoft Virtual PC) نرم‌افزار مجازی ‌سازمایکروسافت می‌باشد.با استفاده از این نرم افزار امکان اجرای چند سیستم عامل روی کامپیوتر خود به صورت هم زمان و استفاده از قابلیت‌های مختلف آن سیستم عامل‌ها در کنارهم بدون نیاز یه سوییچ کردن بین آنها می‌باشد. این نرم افزار رایگان می‌باشد و آخرین ویرایش کنونی آن (مایکروسافت ویرچوال پی‌سی ۲۰۰۷) را می‌توان از سایت مایکروسافت آن را دانلود کرد. (حدود 30مگابایت)نسخهٔ دیگری از این نرم افزار به نام مایکروسافت ویرچوال سرور می‌باشد که برای اجرا در سرور می‌باشد. استفاده از نرم افزارهای مجازی سازی به خاطر اجرای چند سیستم عامل به صورت هم زمان و استفاده از قابلیت‌های مختلف آن سیستم عامل‌ها در کنارهم و صرفه جویی در هزینه و سخت افزار در چند سال گذشته در دنیا زیاد شده است. نرم افزار Virtual PC ابتدا توسط شرکت x ساخته شد. اولین نسخه این نرم‌افزار برای Macintosh طراحی شده بود و در ژوئن سال 1997 ارائه شد. 4 سال بعد در ژوئن سال 2001 اولین نسخه Virtual PC برای سیستم عامل Windows (یعنی همان نسخه 4.0) ارائه شد. چون با گذشت زمان مشخص شد که ساخت کامپیوتر‌های مجازی مورد توجه سازمان‌ها قرار گرفته است، مایکروسافت به موضوع علاقه‌مند گشت و در فوریه 2003 تصمیم گرفت تا Virtual PC و یک محصول هنوز ارائه نشده به نام Virtual Server که در واقع مکملی برای Virtual PC می‌باشد را از Connectix خریداری کند.و این‌طور شد که Virtual PC به PC Microsoft Virtual تغییر نام داد.

1.     روش کار با این نرم افزار بسیار ساده می باشد بعد از نصب نرم افزار با انتخاب گزینه new و سپس در کادر Wizard  بر روی گزینه next  کلیک می کنیم

2.     گزینه اول (Virtual Machine Create) را تیک زده و برروی next  کلیک می کنیم

3.     در کادر سوم برروی Browse کلیک کرده درایوی را برای ذخیره ماشین  مجازی اتخاب می کنیم. توجه داشته باشید.که درایو مربوطه دارای فضای کافی باشد(حدود 3 گیگابایت به بالاتر)

4.     سیستم عامل مورد نظر را انتخاب می کنیم و برروی next  کلیک می کنیم

5.     در اینجا از شما می پرسد که چه مقدار از ram سیستم به این برنامه اختصاص می دهید

که می توانید ram  پیشنهادی (گزینه اول) یا وارد کردن مقدار دلخاه-کلیک next

6. برروی گزینه a New Virtual Hard Disk کلیک وnext کنید

7         .  برروی Browse کلیک کرده درایوی را برای ذخیره هارد   مجازی اتخاب می کنیم. توجه داشته باشید.که درایو مربوطه دارای فضای کافی باشد(حدود 3 گیگابایت به بالاتر) و مقدار را برای هارد مجازی وارد می کنیم و برروی گزینه next  کیک ودر اخر برروی Finish کلیک کرده

در اینجا ساخت یک ماشین مجازی به اتمام رسید که نوبت به نصب ویندوز بر روی ان میرسد

سی دی ویندوز را در دستگاه قرار داده و سپس برروی گزینه Start  کلیک کنید.و مانند یک کامپیوتر واقعی از ان لذت ببرید .البته این نرم افزار دارای قابلیتهای زیادی می باشد که در اینجا فرصت توضیح انها نیست که برای اطلاعات بیستر به help  نرم افزار یا سایت مایکرسافت وغیره

سر بزنید 

 

نمایی از نرم افزار SDR Map 

 

 

 

البته یه راه دیگر نیز می توانیم پیشنهاد کنیم که برای این کار شما از یک Windows Xp Live استفاده می کنید.این ویندوز از روی CD  اجرا می شود . دیگر نیازی به نصب نمی باشد.مانند تمام نسخه های سیستم عامل لینوکس به صورت دیسک زنده می باشد

  

 در حالت اینکه اگر شما با CD Live ویندوز بالا امده باشید هیچ اطلاعات از سیستم شما پاک نمی شود.و با خیال راحت می توانید از این روش استفاده کنید

در این روش شما SDR Map  را در ویندوز ویستا یا ویندوز 7 نصب می کنید. و سپس از طریق CD  سیستم خود را بوت ( Boot ) می کنید.در اینجا نیز از محیط ویندوز اکس پی استفاده کنید و با رفتن در مسیر نصب شده SDR Map برنامه را اجرا کنید. 

 

برنامه های لیسپ

یکشنبه 17 آبان 1388 ساعت 12:35 ق.ظ

در پست های قبلی در مورد زبان برنامه نویسی لیسپ توضیحات داده شد.در اینجا قصد داریم چند برنامه مفید و پرکار برد اپلود کنیم.امیدوارم مورد پسند دوستان عزیز قرار گیرد

تاریخچه Visual LISP
با اینکه چند سالی میشود که لیسپ به تاریخ پیوسته و جای آن را «ویژوآل لیسپ» پر کرده ولی هنوز هستند اکثریت کاربران اتوکدی که هنوز با LISP و یا Visual LISP آشنایی چندانی ندارند.لیسپ زبان اختصاصی شرکت اتودسک برای آسان تر کردن مجموعه عملیات های مشابه و تکراری با کمک دستورات و کدهای از قبل تعریف شده میباشد که کاربر را یاری میدهد تا در ترسیمات خود دستورات و عملکردهای سفارشی مختص به خود را تهیه کند.با پیشرفت کردن و متنوع تر شدن دستورات و امکانات اتوکد فقدان یک زبان برنامه نویسی قوی برای عملکردهای پیچیده تر احساس شد. یکی دیگر از عوامل مهم در مهاجرت از LISP به Visual LISP عدم امکانات محافظت از برنامه های نوشته شده در LISP برای جلوگیری از کپی برداری های غیر مجاز از برنامه ها بوده است.در این مرحله بود ماکروسافت نرم افزار VB معروف خود را تحت عنوان جدیدی به نام VBA (مخفف Visual Basic Application) عرضه کرد و زمینه خوبی برای استفاده این زبان برنامه نویسی که در واقع نسخه غیر مستقل VB شناخته میشد را در بسیاری از نرم افزارهای دیگر از جمله مجموعه office و همچنین مجموعه نرم افزارهای خانواده Autodesk فراهم شد.

VBA
ای که در خانواده اتودسک به کار گرفته شد مجهز به مجموعه کدهایی برای استفاده از دستورات و فرمانهای اتوکد به همراه استفاده از متغیرهای سیستمی با امکان استفاده از پنچره های محاوره ای متداول برنامه نویسی میباشد.و اما لیسپ:با اینکه VBA امروزه بسیار قویتر و مجهز تر از LISP میباشد ولی هنوز شاهد ابتکارهای بسیار جالبی با کدهای قدیمی لیسپ هستیم.چرا که این برنامه ساده تر سالهای سال تنهای ابزار برای نشان دادن مهارت برنامه نویسان اتوکد بوده و سخت است که به زودی به بوته فراموشی سپرده شود.و اینچنین است که هنوز با جستجوی کلمه LISP در موتور جستجوی گوگل بیش از 14 ملیون نتیجه را می یابیم و سایتهای بسیار بزرگ و معروفی که نسبت به آرشیو کردن مجموعه های ارزشمند LISP همچنان فعال هستند را میینیم 

شاید برای شما پیش اومد باشه که بخواهید یک سری مختصات از فایل ترسیمی داشته باشید. مسلما برای گرفتن مختصات از روشهای سنتی مثل فرمان ID  نیاز به زمان بیشتری خواهید داشت.که با این برنامه سرعت بی نظیر به کارتان می توانید بدهید.(کاربردها:پیاده کردن نقاط اکس مسیر و ............)

با این فایل می تونید همزمان که از نقاط ID می گیرید اونو مستقیم به فرمت GSI داخل یه فایل بریزید و فایل هم به راحتی به توتال انتقال بدید!  طرز کارشم خیلی راحته!از منوی Tools > Load Aplication فایل لیسپ رو لود می‌کنیدبعدش توی خط فرمان تایپ می‌کنید TPF بعد از اون از ما می خواد که نام فایل رو بنویسید. توجه داشته باشید که فقط نام رو بنویسید و از نوشتن پسوند خودداری کنید چون اتوماتیک فایل ساخته شده پسوند GSI میگیره.بعد از نام فایل اینتر می کنید. حال از ما سوال میکنه که می خواید پیشوند نقاط چی باشه. با نوشتن حرف C و اینتر کردن از این مرحله صرف نظر می کنید! سوال بعدی این هست که شماره نقاط از چه شماره ای شروع بشه که می تونید عدد ۱رو بزنید و اینتر کنید.بعد از این کار پیام Selection Piont روی خط فرمان ظاهر میشه که با کلیلک کردن بر روی نقاط مخصات اون نقطه به صورت GSI ذخیره میشه.نکات : 

لازم به زدن دستور ID نمی باشد

-2با کلیلک کردن بر روی یک نقطه نرم افزار منتظر نقطه ی بعدی می ماند و هر کلیک بر روی صفحه‌ی Drawing یک مختصات فرض میشود و آن را ذخیره می کند پس مواظب باشید تا مختصات های تصادفی ذخیره نگردد

-3بعد از کلیک کردن بر روی آخرین نقطه نرم افزار منتظر نقطه‌ی بعدی می باشد که شما با زدن کلیدEnter به آن خاتمه می دهید

-4در بعضی مواقع Osnap غیر فعال می گردد که شما باید آن را فعال کنید. 

دانلود فایل لیسپ

خیلی اوقات پیش میاد که ترسیماتی به دستم میرسه که اصولی کار نشده و نمیدونم چرا پر از نقطه های اضافی هست. این نقطه ها در ترسیماتی که قراره GIS Ready بشه مشکلات زیادی ایجاد میکنه. علاوه بر این ترسیم شما رو خیلی آماتور نشون میده!پاک کردن این نقاط اگر زیاد هم باشند و در لایه های مختلف هم باشند ممکنه خیلی خسته کننده باشه و احتمالا چند تایی هم از زیر دست شما در میره !ممکنه سعی کرده باشید این نقاط رو با کمک فیلتر ها مختلف انتخاب و حذف کنید ولی در کمال تعجب نتوانستید !دلیلش هم اینه که اصلا اینها نقطه نیستند بلکه خطوطی با طول صفر هستند که ظاهری شبیه نقطه دارند. برای حذف این شبهه نقاط میتوانید از لیسپ زیر استفاده کنید. در این لیسپ کلیه Line ها و Polyline های با طول صفر و کلیه متن های خالی و به طور کلی single-vertex ها رو پاک میکنه. این لیسپ کاری با نقاط واقعی نداره! ضمنا قبل از استفاده از این لیسپ مطمئن شوید که هیچ لایه ای قفل نباشه.

دانلود فایل لیسپ

و چند لیسپ جالب دیگر

Kateb –  کاتب – برای نگارش فارسی بدون مشکل در محیط برنامه اتوکد
TAREAF –
برای گرفتن مساحت کلی چندین آبجکت به صورت همزمان
Tlen –
برای گرفتن طول چندین آبجکت به صورت همزمان

برای دانلود کردن روی دانلود کلیک نمایید، بعد از باز کردن فایل ها آنها را درون فولدر Support اتوکد کپی نمایید و برای اجرای آنها به وسیله Load Application آنها را Load کرده سپس نام آنها را تایپ نمایید.

حجم :   5KB(دانلود)

این فایل لیسپ با گرفتن زاویه‌ی یک خط .. یک تکست رو به همون زاویه میچرخونه در بعضی موارد کاربرد داره(دانلود)

این برای entity هاست(دانلود)

تلسکوپ برگ دوچشمی (LBT )

شنبه 18 مهر 1388 ساعت 12:39 ق.ظ

لحظه های که اولین نور به آینه های یک تلسکوپ تابیده می شود ، لحظه ی بسیار مهمی است  و اگر این تلسکوپ قوی ترین تلسکوپ جهان باشد ، اهمیت آن فوق العاده بیشتر می شود .

تلسکوپ بزرگ دوچشمی(LBT ) از کنار هم قرار دادن دو تلسکوپ بازتابی ساخته شده که بزرگی آینه هر کدام از این تلسکوپ ها 8.4 متر است . این دو تلسکوپ به هنگام رصد کردن ، هم زمان به یک نقطه از آسمان نگاه می کنند (مانند یک دوربین دوچشمی) تا همانند یک تلسکوپ بزرگ عمل کنند . به این ترتیب میزان نور جمع آوری شده توسط این تلسکوپ با یک تلسکوپ 11.8 متری برابری می کند ؛ و دقت تصاویر تهیه شده توسط آن مساوی با یک تلسکوپ 22.8 متری است .

اولین تصویر  LBT در ژانویه امسال و از کهکشان NGC 2770 تهیه شده ، این کهکشان در فاصله ی 120 میلیون سال نوری از ما قرار گرفته است . در تصویر اول این کهکشان در طول موج مادون قرمز دیده می شود (طولی موجی که در آن ستارگان پیر تر و سردتر به خوبی قابل مشاهده اند) سپس  تصویر دیگری از همین کهکشان در طول موج ماورای بنفش تهیه شد(ناحیه فعال شکل گیری ستارگان) و از ترکیب این دو تصویر تصویر زیر ساخته شده است ، تصویری فوق العاده از کهکشان NGC 2770 .

 

این تلسکوپ بر بالای کوه Graham در جنوب ایالت آریزونا آمریکا قرار دارد . آینه اول آن در سال 2003 تحویل و در سال 2004 نصب شده ،آینه دوم آن نیز در سال 2005 تحویل داده شده بود و هم اکنون این تلسکوپ آماده استفاده ی ستاره شناسان است .

لیسپ یک زبان برنامه‌نویسی

پنج‌شنبه 16 مهر 1388 ساعت 11:23 ب.ظ

لیسپ لیسپ یک زبان برنامه‌نویسی رایانه است که در سال ۱۹۵۸ به وسیلهٔ جان مک‌کارتی ابداع شده‌است. این زبان، مانند زبان برنامه‌نویسی پرولوگ، بیشتر برای برنامه‌نویسی هوش مصنوعی مورد استفاده قرار می‌گیرد. با توجه به اینکه زبان لیسپ از نحو ساده‌ای برخوردار است، تجزیه و پیاده‌سازی آن نسبتاً با سهولت انجام می‌شود.
متن برنامه‌های لیسپ عموماً از نمادها و لیست‌هایی از نمادها تشکیل می‌شود و بدین خاطر است که این زبان لیسپ (مخفف پردازش لیست) نامیده شده‌است. یکی از ویژگی‌های جالب زبان لیسپ این است که خود برنامه‌های لیسپ نیز لیست هستند و بنا بر این، می‌توان با برنامه‌ها به عنوان داده‌ها رفتار کرد و یا داده‌ها را به عنوان برنامه ارزیابی نمود.
لیسپ دارای گویش‌های مختلفی است که بعضی از آنها دارای قابلیت‌های شیءگرا نیز هستند. از این میان می‌توان به کامن لیسپ اشاره کرد.
در ابتدا لیسپ به عنوان علامتگذاری و نمادسازی ریاضیات و برای برنامه‌های کامپیوتری ابداع شد.زبان لیسپ به سرعت مورد توجه برنامه نویسان از جمله برای تحقیقات علمی هوش مصنوعی قرار گرفت.لیسپ یکی از ابتدائی ز بان‌های برنامه نویسی می‌باشد،ودر علوم کامپیوتر بر بسیاری از تفکرات و ایده‌ها پیشگام بود.لیسپ شامل ساختمان دادهٔ درخت،مدریت نگهداری اتوماتیک،برنامه نویسی پویا،برنامه نویسی شی گرا و کامپایلر مستقل می‌باشد.
نام لیسپ از زبان پردازش لیسپ گرفته شده‌است.لینک لیست یکی از قسمت‌های اصلی ساختمان دادهٔ زبان لیسپ است و سورس کد لیسپ از لیست‌ها ساخته شده‌است و می‌تواند به عنوان ساختمان داده عمل کند.پیشرفت و توسعهٔ سیستم ماکرو به برنامه نویسان اجازه می‌دهد تا ترکیب‌های جدید ویا حتی حیطهٔ زبان‌های برنامه نویسی ویژه‌ای را ایجاد کرده و در زبان لیسپ تعبیه کنند. قابلیت تبادل کدها و داده‌ها به زبان لیسپ قابلیت تشخیص ترکیب‌ها را می‌دهد،همهٔ کدهای برنامه به صورت عبارت‌های نمادین یا لیست‌های پرانتز گذاری شده نوشته شده‌اند.
یک تابع می‌تواند توسط خودش ویا توابع دیگر فراخوانی شود ویا طبق قواعد نحوی نوشتن یک لیست و استفاده از اول نام عملگرها و پیروی کردن از قواعد آرگومان‌ها ایجاد شود.به عنوان مثال تابع fدارای 3 آرگومان می‌باشد و به صورت مقابل توانائی فراخوانی را دارد و مورد استفاده قرار می‌گیرد:

(f x y z)

زبان برنامه نویسی لیسپ توسط جان مک کارتی در سال 1958 در حالی که در مؤسسهٔ فناوری ماساچوست (MIT) بود ابداع شد.مک کارتی طرح خودش را در یک مقالهٔ مرتبط با انجمن ماشین آلات کامپیوتری در سال 1960 منتشر کرد.طرح وی در ابتدا به صورت «بخش اول:توابع بازگشتی از دید عبارت‌های نمادین و محاسبهٔ آنها توسط ماشین» ارائه شد و بخش دوم آن هیچگاه منتشر نشد.وی نشان داد که با یک تعداد ساده و کمی از عملگرها و علمتگذاری توابع می‌توان یک زبان تورینگ کامل برای الگوریتم‌ها ایجاد کرد. زبان پردازش اطلاعات اولین زبان هوش مصنوعی بود. از سال 1955 یا 1956 و پیش از آن ایده‌های بسیاری بر زبان لیسپ وارد شد از جمله پردازش لیست و توابع بازگشتی که در زبان لیسپ به کار برده شد. ثبت‌های اصلی مک کارتی به صورت عبارت‌های غیر نمادین که خواستار تفسیر کردن و برگرداندن به عبارت‌های نمادین بود.به عنوان مثال عبارت غیر نمادین car[cons[A,B]] معادل عبارت نمادین (car (cons A B)بود که در زبان لیسپ به کار گرفته شده بود.برنامه نویسان به سرعت عبارت نمادین را انتخاب و عبارت‌های غیر نمادین را ترک کردند.
لیسپ برای اولین بار توسط استفان راسل روی یک کامپیوتر IBM 704 اجرا شد. راسل مقالهٔ مک کارسی را مطالعه کرد و دریافت که توابع لیسپ می‌توانند در کد ماشین اجرا شوند. این نتیجه از مطالعه و دریافت راسل نشان می‌دهد که مفسر لیسپ می‌توانست برای اجرای برنامه‌های لیسپ و ارزیابی صحیح عبارت لیسپ استفاده شود.
دو زبان اسمبلی به عنوان دو عملیات اصلی و ابتدائی تجزیه و جدا کردن عناصر اصلی لیست برای IBM 704 شد.این دو زبان اسمبلی car (مضمون آدرس ثبات) و cdr (محتوای کاهش میزان ثبات‌ها) نسخهٔ لیسپ هنوز ازcar وcdr برای عملیاتی که اولین عنصر در یک لیست و باقی ماندهٔ لیست را برمی‌گرداند،استفاده می‌کند.
اولین کامپایلر تکمیل شدهٔ لیسپ،در سال 1962توسط تام هارت و مایک لوین در MIT اجرا شد، این کامپالر معرفی شده مدل لیسپ با کامپایلر نحوی در هر کامپایل و ترجمهٔ توابع می‌تواند به طور رایگان در هم بیامیزد.
زبان به کار گرفته شده در ثبت هارت و لوین نسبت به کدهای ابتدائی مک کارتی به شیوهٔ لیسپ مدرن و جدید نزدیک تر می‌باشد.
پیوستن به هوش مصنوعی:
بعد از شروع لیسپ ، لیسپ به انجمن تحقیقاتی هوش مصنوعی پیوست ، خصوصا به سیستم‌های PDP ، زبان لیسپ به عنوان پیاده ساز طرح کوچک زبان برنامه نویسی استفاده می‌شود که مبنایی برای سیستم معروف هوش مصنوعی SHRLU بود.
در سال 1970 تحقیقات علمی هوش مصنوعی به شاخه‌های تجاری انشعاب پیدا کرد که کارایی سیستم لیسپ موجود در این زمینه یک روند رو به رشد شد.
لیسپ یک سیستم مشکل برای اجرا، مهارت کامپایلر و سخت افزار ذخیره کننده را در سال 1970 دارا باشد. بازیابی عادی حافظه ، توسط دانشجوی فارغالتحصیل MIT ( دانیل ادوارد ) گسترش داده شده ،که برای اجرای لیسپ روی سیستم‌های محاساتی ساخته شده بود اما راندمان آن هنوز یک مشکل بود. برای رهبری ماشین لیسپ: سخت افزار اختصاصی برای اجرای محیط لیسپ و برنامه‌های آن استفاده می‌شود. پیشروی در هردو سخت افزار کامپیوتر و فناوری کامپایلر از ماشین‌های لیسپ از کار افتاده الهام گرفته شده‌است.
طی شک کوشش بزرگ نسخه‌های بیشماری از زبان لیسپ را در یک زبان واحد متمرکز و متحد کردند(نسخه‌های برجسته و قابل ملاحظه‌ای شامل: اینترلیسپ ، مک لیسپ ، متالیسپ ، و فرانزلیسپ) زبان‌های جدید (لیسپ عمومی و مشترک ) در اصل یک زیر مجموعهٔ سازگاری از نسخه‌های تعویض شده بود. در سال 1994 ، ANSI یک لیسپ عمومی و مشترک استاندارد منتشر کرد. لیسپ عمومی و مشترک زبان برنامه نویسی فناوری اطلاعات ANSI X3.226-1994 در آن زمان فروشگاه‌های جهانی برای لیسپ خیلی کوچکتر از المان بود.
ترکیب و معنا شناسی:
لیسپ یک عبارت جهتدار است ، برخلاف بیشتر زبان‌های دیگر ، بین عبارت‌ها و جمله‌ها تمایز و فرقی وجود ندارد . همهٔ کدها و داده‌ها به عنوان عبارت‌ها نوشته شده‌اند – زمانی که یک عبارت ارزیابی می‌شود یک مقدار ( یا یک لیستی از مقادیر) را می‌سازد ، که آن هم در داخل عبارات دیگر جاسازی می‌شود.
مقالهٔ 1958 مک کارتی دو نوع از ترکیب‌ها را معرفی کرد: عبارت نمادین Sexps هم نامیده می‌شود ، که بازتابی از نمایش داخلی کدها و داده هاست و عبارت غیر نمادین هرگز مورد توجه قرار نگرفت و تقریبا همهٔ زبان‌ها امروزه از عبارات نمادین استفاده می‌کنند.
استفاده از پرانتزگذاری‌ها تفاوت بسیار آشکار و مشهودی میان لیسپ و دیگر زبان‌های برنامه نویسی ایجاد کرده‌است . اسم مستعار LISP از Lost In Stupid Parenthese و یا Lost of Irritating Supper fluous parenthese گرفته شده‌است . هرچند ترکیب عبارت‌های نمادین مسئولی برای توان لیسپ است ، این ترکیب به شدت با قاعده و منظم است.
هرچند ترکیبات لیسپ به نمادگذاری قدیمی محدود نشده‌اند می‌تواند به سبک‌های دیگر توسعه پیدا کند. تکیه روی عبارت‌ها ، قابلیت انعطاف پذیری زیادی به زبان می‌دهد ، زیرا توابع لیسپ به صورت لیست نوشته شده‌اند ، آنها دقیقا مانند داده‌ها می‌توانند پردازش شوند، این قابلیت اجازه می‌دهد برنامه‌های لیسپ به سادگی و راحتی نوشته شوند و به نسبت برنامه‌های دیگر به راحتی اداره شوند . (برنامه نویسی غیر نمادین)بسیاری از نسخه‌های زبان لیسپ با عناصر جدا شده توسط فاصله‌های سفید و پرانتزگذاری شده‌ها نوشته می‌شود. برای مثال (1 2 f00 ) یک لیست است که عنصرهای آن سه اتم هستند ( اتم: کوچکترین عضو لیست ) : این مقادیر 1 و 2 و F00 هستند. این مقادیر ضمنا دارای نوع داده‌ای خاصی هستند ، مثلا این لیست دارای دو عدد صحیح 1 و 2 و یک نوع دادهٔ ویژهٔ لیسپ که یک Symbol یا نماد نامیده می‌شود.
همچنین یک لیست خالی () به عنوان یک اتم ویژهٔ صفر و یا پوچ معرفی شده‌است. موجودیت یک لیسپ از اتم و لیست تشکیل می‌شود. عبات‌ها به عنوان لیست نوشته شده‌اند ، استفاده کردن از ثبت‌های پیشوندی ، عناصر ابتدایی در لیست نامی از یک شکل تابع ، عملگرها ، ماکروها و یا اپراتورهای ویژه‌است.
آرگومان‌ها باقیمانده‌هایی از لیست‌ها هستند ، برای مثال تابع list آرگومان‌ها را به عنوان یک لیست بر می‌گرداند ، بنابراین عبارت (list ‘1 ‘2 ‘foo) ارزیابی می‌شود و حاصل این ارزیابی لیست (1,2,foo) می‌باشد.
نیازی به ارزیابی کردن اعداد نیست چون ارزیابی عدد 1 عدد 1 می‌شود.آرگومان‌های مثال قبل از اعداد هستند یعنی آرگومان‌های ویژه که این آرگومان‌ها از ارزیابی کردن آرگومان‌ها جلوگیری می‌کنند چون مقادیر آن‌ها مشخص است.هر عبارتی که بیان می‌شود قبل از اینکه با عبارات دیگر پیوست داده شود به صورت بازگشتی ارزیابی می‌شود.
(list(1 2 (list(3 4)))) در این مثال حاصل اررزیابی به صورت لیست (1,2(3,4)) می‌باشد ،توجه کنید این لیست دارای 3 آرگومان می‌باشد ، لیست‌ها می‌توانند به صورت تو در تو باشند . اپراتورهای حسابگر به صورت همسان رفتار می‌کنند.
حاصل عبارت (+1 2 3 4 ) عدد 10 می‌باشد. عبارت معادل عبارت بالا به صورت 1+2+3+4 می‌باشد که از نشانگذاری میان وندی استفاد شده‌است. اپراتورهای حسابگر در زبان لیسپ variadic(n-ary) که زبان لیسپ توانایی پذیرفتن هر تعداد آرگومان را داراست.
عملگرهای ویژه ساختمان کنترل لیسپ را آماده می‌کنند. برای مثال ، اپراتور ویژه if سه آرگومان می‌پذیرد،اگر اولین آرگومان صفر و یا خالی باشد دومین آرگومان ارزیابی می‌شود و در غیر این صورت هٔرگومان سوم بررسی می‌شود . بنابر این if(nill(list 1 2 “foo”)(list 3 4 “bar”) که تنها آرگومان (list 3 4 “bar”) بررسی می‌شود.

عبارت‌های لاندا(Lambda) :
دیگر عبارت‌های ویژه لاندا می‌باشد که برای وصل کردن متغیرها به مقادیرشان که درون یک عبارت ارزیابی می‌شوند استفاده می‌شود. این عملگر همچنین برای ایجاد کردن توابع هم استفاده می‌شود. آرگومان‌های درون لاندا یک لیستی از آرگومان‌ها هستند و عبارت ارزیابی توابع می‌باشند. مقادیر بازگشتی مقادیری از عبارت قبلی که ارزیابی شده‌اند هستند.
عبارت (Lambda(arg)(+arg1)) زمانی که این تابع به کار برده می‌شود به صورت یک تابع ارزیابی می‌شود و وظیفهٔ این تابع معرفی کردن یک آرگومان و اتصال دادن آرگومان به arg و در نهایت برگرداندن یک عدد بزرگتر از آرگومان قبلی می‌باشد عبارت‌های لاندا خیلی متفاوت با نام تابع رفتار نمی‌کند بنابراین اگر در عبارت (Lambda(arg)(+arg1))5->6 عدد 5 را وارد کنیم خروجی آن 6 می‌شود. اتم‌ها : در نسخهٔ اصلی لیسپ دو نوع دادهٔ ابتدایی وجود دارد: اتم‌ها و لیست‌ها یک لیست یک رشتهٔ منظم و محدودی از عناصر می‌باشد ، که هر عنصر در درون خودش یکی از این اتم‌ها و یا لیست‌ها را دارد و یک اتم یک عدد یا یک نماد می‌باشد.
در اصل یک نماد یک رقم منحصر به فرد می‌باشدو به عنوان یک رشتهٔ عددی در سورس کد نوشته شده و هر دو به عنوان یک نام متغیر و یک رقم داده‌ای در پردازش نمادین استفاده می‌شود برای مثال list(foo(BAR 1)2) شامل سه عنصر : Symbol foo و list(BAR 1) و عدد 2 می‌باشد. تفاوت اصلی بین اتم‌ها و لیست‌ها این است که اتم‌ها تغییر ناپذیر و منحصر به فرد می‌باشند. دو اتم که دقیقا به یک صورت و به یک روش در یک شی نوشته شده باشد در مکان متفاوتی در سورس کد ظاهر می‌شوند، هر لیست یک شی مجزا می‌باشد و به خاطر اینکه مستقل از دیگر لیست هاست و از دیگر لیست‌ها به وسیلهٔ مقایسهٔ عملگرها مشخص می‌شود.

Cons‌ها و لیست‌ها:
یک لیست لیسپ یک لینک لیست جداست، هر ذره از این لیست یک Cons نامیده می‌شود و از دو اشاره گر که Car و Cdr نامیده می‌شوند ترکیب شده‌است این دو اشاره گر به ترتیب معادل دو فیلد Data و Next در مقالهٔ لینک لیست می‌باشد.
Car -> Data Cdr -> Next

بسیاری از ساختمان داده‌ها می‌توانند ترکیب‌هایی از خانه‌های Cons را داشت باشند ، یکی از این ساختمان داده‌های ابتدایی لیست مخصوص نامیده می‌شود ، یک لیست مخصوص هر دو نماد لیست خالی nill و یا خانه‌ها Cons را داراستکه در هر یک از این خانه‌ها هر اشاره گر Car به یک داده اشاره می‌کند (که ممکن است این اشاره گر Cons به یک لیست اشاره کند) و یک اشاره گر Cdr به یک لیست مخصوص دیگر اشاره می‌کند. اگر یک Cons داده به سر یک لینک لیست برده شود سپس اشاره گر Car آن به اولین عنصر از لیست و اشاره گر Cdr آن به انتهای یک لیست اشاره می‌کند به همین دلیل عملکرد Car و Cdr را به ترتیب first و rest هم نامیده می‌شود.
ارایهٔ لیست عبارت نمادین:
نمایش پرانتزگذلری عبارت نمادین ساختمان لینک لیست . چندین راه برای نمایش لیست یکسان به عنوان یک عبارت نمادین وجود دارد . یک خانه (Cons ) می‌تواند به صورت نشان گذاری جفت نقطه گذاری شده نوشته شود به عنوان مثال (a.b) که در آن a یک Car و b یک Cdr است. یک لیست مخصوص بلند ممکن است به صورت یک نشان گذاری جفت نقطه گذاری شده نوشته شود .(a.(b.(c.(d.nill))))

طبق قرارداد کوتاه شدهٔ عبارت بالا به صورت (a b c d ) در نمادسازی لیست می‌باشد یک لیست مخصوص ممکن است در یک ترکیبی از دو صورت (a b c.d) نوشته شود . برای سیستمی از سه Cons که آخرین Cdr آن d است.

دستورالعمل‌های پردازش لیست:
لیسپ دستورالعمل‌های زیادی را برای دستیابی و کنترل لیست‌ها فراهم می‌کند . لیست‌ها می‌توانند مستقیما با پردازهٔ لیست ایجاد شوند .لیست هر تعدادی از آرگومان‌ها را می‌پذیرد و تعدادی از آرگومان‌ها را بر می‌گرداند.

(list 1 2 ‘a 3 ); Output : (1 2 a 3 ) (list 1 ‘(2 3) 4 ); Output : (1 (2 3) 4)

به این دلیل راهی که لیست‌ها ایجادمی شوند از جفت‌های Cons (Car,Cdr) پردازهٔ Cons می‌تواند برای اضافه کردن یک عنصر به جلوی یک لیست استفاده شود. توجه کنید که پردازهٔ Cons در هدایت و به کار بردن آرگومان‌های لیست نامتقارن است ، بدین دلیل روش‌های لیست‌ها ایجاد می‌شوند.

(Cons 1 ‘(2 3)); Output: (1 2 3 ) (Cons ’(1 2) ‘(3 4)) Output : ((1 2) 3 4)

پردازهٔ Oppend دو یا چند لیست را با هم ادغام می‌کند و یک لیست واحد ایجاد می‌کند زیرا لیست لیسپ یک لینک لیست است و پیچیدگی زمانی الحاق کردن لیست‌ها از مرتبهٔ پیچیدگی زمانی O(n) می‌باشد.
ساختار اشتراکی: لیست‌های لیسپ لینک لیست‌های ساده می‌توانند با یکی دیگر از لیست‌ها در ساختمان مشترک باشند به عبارت دیگر دو لیست می‌توانند دم یکسانی داشته باشندیا رشتهٔ پایانی از Cons‌های یکسانی داشته باشند مثلا:

(setf foo (list 'a 'b 'c)) (setf bar (cons 'x (cdr foo)))

لیست foo و bar به ترتیب به صورت (a b c) و (X b c ) هستند هرچند دم (b c ) در هر دو لیست ساختار یکسانی دارند ولی مانند هم نیستند، خانه‌های Cons اشاره گر به b و c در محل حافظهٔ یکسانی برای هردو لیست قرار دارد.
ساختار اشتراکی سریع تر از کپی کردن می‌تواند به صورت چشمگیری کارایی را بهبود بخشند. هرچند ، این مهارت می‌تواند متقابلا در راه‌های نامطلوب با عملکردهایی که تغییرات لیست‌های گذشته روی آرگومان‌های آن تاثیر بگذارد ، اثر کند.
تغییرات یک لیست از قبیل تغییر دادن C با یک goose روی دیگری نیز تاثیر می‌گذارد setf (third foo) 'goose) که این تغییر نتیجه را به صورت (a b goose) تغییر می‌دهد اما bar هم تغییر می‌کند (X b goose) که ممکن است یک نتیجهٔ غیر منتظره باشد.
زبان‌های برنامه نویسی Lisp معمولا از یک خط دستور محاوره‌ای استفاده می‌کنند،که می‌تواند با یک محیط پیچیدهٔ گسترش یافته ترکیب شود.کاربر اصطلاحات و دستورات را در خط دستور وارد کرده یا با رهبری IDE آنها را به سیستم Lisp می‌فرستد. Lisp دستورات را می‌خواند ، آن‌ها را ارزیابی می‌کند و نتایج را چاپ می‌کند. به این دلیل است که خط دستور زبان Lisp به حلقهٔ Read-Eval-Print یا REPL معروف است.
نمونهٔ ساده‌ای از عملیات REPL در زیر آمده‌است. این یک شرح ساده‌است که بسیاری از المان‌های Lispواقعی در آن نمی‌آید مانند ماکروها و کوئت‌ها.
تابع read جملات متنی را به عنوان ورودی می‌پذیرد و آنها را به ساختار لیست تجزیه می‌کند. به عنوان مثال ، وقتی شما رشتهٔ (+ 1 2) را در اعلان تایپ می‌کنید، تابع read آن را به یک لیست پیوندی حاصل از 3 المان ترجمه می‌کند: علامت + ، عدد 1 و عدد 2 . خیلی اتفاق می‌افتد که لیست قسمت موثری از یک کد Lisp باشد که قابل ارزیابی است.به همین دلیل است که یک قطار از لیست به یک تابع نام عملگر مع می‌دهد.
تابع eval ساختار لیست را ارزیابی می‌کند و نوعی دیگر از ساختار را به عنوان نتیجه باز می‌گرداند.ارزیابی کردن لزوما تفسیر کردن معنی نمی‌دهد؛ بعضی سیستم‌های Lisp هر عبارتی را به زبان ماشین تبدیل می‌کنند. خیلی ساده است؛ به هر حال؛ برای تعریف ارزیابی به عنوان تفسیر : برای ارزیابی یک لیست که نام تابع دارد ، eval ابتدا تمام آرگومان‌های داده شده به cdr اش را ارزیابی می‌کند و سپس تابع را روی آن آرگومان‌ها اعمال می‌کند.در این مثال ، تابع عمل جمع است و به آرگومان‌های (1 2) اعمال می‌شود که نتیجه 3 است.این نتیجهٔ ارزیابی است.
این وظیفهٔ تابع print است که نتیجه را به کاربر نمایش دهد. برای نتیجهٔ سادهٔ 3 این کار ناقابل است. یک عبارت که با قسمتی از ساختار لیست ارزیابی می‌شود میاز دارد که print لیست را به حرکت در آورد و در خروجی به شکل یک عبارت S نمایش دهد.
برای اجرا کردن یک REPL در Lisp ، تنها لازم است که این سه تابع را اجرا کنید و یک تابع حلقه بی نهایت را.(به طور طبیعی اجرای eval پس از اجرای عملگرهای ویژه‌ای مانند if پیچیده خواهد شد.)یک REPL ساده به خودی خود با یک خط کد انجام شد: (loop(print(eval(red))))

لیست در اصل تعداد کمی ساختار کنترلی دارد. منتها در تکامل و گسترش زبان تعداد زیادی به آن اضافه شدند.(عملگر اصلی شرایط در زبان Lisp که cond بود بعدا متشکل شد از ساختار if-then-else )

برنامه نویسان در نسخهٔ Scheme حلقه‌ها را به صورت بازگشت دم( tail recursion ) بیان می‌کنند. موسسات متعارف علوم کامپیوتر Scheme بعضی دانشجویان را متعاقد می‌کند که تنها راه تکرار در زبان Lisp استفاده از بازگشت دم است؛ این اشتباه است. تمامی نسخه‌های متداول دیده شده از Lisp دارای ساختارهای الزامی برای تکرار هستند.درScheme دستور do به عنوان دستور حلقه پیچیدهٔ Lisp است. علاوه بر این مسالهٔ اصلی که شی گرایی را مهمتر از مسالهٔ فاعلی کرده این است که Scheme نیازهای ویژه‌ای برای کارکردن با فراخوانی دم(tail calls )دارد، در نتیجه دلیل ترغیب Scheme به استفاده از بازگشت دم این است که روش صراحتا با تعریف خود زبان پشتیبانی می‌شود . در مقابل ، ANSI Common Lisp نیازی به بهینه سازی که معمولا به حذف فراخوانی دم گفته می‌شود ندارد. در نتیجه این حقیقت که بازگشت دم به عنوان یک جایگزین تصادفی برای استفاده از ساختارهای مبتنی بر تکرار ( مانند do dolist loop ) توصیه نمی‌شود تنها یک مسالهٔ برتری ادبی نیست ، ولی بالقوه یکی از کارآمدهاست ( بعد از این که این روش فقط به عنوان یک پرش ساده به کار نرفت) و به عنوان یک تصحیح برنامه‌است .
بعضی از ساختارهای کنترلی Lisp عملگرهای ویژه‌ای هستند ، هم ارز کلیدواژه‌های ترکیبی باقی زبان‌ها. عباراتی که این عملگرها استفاده می‌کنند ظاهری شبیه فراخوانی تابع دارد، تفاوت اینجاست که آرگومان‌ها ضرورتا نباید ارزیابی شوند یا در مورد تکرار شاید بارها ارزیابی شوند. در مقابل اکثر زبان‌های برنامه نویسی ، Lisp به برنامه نویسان اجازه می‌دهد با خود زبان ساختاهای کنترلی را پیاده سازی کنند.ساختارهای کنترلی زیادی در ماکروهای Lisp پیاده سازی می‌شوند و برنامه نویسان می‌توانند هر ماکرو را گسترش دهند ،برای آنانی که می‌خواهند بدانند چطور کار می‌کند.
هر دوی Lisp Commonو Scheme دارای عملگرهای کنترلی غیر محلی هستند.تفاوت این عملگرها یکی از عمیق ترین تفاوت‌ها مابین این دو نسخهٔ زبان است. Scheme از ورودی مستمر با استفاده از روش call/cc پشتیبانی می‌کند ، که به برنامه اجازهٔ ذخیره ( و بعدا بازیابی کردن) یک عملیات ویژه را می‌دهد . Common Lisp از ورودی مستمر پشتیبانی نمی‌کند ولی از راه‌های زیادی برای انجام رهایی از تکرار پشتیبانی می‌کند.


منبع  

(‎Patrick Winston and Berthold Horn, Lisp, Addison Wesley; 3 edition (January 1,1989 

 آشنایی با زبان لیسپ (PDF فارسی)

جدیدترین ماهواره بر سازمان فضایی هند تکمیل شد

شنبه 11 مهر 1388 ساعت 12:24 ق.ظ

محققان سازمان فضایی هند به تازگی موفق به تولید ماهواره بری با توانایی حمل 4 تن بار شده اند که استفاده از آن هزینه های ارسال تجهیزات به فضا نصف خواهد شد.

به گزارش خبرگزاری مهر، با اتمام یکی از پرحادثه ترین سالها در علم نجوم، محققان سازمان فضایی هند درآغاز سال جدید ملقب به سال نجوم موفق به تولید نسلی جدید از موشکهای ماهواره بر شدند که می تواند میزان هزینه های ارسال ماهواره را تا میزان قابل توجهی کاهش دهد.

طی سال جدید آزمایشهای فراوانی بر روی این ماهواره بر با نام GSLV صورت خواهد گرفت تا برای دوره ماموریت خود در سال 2010 و 2011 آمادگی لازم را به دست آورد.

ماهواره بر GSLV توانایی حمل ماهواره ای با وزن  4 تن به فضا را با کمترین هزینه ممکن خواهد داشت. این در حالی است که نمونه پیشین این ماهواره بر توانایی حمل ماهواره ای با وزن 2.2 تن را داشته است.

به گفته مقامات سازمان فضایی هند به دلیل توانایی بالای حمل این موشک میزان تجهیزات نصب شده بر روی آن افزایش یافته و به این شکل هزینه ارسال تجهیزات مورد نیاز کاهش خواهد یافت.

بر اساس گزارش زی نیوز، سازمان فضایی هند قصد دارد در سال 2015 دو فضانورد هندی را به مدت یک هفته به اقامتگاه فضایی ارسال کند که GSLV نیز در این ماموریت تاریخی سهم مهمی را به عهده خواهد داشت.

( تعداد کل: 39 )
<<    1       2       3       4       5    >>