نوشته‌های ترمینالی
2.63K subscribers
424 photos
12 videos
32 files
2.25K links
Download Telegram
درمورد unicode به زبان فارسی و البته ساده

https://www.unicode.org/standard/translations/persian.html
اگر درست فهمیده باشمش واقعا جالبه.
یه برنامه که متن رمزنگاری شده/هش شده رو می‌گیره و decrypt می‌کنه. چطوری؟ با هوش مصنوعی.
https://github.com/Ciphey/Ciphey


توضیح فنی‌ای که دادن:
Ciphey uses a custom built artificial intelligence module (AuSearch) with a Cipher Detection Interface to approximate what something is encrypted with. And then a custom-built, customisable natural language processing Language Checker Interface, which can detect when the given text becomes plaintext.
🤯2
خب همونطور که می‌دونید قابلیت multi-line string توی جاواهای جدید اضافه شده (با اسم text blocks)
اما قبلا که نبوده یه چنین حرکتی زدن:
/**
<html>
<head/>
<body>
<p>
Hello<br/>
Multiline<br/>
World<br/>
</p>
</body>
</html>
*/
@Multiline
private static String html;

public static void main(final String[] args) {
System.out.println(html);
}
https://stackoverflow.com/a/11754758/10999348

یعنی در واقع یه anotation processor هست که مقدار کامنت رو می‌خونه و به شکل string تقدیم شما میکنه!
👍2🤯1
تصمیمات برای بردن کرنل لینوکس از C89 به C99 یاC11

حالا مشکل بزرگی که باعث این شده چیه؟ توی C89 اجازه ندارید توی خود for متغیر تعریف کنید، پس در نتیجه مجبورید بیرون فور تعریف کنید که باعث میشه اون متغیر برای استفاده های بعدی هم در دسترس باشه هرچند که میتونه باعث مشکل بشه.
یکم بد گفتم،
در واقع چنین کدی توی C99 مورد قبوله:
for(int i = 0; i < 10; i++){

}

ولی اگه C89 داشته باشیم، باید اینطوری بنویسیم:
int i;
for(i = 0; i < 10; i++){

}
https://lwn.net/SubscriberLink/885941/01fdc39df2ecc25f/
👍4
چیز جالبی که در مورد zig هست اینه که یه امکان compile time داره که شما می‌تونید کدی بنویسید که در زمان کامپایل اجرا بشه.
حالا این چیز جدیدی نیست
اما نکته مثبت اینه که از همون سینتکس های کد معمولی استفاده می‌شه و لازم نیست یه زبان کاملا جدید رو یاد بگیرید.
https://www.scattered-thoughts.net/writing/assorted-thoughts-on-zig-and-rust/
👍1👎1
این کد برام جالب بود مثلا
👎2👍1
از این ابزار jrnl هم غافل نشیم.
میاد کمک میکنه بهتون journal بنویسید.
ویژگیش اینه که خودش با plain text کار میکنه و خیلی کاربرپسنده و بهتون خروجی markdown یا json یا همون plain text میده.
کارکردشم اینطوریه:
jrnl today: emrooz in ro to channel hozashtam
یا
jrnl last monday: bluh bluh bluh

بعد می‌تونین بخونید یا بازه ها و تگ های مختلف رو فیلتر کنید و خلاصه جالبه.
فقط حواستون باشه چون متن رو توی shell می‌نویسید توی history می‌مونه.

https://jrnl.sh/en/stable/overview/

و برای دستورات پیشرفته تر:
https://jrnl.sh/en/stable/usage/
👍2
جوری که من مشکلاتم رو حل میکنم:

How to waste time and overcomplicate things

https://ryanwarnock.me/blog/260222.html
👍1
این oil shell یه shell جدیده که قراره بهتر از bash باشه.
با پایتون نوشته شده و به cpp تبدیل میشه!
https://www.oilshell.org/

اینم گیتهابشون:
https://github.com/oilshell/oil

خیلیم پیگیرن و کلی بلاگ و داکیومنت دارن می‌نویسن.
👎2
نوشته‌های ترمینالی
این oil shell یه shell جدیده که قراره بهتر از bash باشه. با پایتون نوشته شده و به cpp تبدیل میشه! https://www.oilshell.org/ اینم گیتهابشون: https://github.com/oilshell/oil خیلیم پیگیرن و کلی بلاگ و داکیومنت دارن می‌نویسن.
یه نمونه از بلاگ پست های جالبشون:

چطوری حجم کد از O(n*n) رو به O(m+n) تبدیل می‌کنیم.
میدونم. گویا نیست! اما اینطوریه که شما اگه m تا چیز دارید که باید با n تا چیز دیگه ارتباط برقرار کنن در حالت عادی به m*n تا کد برای وصل کردن اینها نیاز دارید.
حالا اگه یه استاندارد مشترکی داشته باشیم می‌تونید m تا کد بنویسید که m تا ابزار به این استاندارد تبدیل بشن و بعد n تا کد که استاندارد به n تا ابزار دیگه تبدیل بشن.

این مشکل رو مثلا توی کامپایلر‌ها دیدم، برای همین زبان های میانی داریم. یا مثلا pandoc که کلی فرمت رو به کلی فرمت دیگه تبدیل می‌کنه، نحوه کارش اینطوریه که همه چی رو به latex تبدیل می‌کنه و باز از latex به فرمت های دیگه.
توی یونیکس هم که می‌دونید همه چی باید text بشه.

https://www.oilshell.org/blog/2022/02/diagrams.html
👍1👎1