نوشته‌های ترمینالی
2.76K subscribers
425 photos
12 videos
32 files
2.29K links
Download Telegram
من: ویم در وقت شما صرفه جویی می‌کند.
همچنین من: [یک روز کامل مشغول بازی با پلاگین ها]
نوشته‌های ترمینالی
چطور در redis اسکریپت های lua بنویسیم. https://www.freecodecamp.org/news/a-quick-guide-to-redis-lua-scripting/
شاید بپرسید که خب چرا اصلا؟
In short: performance gain. Most tasks you do in Redis involve many steps. Instead of doing these steps in the language of your application, you can do it inside Redis with Lua.
درمورد زبان zig هم بدونیم.
یک تلاش دیگه (مثل rust شاید یشه گفت) برای حل کردن مشکلات C
https://ziglang.org/learn/overview/
چطور در java کد javascript اجرا کنیم؟ (به همین عجیبی)!

ایده از این سوال stackoverflow شروع شد.
https://stackoverflow.com/questions/2605032/is-there-an-eval-function-in-java
که چطور در جاوا تابع eval داشته باشیم.
البته java زبانیه که کامپایل میشه و داشتن eval توش یکم عجیبه. در حالی که توی پایتون وjavascript چیز شناخته شده‌ایه (هرچند استفاده ازش خطرناکه)
حالا فرض کنیم که بتونیم توی ران‌تایم به کامپایلر نصب شده روی سیستم دسترسی پیدا کنیم و اون رو فراخوانی کنیم، میتونیم کدمون رو توی main یه کلاسی بذاریم و اون رو کامپایل کنیم و بعد با class loader اجرا کنیم. اما شاید اصلا جایی که کد جاوا رو اجرا میکنیم jdk نصب نشده باشه (فقط java runtime داشته باشه نه کامپایلر)
حالا توی جاواهای جدید، پکیج jdk و jre اصلا یکی شدن و جای نگرانی نیست. اما این کار هم مصیبت های خودشو داره.
تو این مطلب پارسا در مورد اینکه چطوری توی ران‌تایم به کامپایلر جاوا دسترسی داشته باشیم برامون نوشته:
https://javacup.ir/java-runtime-compiler/
همچنین از جاوای ۹ به بعد، یه کامپایلر هم داخل jshell پیاده‌سازی کردن که اون هم از ران‌تایم قابل دسترسیه، هرچند اونم با قواعد و قوانین خودش.

اما من که اول مطلب گفتم جاوا اسکریپت، پس چی شد. تا اینجا هرچی که گفتم برای اجرای کدی بود که به زبون جاوا نوشته شده، اما java امکان اجرای کد به زبان js در ران‌تایم با موتور nashron رو داره. این امکان البته که deprecate شده (کی جاوااسکریپت رو دوست داره که برداره بیارتش تو جاوا)
اما به هر حال وجود داره.
مکانیسم هم تقریبا اینطوریه که شما engine رو لود می‌کنید، بعد بهش string میدین و نتیجه رو در قالب کلاس های جاوا بهتون میده. حالا کلاس های Number مثل Double وInteger یا کلاس های دیگه.
نکته اینه که شما محدود به پرینت کردن یه چیز ساده نیستید، توی موتور js می‌تونین تابع تعریف کنید و بعدا صداش کنید و از خروجی تابع استفاده کنید و احیانا کارهای دیگه که به ذهن من نرسیده.

این کد پایین یک عبارت میگیره که متغیر x رو داره، بعدش x رو بهش میدین و توی عبارت میذاره و نتیجه رو میده.
البته روی جاوا ۱۷ کار نکرد ولی ۱۱ اوکیه.
این واقعا چیز عجیبیه =)
میاد هر دو تا صفحه‌ی ویکیپدیا رو با حداکثر ۶ تا لینک به هم متصل میکنه.
مثلا صفحه linus خودش به bash لینک نداره اما با این راه ها میشه به bash رسید.

https://www.sixdegreesofwikipedia.com/

البته که تو این مثال من، دو تا چیز نزدیک بودن، چیزهای غیرمرتبط رو سرچ کنید تا واقعا تعجب کنید.
👍1
آموزش نصب و راه اندازی redis
https://redis.io/topics/quickstart
نوشته‌های ترمینالی
آموزش نصب و راه اندازی redis https://redis.io/topics/quickstart
آموزش دیتاتایپ های ردیس
که به نظرم در کنار‌ آموزش درک خوبی از امکاناتش میده:
https://redis.io/topics/data-types-intro
امتحان کردن redis-client در مرورگر
https://try.redis.io/
👍1
خلاصه که چقدر redis خفنه. یه جوری توضیحش میدن از دور انگار یه مپ key-value ئه، اما خب نه. کلی datastructure داره، کلی کاربرد مختلف میتونه داشته باشه. به شکل دیتابیس ضعیف نگاهش نکنید به نظرم.


https://djaytechdiary.com/thinking-in-redis-a-quick-introduction
👍1
این faster than li رو واقعا دوست دارم.
خیلی علاقه داره به اینکه چیزها چطوری کار میکنن.
این ویدیوش هم خیلی خوب بود:
چرا برنامه های ما از الکترون استفاده میکنن و چرا ارزشش رو داره.
https://youtu.be/hnaGZHe8wws
linux users be like:
خب توزیعم خیلی خوب کار میکنه، برنامه های مورد نیازمم نصبه، عمر باتری هم خوبه، ظاهرشم خوبه.
بذار عوضش کنم.
😁15👍1
نوشته‌های ترمینالی
linux users be like: خب توزیعم خیلی خوب کار میکنه، برنامه های مورد نیازمم نصبه، عمر باتری هم خوبه، ظاهرشم خوبه. بذار عوضش کنم.
خب بالاخره garuda نصب و پایدار شد. توزیع بدی نیست. فقط خیلی روی fish تمرکز داره. =) بابا fish هم شد shell اخه؟