نوشته‌های ترمینالی
2.7K subscribers
425 photos
12 videos
32 files
2.26K links
Download Telegram
نوشته‌های ترمینالی
خلاصه مقاله‌ی نحوه کارکرد الگوریتم: https://yangdanny97.github.io/blog/2019/05/03/MOSS
باز بخوام خلاصه تر بگم،
گویا اول یه پیش پردازش روی متن انجام میشه شامل پاک کردن کامنت ها و فضاهای خالی و حذف کردن اسم متغیرها
این فاز وابسته به زبانه.

بعدش باید بیاد و شباهت ها رو بررسی کنه اما اگه برای هر دو تیکه‌ی هر دو تا متن بخواد انجام میده خیلی خیلی کند میشه.
پس میاد یکسری hash میسازه از قسمت های مختلف متن و اونا رو بررسی میکنه.
(بیشتر از اینش رو خودتون بخونین برای منم توضیح بدین)
نوشته‌های ترمینالی
همونطور که می‌دونین، سامانه moss، سامانه تقلب‌گیریه که اکثرا مستقیم یا غیر مستقیم ازش استفاده می‌کنن. اما پیاده‌سازیش در دسترس نیست. در مورد کارکرد و الگوریتم هاش دو تا مقاله هست که خلاصه‌شون رو می‌ذارم. اما یکسری پیاده سازی بر اساس این مقاله ها انجام شده…
در مورد اینکه مگه کسی از OCaml استفاده میکنه؟ باید بگم که
زبان OCaml در کنار هسکل دو تا از زبان های خوب فانکشنال هستند. OCaml حتی از هسکل هم تئوری‌تر و آکادمیک تره.
ایراد‌هایی که بهش می‌گیرن مثلا یادگیری سخت، جامعه کاربری کم و نبود کتاب‌خونه‌های لازم/کافی ئه.

اما چرا ازش به عنوان زبان برای نوشتن چنین برنامه‌ای استفاده می‌شه؟
زبان های فانکشنال برای انجام این محاسبات واقعا خوبن. تعامل با دنیای واقعی کم، در حد خوندن فایل ورودی و نمایش نتیجه (تعاملی نیست) و انجام کلی محاسبات پیچیده و منطقی.
در کنار این زبان، هسکل هم برای کامپایل نویسی استفاده میشه و کامپایلر خودش با خودش نوشته شده.
حتی جالبه بدونید که زبان rust هم ابتدا کامپایلرش به زبان OCaml بوده و بعد با rust بازنویسی کردن. (اولش برای فرایند bootstrap بوده). الانم سورس‌کد OCamlش که یه زیرمجموعه از زبان رو کامپایل می‌کنه توی ریپوزیتوری کامپایلر راسط در دسترسه.
افزونه‌ی LibreJS: اجازه ندهیم کدهای js غیرآزاد روی سیستم‌مون در حین بازدید از سایت‌ها اجرا بشه.
https://en.wikipedia.org/wiki/GNU_LibreJS
Forwarded from Gopher Academy
برای ریست کردن تمام محصولات Jetbrains با اجرای اسکریپت زیر
👇🏻👇🏻👇🏻👇🏻

🔰 @gopher_academy
تجربه‌ای که آسون به دست نیومده:
اگر سیستمتون به سایت ها متصل نمیشه، اول ساعت و تاریخش رو چک کنید که دقیق باشه.
مخصوصا اگر سیستم قدیمیه و تازه روشنش کردید.
در مورد کامپایل با gcc/g++ و makefile و linking و کلی نکته جالب.
https://www3.ntu.edu.sg/home/ehchua/programming/cpp/gcc_make.html
از بچگی همیشه برام سوال بود not gate چطوری کار میکنه؟
وقتی ورودیش صفره چطوری ۵ ولت تولید میکنه؟
حقیقت:
لازم نیست محیط توسعه نرم افزار jet brains رو نصب کنید تا بتونید با یه زبانی برنامه نویسی کنید.