TECH STASH – Telegram
TECH STASH
212 subscribers
115 photos
5 videos
15 files
254 links
اینجا هر چی رو که یاد میگیرم، به اشتراک میزارم...
هوش مصنوعی، لینوکس، اوپن سورس، برنامه نویسی و...

Admin: @D3F4U1T_ARS
Download Telegram
حق یا چی؟ :)
#فان #میم
~> @PinkOrca
برنامه نویس Mojo🔥
Pink Orca | پینک اورکا
حق یا چی؟ :) #فان #میم ~> @PinkOrca
Don't live in the past...

Live in the future

سیستم auto tuning کامپایلر

داشتن قابلیت
Runtime compiled
Statically compiled
هر دو

بک اند کاملا ساخته شده توسط MLIR که از خفن ترین کارایه Chris Lattner تو دنیای LLVM بوده
Forwarded from Currently Nothing (Sohrab)
https://virgool.io/Antiwiki/%D9%88%DB%8C%DA%A9%DB%8C-%D9%BE%D8%AF%DB%8C%D8%A7-%D8%B1%D8%A7-%DA%86%D9%87-%DA%A9%D8%B3%DB%8C-%D9%BE%DB%8C%D8%B4%D9%86%D9%87%D8%A7%D8%AF-%D8%AF%D8%A7%D8%AF-w2ou3okkrxcu


لطفا مواد را از دسترس کودکان به دور نگهدارید


مشخصا هرکی اینو نوشته اصلا تو حال عادی نبوده😂
Forwarded from Currently Nothing (Sohrab)
این دوست موادیمون رو یادتونه؟
یک مقاله دیگه نوشته درباره گوگل

فقط جایی که نوشته از نرم افزار های داخلی خودمون استفاده کنید 😂


https://virgool.io/Antigoogle/%D8%B1%D8%A7%D8%A8%D8%B7%D9%87-%DA%AF%D9%88%DA%AF%D9%84-%D9%88-%D9%88%DB%8C%DA%A9%DB%8C-%D9%BE%D8%AF%DB%8C%D8%A7-jen13q8hqui3
#Lua
#Programming
#Part1

تناقض باور های بنده درباره زبان Lua.

تو این مدت زمانی که کد میزنم از اکوسیستم lua و همینطور نبود یک لایبرری استاندارد خوب گله داشتم.

اما با جست و جو و تحقیقات متعددی به نتایج جالبی رسیدم.

زبان Lua زبانی هست که خیلی مورد سو تفاهم واقع میشه.
این زبان زبان noscripting خیلی سریعی هست که برای embed شدن داخل ابزار ها به کار میده که قابلیت noscripting بده و در این زمینه بهترین هستش.

انعطاف پذیری و turing complete بودن این زبان باعث شده که همه اونو به زبان general purpose یعنی برای هر نوع استفاده ای نگاه کنن ولی در واقع اینطور نیست.

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

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

امکانات autocomplete محدود lua هم به خاطر این هستش که embed شده. معمولا embed شدن زبان ها باعث میشه که بخشی از API هاشون داخل خود برنامه باشن و autocomplete امکان دسترسی به اونا رو نداره (ایکاش که اینطوری نبود، ولی به هر حال).
#Lua
#Programming
#Part2

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

اما بسیاری از افراد داخل این کامیونیتی حرکت هایی برای ساخت اکوسیستم lua انجام دادن. برای مثال یه پکیج منیجر مخصوص lua ساختن به اسم luarocks.

https://luarocks.org/

حتی خود این وبسایت هم توسط زبان lua ران میشه. بخش backend این وبسایت از web framework به زبان lua ران میشه به اسم lapis.

https://github.com/luarocks/luarocks-site

و اینکه lapis خودش از Openresty که یه پلتفرم nginx based هست استفاده میکنه و باید بگم که خیلی سریعه...

پلتفرم nginx و openresty ساپورت زبان lua دارن... ولی خب نمیدونم چقدر تو production استفاده میشن.

https://leafo.net/lapis/

بنچمارک وب فریم ورک هارو اینجا میتونید ببینید

https://www.techempower.com/benchmarks/

و openresty در جایگاه 112 ام قرار داره
با توجه به اینکه fastapi در جایگاه 279 ام قرار داره... باید بگم که واقعا نتایج خیلی سورپرایز کننده ای هست

