👾 Geek Engineers
504 subscribers
47 photos
41 files
300 links
👾 Extremist software engineering guidance for Geeks.

Website:
https://geekengineers.netlify.app

Github:
https://github.com/geekengineers
https://github.com/tahadostifam

Community:
@geek_engineers_community
Download Telegram
Cyrus: A high-performance, statically-typed, manually memory-managed and procedural programming language empowered by LLVM. Made with Rust 🦀.

برای حمایت از ما میتونید توی گیت هاب ⭐️ بدید که خیلی به دیده شدنش توی explore گیت هاب کمک میکنه. همینطور اگر با دوستاتون شیر کنید خیلی خوشحال میشیم =) ❤️🤌🏿

Community:
@cyrus_lang

GitHub:
https://github.com/cyrus-lang/Cyrus-Lang
🔥191👍1🕊1
امروز چالش جالبی داشتم =)
بعد از کمی جست و جو فهمیدم که C اجازه نمیده که بدین صورت یه ارایه کامل رو اساین بکنی. و تنها چاره ش اینه که دونه دونه ایتم هارو اساین کنیم. مثلا :

my_arr[0] = 256;
my_arr[1] = 257;

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

درستش کردم💀🤌🏿

پ.ن: یه vector هم اضافه بشه خیلی خوشحال میشم

#cyrus
👍113
یه compiler backend ساخته شده به اسم QBE که فلسفه ش اینه که شما اگر میخوای یه hobby programming language بسازی استفاده کردن از LLVM مث حمل کردن یه کوله پشتی با یه کامیون بزرگ میمونه.
پس بیاید از QBE استفاده بکنید که هم توسعه پذیر هست و هم سبکه و همینطور یه IR اختصاصی هم برای خودش داره که شباهت زیادی هم به LLVM-ir داره.

https://c9x.me/compile/docs.html

همینطور Tsoding رو داریم که کلی این کامپایلر رو انگولک میکنه =)

https://www.youtube.com/watch?v=JTjNoejn4iA

پ.ن: نظر من رو بخواید ازین یه presentation خوب برای دانشگاه در میاد.

#compiler
8
این از همه عجیب تره😂💀 زبان Bend ادعا میکنه که با parallelism تونسته آپتیمایزیشن خیلی بزرگی انجام بده اما نکته قابل توجه ماجرا اینه که ما اصلا نیاز نداریم که چیزی راجب پاراللیسم بدونیم چون خودش in-depth داره همه چیو هندل میکنه. سینتکسشم پایتونه

فلسفه اینم اینه که هرچیزی که بتون parallel ران بشه... حتمی ران میشه =/

البته همونطور که ThePrimeTime هم میگه من هم به خوبی درک نمیکنم این چیکار داره انجام میده در حقیقت😂 باید سورس کدشو بخونیم... چون jargon های عجیب غریبی اختراع کرده که graph و CFG شو شرح بده.
ولی منم موافقم که استفاده کردن ازین یه دانش عجیب ریاضی میخواد😂

https://www.youtube.com/watch?v=NaytZOiX3fs

خلاصه که خیلی پروژه باحالیه. اگه وقت بزارید روش حتمی چیزای عجیب تری ازش در میاد.

وبسایتش:

https://higherorderco.com

#compiler #programming_languages
9🤷3👍1
این همون bash script عه که بهش class support هم اضافه کردن. ینی میتونید باهاش object oriented به اسکریپت نویسی بپردازید :

@class Bashpp {
@public author="Andrew S. Rightenburg"
@public source="https://github.com/rail5/bashpp"
@public license="GNU GPL v3"

@public @method printInfo {
echo "Bash++ is a superset of Bash that adds support for classes and objects."
echo "It's meant to be a simple way to add object-orientation to Bash scripts."
echo "Author: @this.author"
echo "Source: @this.source"
echo "License: @this.license"
}
}

@Bashpp myBashpp
@myBashpp.printInfo


https://bpp.sh

