یه کتابخونه سی/سیپلاسپلاس که یه دوست خوب توسعه داد، منم یکم ادیتش کردم که هم روی ویندوز هم لینوکس هم مک کار کنه، کارش چیه؟
میتونید یه کارای ابتدایی ترمینال رو باهش انجام بدید، مثلا چاپ رنگی و پاک کردن صفحه و getch بدون مصیبت.
یکی از یوزرهاش دنبال رنگ نارنجی بود که توی رنگهای ۸ بیتی نیست، این شد که قابلیت چاپ با رنگ RGB رو هم اضافه کردم. البته روی ویندوزهای قبل از ۱۰ کار نمیکنه ولی واقعا چیزی نیست که بخوام بهش فکر کنم.
اگر ansi escape code ها رو دوست داشتید یاد بگیرید هم سورس این کتابخونه هست هم ویکیپدیای خوبی داره:
https://en.wikipedia.org/wiki/ANSI_escape_code
میتونید یه کارای ابتدایی ترمینال رو باهش انجام بدید، مثلا چاپ رنگی و پاک کردن صفحه و getch بدون مصیبت.
یکی از یوزرهاش دنبال رنگ نارنجی بود که توی رنگهای ۸ بیتی نیست، این شد که قابلیت چاپ با رنگ RGB رو هم اضافه کردم. البته روی ویندوزهای قبل از ۱۰ کار نمیکنه ولی واقعا چیزی نیست که بخوام بهش فکر کنم.
اگر ansi escape code ها رو دوست داشتید یاد بگیرید هم سورس این کتابخونه هست هم ویکیپدیای خوبی داره:
https://en.wikipedia.org/wiki/ANSI_escape_code
Wikipedia
ANSI escape code
ANSI escape sequences are a standard for in-band signaling to control cursor location, color, font styling, and other options on video text terminals and terminal emulators. Certain sequences of bytes, most starting with an ASCII escape character and a bracket…
نوشتههای ترمینالی
یه کتابخونه سی/سیپلاسپلاس که یه دوست خوب توسعه داد، منم یکم ادیتش کردم که هم روی ویندوز هم لینوکس هم مک کار کنه، کارش چیه؟ میتونید یه کارای ابتدایی ترمینال رو باهش انجام بدید، مثلا چاپ رنگی و پاک کردن صفحه و getch بدون مصیبت. یکی از یوزرهاش دنبال رنگ…
اگه یه posix shell دم دستتونه، این دستور زیباییه:
for i in {0..255} ; do printf "\e[38;5;${i}m${i} " ; done ; echo
for i in {0..255} ; do printf "\e[38;5;${i}m${i} " ; done ; echo
صحبت مسخرهبازیهای ترمینال شد، دستورای neofetch و screenfetch که هم زیبان هم اطلاعات جالبی می دن، pfetch از اینا سبکتره و اگه خواستید توی bashrc جایی بذارید بهتره به نظرم.
ابزارهای cowsay و figlet و toilet هم ascii art های جالبی میسازن، با پایپ کردنشون به lolcat هم میتونید یه رنگ قشنگی بهشون بدید.
اگر git نصب دارید،میتونید ریپوزیتوری gnu coreutils رو دانلود کنید و کدهاش رو بخونید. کد های C حرفهای، برای ابزارهایی که روزانه باهاشون کار میکنیم مثلا echo و cat و ls و mv و غیره
کافیه بزنید
git clone git://git.sv.gnu.org/coreutils
طبیعتا سورسکد ها توی src هستن.
کافیه بزنید
git clone git://git.sv.gnu.org/coreutils
طبیعتا سورسکد ها توی src هستن.
نوشتههای ترمینالی
اگر git نصب دارید،میتونید ریپوزیتوری gnu coreutils رو دانلود کنید و کدهاش رو بخونید. کد های C حرفهای، برای ابزارهایی که روزانه باهاشون کار میکنیم مثلا echo و cat و ls و mv و غیره کافیه بزنید git clone git://git.sv.gnu.org/coreutils طبیعتا سورسکد ها…
و خب جالبه خیلی از قواعد کدنویسی که بلدیم/یاد میدیم/یاد میگیریم رو رعایت نکرده مثلا 5 اول indent رفته تو، تابع main عظیم، goto های زیاد
https://cs.lmu.edu/~ray/notes/paradigms/
زیبا و تمیز در مورد پارادایم های برنامهنویسی نوشته بود
زیبا و تمیز در مورد پارادایم های برنامهنویسی نوشته بود
چند تا اصل داریم برای سوال پرسیدن:
اصل اول "no hello"
یعنی نباید بگی:
- سلام خوبی
+ سلام بفرمایید
− سوال فلان
بلکه:
+ سلام، (خوبی؟) سوال فلان
− جواب
اصل دوم "dont ask to ask"
نباید بپرسی میشه سوال بپرسم یا نه
یعنی نباید بگی:
-سلام میشه سوال بپرسم؟
+ خواهش میکنم بفرمایید
−سوال فلان
بلکه:
+ سلام خسته نباشید سوال فلان
− جواب فلان
اصل اول "no hello"
یعنی نباید بگی:
- سلام خوبی
+ سلام بفرمایید
− سوال فلان
بلکه:
+ سلام، (خوبی؟) سوال فلان
− جواب
اصل دوم "dont ask to ask"
نباید بپرسی میشه سوال بپرسم یا نه
یعنی نباید بگی:
-سلام میشه سوال بپرسم؟
+ خواهش میکنم بفرمایید
−سوال فلان
بلکه:
+ سلام خسته نباشید سوال فلان
− جواب فلان
کتاب haskellbook.ir کتاب خوبیه برای شروع هسکل ولی خب خیلی مفصل نوشته.
ترجمهش هم موجوده، توی کتاب راه گذاشته
ترجمهش هم موجوده، توی کتاب راه گذاشته
بعد خب این دوستمون تو وبلاگش خلاصهش رو مینویسه جالب به نظر میاد
فصل اول:
https://thomashartmann.dev/blog/lets-read-haskell-programming-from-first-principles-pt-i/
تا فصل ۱۱ هم نوشته گویا
فصل اول:
https://thomashartmann.dev/blog/lets-read-haskell-programming-from-first-principles-pt-i/
تا فصل ۱۱ هم نوشته گویا
thomashartmann.dev
Let's read: Haskell Programming from First Principles, pt I | Whisper of the Heartman
In which I finally find the time to dive into learning Haskell from first principles. Turns out 'first principles' mean understanding the mathematical underpinnings of the language before I ever get to touch (or even see) any code.
What happens on 2038?
On this date the Unix Time Stamp will cease to work due to a 32-bit overflow. Before this moment millions of applications will need to adopt a new convention for time stamps or be migrated to 64-bit systems which will buy the time stamp a "bit" more time.
https://en.m.wikipedia.org/wiki/Year_2038_problem
On this date the Unix Time Stamp will cease to work due to a 32-bit overflow. Before this moment millions of applications will need to adopt a new convention for time stamps or be migrated to 64-bit systems which will buy the time stamp a "bit" more time.
https://en.m.wikipedia.org/wiki/Year_2038_problem
Wikipedia
Year 2038 problem
problem affecting digital systems that store system time as a signed 32-bit integer
یه بحثی شکل گرفت که برای ارائه فارسی، اسلاید فارسی بهتره یا انگلیسی، به نظرم خوندن این لینک میتونه مفید باشه.
https://kalamesabz.com/english-powerpoint/
https://kalamesabz.com/english-powerpoint/
کلام سبز
پاورپوینت انگلیسی بهتره یا فارسی؟-ارائه موفق
شاید برای شما هم این سوال مطرح شده باشد که از پاورپوینت انگلیسی استفاده کنیم یا فارسی یعنی متن داخل اسلاید به چه زبانی باشد بهتر و با کلاس تر هست.
ازونجا که من خیلی ترمینال رو دوست دارم، میخوام کم کم یه سری دستور ترمینال رو یاد بدم.
#terminal
#terminal
#terminal
به عنوان دستور اول، برخلاف آموزشهای سنتی ترمینال که ls و cd رو میگن، میخوام دستور shutdown رو بگم.
اسم دستور که خب shutdown هست و مشخصه که سیستم رو خاموش میکنه.
اگه همینطوری بزنید shutdown میاد و ۶۰ ثانیه بعد
حاموش میکنه سیستم رو یعنی پیشفرض یه تاخیر ۱ دقیقهای داره.
دستور shutdown : خاموش کردن سیستم بعد از ۱ دقیقه
اما ما اصولا عجله داریم و می خوایم همون موقع خاموش بشه، میتونیم تاخیر پیشفرض رو تغییر بدیم. به این صورت که اگر یه عدد کنارش بنویسیم میتونیم اون تاخیر رو عوض کنیم. بنابراین
shutdown 0
میاد و همون لحظه خاموش می کنه.
یا مثلا میتونیم کارهای هیجان انگیزتری کنیم مثلا بگیم ۱۰ ساعت دیگه خاموش کن سیستم رو. اینطوری باید ۶۰۰ دقیقه تاخیر بدیم یعنی بنویسیم
shutdown 600
باز اگر خواستیم همون لحظه خاموش کنیم میایم shutdown now رو مینویسیم که مثل همون shutdown 0 همون لحظه خاموش میکنه.
قسمت اصلی رو دیدیم یه مقدار هم سوییچهای کاربردی ببینیم.
اگر یه دستور shutdown زده بودیم و توی زمان تاخیرش بودیم بعد پشیمون شدیم،دستور
shutdown -c
رو میزنیم و میاد کنسل میکنه.
اگر خواستیم سیستم رو ریبوت کنیم میتونیم
shutdown -r
بزنیم که ریبوت میکنه. البته دستور reboot هم همینکارو میکنه.
به عنوان دستور اول، برخلاف آموزشهای سنتی ترمینال که ls و cd رو میگن، میخوام دستور shutdown رو بگم.
اسم دستور که خب shutdown هست و مشخصه که سیستم رو خاموش میکنه.
اگه همینطوری بزنید shutdown میاد و ۶۰ ثانیه بعد
حاموش میکنه سیستم رو یعنی پیشفرض یه تاخیر ۱ دقیقهای داره.
دستور shutdown : خاموش کردن سیستم بعد از ۱ دقیقه
اما ما اصولا عجله داریم و می خوایم همون موقع خاموش بشه، میتونیم تاخیر پیشفرض رو تغییر بدیم. به این صورت که اگر یه عدد کنارش بنویسیم میتونیم اون تاخیر رو عوض کنیم. بنابراین
shutdown 0
میاد و همون لحظه خاموش می کنه.
یا مثلا میتونیم کارهای هیجان انگیزتری کنیم مثلا بگیم ۱۰ ساعت دیگه خاموش کن سیستم رو. اینطوری باید ۶۰۰ دقیقه تاخیر بدیم یعنی بنویسیم
shutdown 600
باز اگر خواستیم همون لحظه خاموش کنیم میایم shutdown now رو مینویسیم که مثل همون shutdown 0 همون لحظه خاموش میکنه.
قسمت اصلی رو دیدیم یه مقدار هم سوییچهای کاربردی ببینیم.
اگر یه دستور shutdown زده بودیم و توی زمان تاخیرش بودیم بعد پشیمون شدیم،دستور
shutdown -c
رو میزنیم و میاد کنسل میکنه.
اگر خواستیم سیستم رو ریبوت کنیم میتونیم
shutdown -r
بزنیم که ریبوت میکنه. البته دستور reboot هم همینکارو میکنه.
https://amirrezaghaderi.com/fa/blog/adt/
درمورد algebraic data types
درمورد algebraic data types
امیررضا قادری
دیتا تایپهای جبری (ADT)
تشریح مفهوم دیتا تایپ های جبری