همینطور که میبینید یه زبان superset ای هم برای lua ساخته شده به اسم Moonnoscript که خیلی از ویژگی های مدرن زبان های دیگه رو به زبان lua آورده.

https://moonnoscript.org/

جالب اینه که فقط این یه مورد نیست. مورد های دیگه ای هم داریم. مثل Teal که ورژن استاتیک تایپ Lua هست و به Lua ترجمه میشه...
#Lua
#Programming
#Part3

من خودم کمی تو اکوسیستم lua گشتم و لایبرری هارو و وضعیتشون رو دیدم... همه چه پخش و پلا هست.

luarocks

کار رو واسه گیر آوردن لایبرری ها آسون کرده. اما لایبرری ها توسعه داده نمیشن. یه سریاشون هم دراپ شدن توسط توسعه دهنده اصلی و توسط lunarmodules و openresty توسعه داده میشن

لایبرری های خیلی خوبی هم واسه lua داریم ولی بیشتر این لایبرری ها تو حالت freeze قرار دارن. یعنی کار میکنن ولی توسعه داده نمیشن.

شایدم به خاطر اینه که چون روی یه C API قدیمی توسعه داده شدن و چون C API عه آپدیت نشده بنابراین دیگه نیازی به توسعه نداشته.



ولی خب چاره ای هم نیست. چون ماهیت Lua زبان مینیمال و embed-able هست هیچ کسی نمیاد باهاش کار general purpose انجام بده...

و سرمایه بزرگی هم پشتش نیست مثل JS یا Python.

به یکی از نمونه از شکاف داخل کامیونیتی lua اشاره میکنم:
https://luvit.io/
اینم یه نوع از توزیع های lua که واسه کارایه وب استفاده میکنن. و واسه نصب این باید از خود وبسایتش دانلود و نصب کنید. و همینطور پکیج منیجر خودش رو داره.

نباید بیشتر از یه پکیج منیجر داشتیم... اما ماهیت این زبان حکم میکنه که اوضاع به همین قرار میمونه.
#Lua
#Programming
#Part4

زبان Lua زبان خیلی سریعی هست اگر با LuaJIT اجرا بشه. اونقدر سریع که از یه سری از زبان های کامپایل شده هم میتونه سریع تر باشه.
چون که مستقیم به C کامپایل میشه قبل اجرا.
همین یکی از دلایلی هست که این زبان تحسین میشه


اما قطعا کار سختی هستش که این زبان رو تبدیل کرد به زبانی که براش ساخته نشده و باهاش کارایی کرد که براش ساخته نشده.

استفاده این زبان فقط embed-able هست و متاسفانه برخلاف امید من تا ابد هم همینطور خواهد ماند.
اما در میان زبان های embed-able این بهترین زبان ساخته شده هست.

از Game Engine ها تا ابزار های معروفی مثل nmap, conky, mpv و حتی freebsd kernel ازش استفاده میکنن برای ساخت noscripting API و استفاده از اون.


پس خلاصه بخوام بگم. زبان Lua برای general-purpose programming ساخته نشده. برای embed شدن و noscripting ساخته شده.

اکوسیستم خیلی پر کیفیتی نداره.

به مشکلات autocomplete برمیخورید چون که توسعه دهنده ها lua api خوبی برای ماژول های C اشون ننوشتن. تو برنامه هایی هم که embed دارنش هم همینطور.
خب
طبق معمول به مشکلات keyserver داخل distrobox arch linux ام خوردم
ولی خب این یکی با نصب archlinux-keyring فیکس نشد
پشمام
راه حلم همین الان کار کرد
اگر با
sudo pacman -Syy archlinux-keyring
فیکس نشد اینو بزنید
sudo pacman-key --refresh-keys
واسه من یکم این پروسه طولانی بود. ولی فیکس کرد


شاید مشکل از سرور میرور هم باشه که reflector میتونه کمک کنه بهتراشو انتخاب کنید
sudo reflector -c gb,fr,de -f 10 -p http,https -l 10 --sort rate --save /etc/pacman.d/mirrorlist
باید بپرسم که چخبره...
از کی مستقیم میتونم از انویدیا دانلود کنم؟
یا سرور درایورشون منتقل شده؟
با عقل جور در نمیاد
یه جای کار ملینگه
آهان
بعد نگم که روی همراه اول CF WARP اوکیه
کلا اوضاع عحیب
از اونطرف فیلترینگ شدید میشنوم
بعد میبینم اینطوریه


اینترنت ایران شده سیرک