#bash #linux
🔥8
بعد ۳ روز کار کردن بلخره کانفیگ NixOS به همراه HyprLand تموم شد. خیلی خوشحالم که تونستم بیام روی نیکس چرا که ازین به بعد دیگه قرار نیست سیستمم خراب بشه :)
توی نیکس همه چی بوسیله کانفیگ ساخته میشه و بالا میاد و همینطور اگر سیستم رو خراب کردیم میتونیم بگردیم generation قبلی و مشکل رو فیکس کنیم و وولا! پس به مرور زمان سیستم عاملتون بهتر و بهتر خواهد شد. نه این که انگولک بکنید لینوکس تون رو و اگر پرید کلا به فنا برید. فوق العاده ست این سیستم عامل.

github.com/tahadostifam/TahaOS
#nixos

پ.ن: به سلیقه م چند میدید توی کانفیگ هایپرلند؟ =]
👍9
راست یک ابزار قدرتمندی دیگری هم دارد به نام bindgen که به شما این امکان را میدهد که لایبرری های نوشته شده با C را bind (port) کنید (FFI binding).

این ابزار C header file بعنوان ورودی میگیره و extern راست تحویل میده.

https://github.com/rust-lang/rust-bindgen

در نظر دارم در آینده ابزار مشابهی برای Cyrus بسازم که توسعه external libraries یک زبان رو بی نهایت تسهیل میکند.

#cyrus #rust #FFI
👍9
Vegeta is a versatile HTTP load testing tool built out of a need to drill HTTP services with a constant request rate.

https://github.com/tsenart/vegeta
👾2
شماتیک حل مشکل در زبان های مختلف
فقط php 😂

#fun
☕️ Telegram | Website | Discord
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Forwarded from Linuxor ?
بیاین فرهنگ کد جایز الخطاست رو جا بندازیم


@Linuxor
🫡9
آینده توسعه وب یا چی؟
نظر خودمو بخواید میگم کمونیتیش به اندازه کافی بزرگ هست که بشه باهاش چیزی توسعه داد. سینتکسی که هم ارائه میده کار با جاوا اسکریپت و تایپ اسکریپت و اچ تی ام ال و سی اس اس رو همزمان آسون میکنه. integration فوق العاده ای داره.

https://rescript-lang.org
👍8🫡1
لیستی از بهترین کتاب های Rust Programming Language:

https://github.com/sger/RustBooks

پ.ن: دانلود نداره*
👍5
بلخره اساس builtin func ها تموم شدن =)))
فعلا len و sizeof به خوبی داره کار میکنه.

و البته که از وقتی پارسر رو ریفکتور کردم کلی از مشکلاتش کمتر شده. هنوز یه چیزای کوچیکی باگ میخوره ولی خیلی کمتر شده. و هرچی پارسره درست درمون باشه بیشتر میوفتیم رو سرازیری فیچر دادن. چند ساعت پیش یه باگی خوردم... فکر میکردم از کامپایلره ولی بعد دیدم پارسر اصلا درست پارس نمیکنه که tree مناسب رو ارائه بده.

همینطور در نظر دارم اروم اروم داکیومنت هارو بنویسیم.
نوشتنش با منه.
ولی برای دولوپ وبسایت دنبال دولوپر فرانت میگردم (Tailwindcss).

Project Repo:
https://github.com/cyrus-lang/Cyrus-Lang
🆒9👍1🕊1
یه پروژه عالی که source-to-source transpiler هست و کد C رو تبدیل به کد unsafe Rust میکنه. فعلا زیاد استیبل نیست ولی ایده خفنی پشتشه.

Website:
https://c2rust.com

Repo:
https://github.com/immunant/c2rust
👍4👎1
Packt.Minimal.CMake.pdf
3.7 MB
Minimal CMake: Learn the best bits of CMake to create and share your own libraries and applications (2025)
👍61
منتورم بلخره تو چنلم جوین داد. از بس ذوق زده شدم زدم ریمو شد. حالا بیا و جمش کن🥺😭🤦
😱9🗿6👨‍💻2👾1