Forwarded from Byte | بایت
#نسخه_الکترونیکی #ویژه_نامه_ورودی
«شمارهٔ ۷ نشریهٔ علمی بایت - بخش سوم»
🖊️ معرفی گرایش نرمافزار
• #معین_آعلی
🔗 مطالعه در سایت
🖊️ معرفی گرایش امنیت داده و شبکه
• #امنم
🔗 مطالعه در سایت
🖊️ معرفی گرایش سختافزار
• #فرزام_کوهی
🔗 مطالعه در سایت
🖊️ معرفی گرایش شبکههای کامپیوتری
• #امیرحسین_محمدزاده
🔗 مطالعه در سایت
🖊️ معرفی گرایش الگوریتم و محاسبات
• #امیرمحمد_شاهرضایی
🔗 مطالعه در سایت
🖊️ ورود به دنیای الگوریتم
• #آرمان_طهماسبیزاده
🔗 مطالعه در سایت
🖊️ معرفی گرایش بیوانفورماتیک
• #محسن_پیری
🔗 مطالعه در سایت
🖊️ معرفی سایتها و کانالهای تلگرامی
• #امیرحسین_صوری
🔗 مطالعه در سایت
🖊️ اعداد بهتر از انسانها سخن میگویند!
• #امیرحسین_شهیدی #معین_آعلی
🔗 مطالعه در سایت
😌 Telegram | 🤖 Twitter
🌐 Website | 🌐 Linkedin
«شمارهٔ ۷ نشریهٔ علمی بایت - بخش سوم»
• #معین_آعلی
• #امنم
• #فرزام_کوهی
• #امیرحسین_محمدزاده
• #امیرمحمد_شاهرضایی
• #آرمان_طهماسبیزاده
• #محسن_پیری
• #امیرحسین_صوری
• #امیرحسین_شهیدی #معین_آعلی
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
نمیدانم
ویندوز در زباله بودن بی رقیب
فک کن با هزار ذوق و شوق یه کامپیوتر با ۱۶ گیگ رم خریده باشی
بعد وقتی با ۸ گیگش کار داشته باشی رم پر بشه و vram پر بشه و صفحه سیاه شه و در نهایت باید دستی force-reset کنی
بعد وقتی با ۸ گیگش کار داشته باشی رم پر بشه و vram پر بشه و صفحه سیاه شه و در نهایت باید دستی force-reset کنی
🥴1
نمیدانم
فک کن با هزار ذوق و شوق یه کامپیوتر با ۱۶ گیگ رم خریده باشی بعد وقتی با ۸ گیگش کار داشته باشی رم پر بشه و vram پر بشه و صفحه سیاه شه و در نهایت باید دستی force-reset کنی
اونقد وضعیت خرابه که یه صنعت دور چرند بودن ویندوز شکل گرفته و مفاهیمی مثل SystemBooster و GameBooster ها شکل گرفتن که ویندوزو یذره قابل تحمل کنن
#zig #comptime
خب خب خب
من تا چند وقت پیش فک میکردم نمیشه مثلا یه چیز ArrayList طوری توی کامپتایم زیگ درست کرد
ولی امشب خیلی تصادفی به این بنده خدا برخوردم :
https://github.com/ziglibs/computils/blob/master/src/comptime_array_list.zig
که خب خیییلی کد قدیمی ایه و احتمالا هم کار نمیکنه
ولی خب ایده گرفتم ازش و کد بالارو زدم
اگه حال داشتید میتونید خودتون اجرا کنید
ولی اون بالا رسما یه پیاده سازی آرایه قابل گسترشیه که توی زمان کامپایل میتونه گسترش پیدا بکنه
و در نهایت وقتی کارمون زمان کامپایل تموم شد میتونیم آرایه رو نهایی بکنیم و از اونجا به بعد دیگه میتونه توی زمان اجرا هم استفاده بشه
const std = @import("std");
fn ComptimeArrayList(T: type) type {
return struct {
__total_mem: []T,
__size: usize,
const Arr = @This();
fn init() Arr {
var new_mem: [1]T = undefined;
return .{
.__size = 0,
.__total_mem = new_mem[0..],
};
}
fn append(comptime self: *Arr, comptime item: T) void {
if (self.__size == self.__total_mem.len) {
var new_mem: [self.__total_mem.len * 2]T = undefined;
@memcpy(new_mem[0..self.__total_mem.len], self.__total_mem);
new_mem[self.__size] = item;
self.__total_mem = new_mem[0..];
self.__size += 1;
} else {
self.__total_mem[self.__size] = item;
self.__size += 1;
}
}
fn items(self: *Arr) []T {
return self.__total_mem[0..self.__size];
}
fn finalize(comptime self: *Arr) [self.__size]T {
var result_mem: [self.__size]T = undefined;
@memcpy(result_mem[0..], self.__total_mem[0..self.__size]);
return result_mem;
}
};
}
pub fn main() !void {
comptime var arr = ComptimeArrayList(i32).init();
comptime {
arr.append(1);
arr.append(2);
arr.append(3);
arr.append(4);
arr.append(5);
}
const result = comptime arr.finalize();
for (result) |x| {
std.debug.print("{} ", .{x});
}
std.debug.print("\n", .{});
}خب خب خب
من تا چند وقت پیش فک میکردم نمیشه مثلا یه چیز ArrayList طوری توی کامپتایم زیگ درست کرد
ولی امشب خیلی تصادفی به این بنده خدا برخوردم :
https://github.com/ziglibs/computils/blob/master/src/comptime_array_list.zig
که خب خیییلی کد قدیمی ایه و احتمالا هم کار نمیکنه
ولی خب ایده گرفتم ازش و کد بالارو زدم
اگه حال داشتید میتونید خودتون اجرا کنید
ولی اون بالا رسما یه پیاده سازی آرایه قابل گسترشیه که توی زمان کامپایل میتونه گسترش پیدا بکنه
و در نهایت وقتی کارمون زمان کامپایل تموم شد میتونیم آرایه رو نهایی بکنیم و از اونجا به بعد دیگه میتونه توی زمان اجرا هم استفاده بشه
GitHub
computils/src/comptime_array_list.zig at master · ziglibs/computils
Zig utilities for all your comptime needs. Contribute to ziglibs/computils development by creating an account on GitHub.
🔥1
نمیدانم
#zig #comptime const std = @import("std"); fn ComptimeArrayList(T: type) type { return struct { __total_mem: []T, __size: usize, const Arr = @This(); fn init() Arr { var new_mem: [1]T = undefined; …
البته اینم بگم که یه proposal برای تخصیص دهنده های امن زمان کامپایل وجود داره که هنوز کارش انجام نشده ولی این حقه هه کار میکنه
نمیدانم
#zig #comptime const std = @import("std"); fn ComptimeArrayList(T: type) type { return struct { __total_mem: []T, __size: usize, const Arr = @This(); fn init() Arr { var new_mem: [1]T = undefined; …
https://www.youtube.com/watch?v=lYSJo36KYZk
واقعا فیسبوک عالیه
مقاله هه با اینجا شروع میشه که میان یه بنچمارک تخیلی درست میکنن و باهاش به این نتیجه میرسن که گیت کنده (؟)
بعدش میگردن دنبال جایگزین و mercurial رو که با پایتون نوشته شده رو انتخاب میکنن
واقعا فیسبوک عالیه
مقاله هه با اینجا شروع میشه که میان یه بنچمارک تخیلی درست میکنن و باهاش به این نتیجه میرسن که گیت کنده (؟)
بعدش میگردن دنبال جایگزین و mercurial رو که با پایتون نوشته شده رو انتخاب میکنن
YouTube
Why Facebook Doesn't Use Git
Recorded live on twitch, GET IN
### Article
https://graphite.dev/blog/why-facebook-doesnt-use-git
By: Greg Foster | https://x.com/gregmfoster
### My Stream
https://twitch.tv/ThePrimeagen
### Best Way To Support Me
Become a backend engineer. Its my favorite…
### Article
https://graphite.dev/blog/why-facebook-doesnt-use-git
By: Greg Foster | https://x.com/gregmfoster
### My Stream
https://twitch.tv/ThePrimeagen
### Best Way To Support Me
Become a backend engineer. Its my favorite…
😁2
#zig
یه کتابخونه چند بستری نیاز داشتم برای این پنجره های انتخاب فایل و پوشه توی زیگ
یکی بود ولی بر مبنی یه نسخه قدیمی یه پروژه c بود و یکی دیگم بود که برمبنی نسخه جدید همون پروژه هه بود ولی هیچی نداشت عملا
امروز نشستم و اونو کاملش کردم
https://github.com/MahdiGMK/nfde-zig
یه کتابخونه چند بستری نیاز داشتم برای این پنجره های انتخاب فایل و پوشه توی زیگ
یکی بود ولی بر مبنی یه نسخه قدیمی یه پروژه c بود و یکی دیگم بود که برمبنی نسخه جدید همون پروژه هه بود ولی هیچی نداشت عملا
امروز نشستم و اونو کاملش کردم
https://github.com/MahdiGMK/nfde-zig
GitHub
GitHub - MahdiGMK/nfde-zig: Zig bindings for nativefiledialog-extended
Zig bindings for nativefiledialog-extended. Contribute to MahdiGMK/nfde-zig development by creating an account on GitHub.
🔥5
یه چیز خنده دار دیگه بگم از ویندوز
نصاب VS (و همه جعبه ابزارای مایکروسافت) حداقل اندازه داره و باید نمایشگرت از یه اندازه ای بزرگتر باشه 😂
به جز اینم واقعا شاهکاره که یه کامپایلرو میخوای نصب کنی باید ۹۰۰ مگ دانلود کنی و ۴ گیگ حافظه بهش بدی
نصاب VS (و همه جعبه ابزارای مایکروسافت) حداقل اندازه داره و باید نمایشگرت از یه اندازه ای بزرگتر باشه 😂
به جز اینم واقعا شاهکاره که یه کامپایلرو میخوای نصب کنی باید ۹۰۰ مگ دانلود کنی و ۴ گیگ حافظه بهش بدی
واای خدای من 😂
به نظر میرسه فقط من "مشکل کمبود EQ" ندارم و کیانوش مختاریان و آدمای گوگل و ... هم دارن 😂
https://youtu.be/eIX97y3dT9c?t=4505
اگرم نمیدونید "مشکل کمبود EQ" چیه
ارجاع میکنم به اونایی که میدونن 😂😈
به نظر میرسه فقط من "مشکل کمبود EQ" ندارم و کیانوش مختاریان و آدمای گوگل و ... هم دارن 😂
https://youtu.be/eIX97y3dT9c?t=4505
اگرم نمیدونید "مشکل کمبود EQ" چیه
ارجاع میکنم به اونایی که میدونن 😂😈
YouTube
کیانوش مختاریان: مدیر و رهبر فنی سابق در گوگل
دوره طراحی مسیر شغلی (خودشناسی و یادگیری مهارتهای کلیدی مسیر شغلی)
https://B2n.ir/a75143
تلگرام پشتیبانی کارنکن
https://news.1rj.ru/str/Karnakonsupport
بات تلگرام راهنمای کارنکن
https://news.1rj.ru/str/karnakonhelp_bot
======
مهمان این قسمت کیانوش مختاریانه، مدیر سابق یکی از تیمهای…
https://B2n.ir/a75143
تلگرام پشتیبانی کارنکن
https://news.1rj.ru/str/Karnakonsupport
بات تلگرام راهنمای کارنکن
https://news.1rj.ru/str/karnakonhelp_bot
======
مهمان این قسمت کیانوش مختاریانه، مدیر سابق یکی از تیمهای…
❤4🔥1🤣1
https://news.ycombinator1.com/item?id=46064571
پیرو مهاجرت زیگ از روی گیتهاب به طرف codeberg
منم کتابخونه هامو از این به بعد میبرم اونور
پیرو مهاجرت زیگ از روی گیتهاب به طرف codeberg
منم کتابخونه هامو از این به بعد میبرم اونور
Hacker News
Migrating the main Zig repository from GitHub to Codeberg | Hacker News
725 votes - 642 comments - posted 13 hours ago
🔥5