🧑🏻💻 زبان برنامهنویسی ™HP | زبانی با اصالت ایرانی که دارای سینتکس (ساختار دستوری) ساده و مبتنی بر «فینگلیش» (فارسی با حروف لاتین) است؛ این زبان توسط حسـین پ. توسعه یافته است. 🇮🇷✊🏻
set name = "Hossein P."
chap "Hello " + name
یک زبان برنامهنویسی مدرن و کاربردی، آمده از جمهوری اسلامی ایران 🇮🇷✊🏻، توسط حسـین پ. 😎 برای استفاده تمام فارسیزبانان و ملت بزرگ ایران، و حتی تمامی مردمان جهان، در سال 2026...
این زبان با طراحی سینتکسی ساده و فینگیلیش، توانستهاست به یکی از سادهترین زبانهای برنامهنویسی جهان برای فارسیزبانان تبدیل شود تا همه بتوانیم بهراحتی از این زبان برنامهنویسی جذاب و کاربردی استفاده نماییم!
✊🏻 امید است روزی این زبان برنامهنویسی، مورد استفاده تمامی جهانیان قرار گیرد...
— 😎 حسـین پ. | توسعهدهنده زبان برنامهنویسی HP
برای اجرا و استفاده از این زبان برنامهنویسی، باید ابتدا فایل requirements.txt را مشاهده و یا دانلود نمایید، و سپس لیست کتابخانه/کتابخانههای درون آن را بر روی محل اجرای کُد پایتون خود نصب نمایید. سپس فایل پایتونی HP.py را دانلود و یا محتوای آن را Copy نمایید، و آن را در محیطی که برای اجرای کُدهای پایتون طراحی شدهاست، ذخیره نمایید.
در مرحلهی بعد، باید با توجه به دستور زبان، یک برنامه بنویسید و آن را با نام دلخواه و پسوند .hp در همان پوشه فایل اصلی (HP.py) ذخیره نمایید و به فایل اصلی بروید و فایل اصلی را اجرا نمایید.
حالا باید نام فایلی که ذخیره کردهاید را به همراه پسوند مورد نظر وارد نمایید، تا فایل شما اجرا شود و به راحتی از این زبان برنامهنویسی استفاده نمایید...!
Gmail Support.md یا Issues یا...)
سینتکس فینگیلیش، قواعد فشرده، و مثالهای عملی
HP یک زبان تفسیری کوچک با کلیدواژههای فینگیلیش مثل Chap، Set، Agar، Vagarna، Loop، Baraye، Tabe و Bargard است. این راهنما روی سینتکس قابلاستفاده توسط کاربر تمرکز دارد و اصطلاحات را در سراسر متن یکدست نگه میدارد.
موتور زبان بهصورت خودکار نوع دادههای ساده را تشخیص میدهد: رشته، عدد صحیح، عدد اعشاری، بولی، null، درصد، آرایه، دیکشنری و تاریخ.
| کلیدواژه HP | معنی |
|---|---|
| Chap | چاپ / خروجی |
| Set | تعریف یا مقداردهی |
| Agar / Vagarna | اگر / وگرنه |
| Loop | حلقهٔ شرطی |
| Baraye | حلقهٔ for |
| Az / Ta / Gam / Dar | از / تا / گام / در |
| Tabe | تابع |
| Bargard | بازگشت |
| Emtehan / Khata / Hamishe | تلاش / خطا / همیشه |
| EzafeBe / HazfAz | افزودن / حذف |
| Begir | ورودی |
| Dorost / Ghalat / Hich | درست / غلط / هیچ |
| Baghimande | باقیمانده |
| ... | کامنت |
نکته: شناسهها میتوانند فینگلیش نوشته شوند. بهتر است کلمات رزرو شده را همان فرم HP نگه دارید.
با Set یک متغیر میسازید. اگر متغیر از قبل وجود داشته باشد، میتوان آن را با = دوباره مقداردهی کرد.
رشتهها میتوانند با نقلقول دوتایی یا تکی نوشته شوند. عددها، بولی، null و درصد هم پشتیبانی میشوند.
Set name = "Amin"
Set age = 14
Set price = 19.99
Set active = Dorost
Set missing = Hich
Set discount = 15%
name = "Reza"
Chap name
Chap age
Chap discount
آرایهها با کروشه نوشته میشوند. شمارهگذاری اندیسها از ۱ شروع میشود.
دیکشنریها با ; بین جفتها و : بین کلید و مقدار نوشته میشوند.
Set nums = [10, 20, 30, 40]
Chap nums.get(1)
Chap nums.length()
Chap nums.sum()
Chap nums.avg()
nums.add(50)
nums.remove(2)
Chap nums
Set user = ["name":"Ali";"age":25]
Chap user.value("name")
Chap user.key(25)
Chap user.has("age")
Chap user.keys()
Chap user.values()
Chap user.length()
HP از تاریخ جلالی و میلادی پشتیبانی میکند.
برای تاریخ جلالی از @YYYY/MM/DD و برای میلادی از @@YYYY/MM/DD استفاده کنید.
مقدار ویژهٔ @today تاریخ فعلی را برمیگرداند.
Set today = @today
Set d1 = @1402/10/15
Set d2 = @@2024/01/05
Chap d1.year()
Chap d1.month()
Chap d1.day()
Chap d1 - d2
بلاکهای شرطی با Agar و Vagarna نوشته میشوند.
Loop یک حلقهٔ شرطمحور است.
Baraye میتواند با بازهها، آرایهها، دیکشنریها و رشتهها کار کند.
Agar score >= 90 {
Chap "A"
} Vagarna {
Agar score >= 80 {
Chap "B"
} Vagarna {
Chap "F"
}
}
Set i = 1
Loop i <= 5 {
Chap i
Set i = i + 1
}
Baraye n Az 1 Ta 10 Gam 2 {
Chap n
}
Baraye item Dar [10, 20, 30] {
Chap item
}
تابعها با Tabe شروع میشوند و با }f بسته میشوند.
پارامترها میتوانند مقدار پیشفرض داشته باشند.
Bargard از تابع خارج میشود و میتواند مقدار هم برگرداند.
Tabe add(a, b) f{
Bargard a + b
}f
Tabe greet(name, prefix = "Hello") f{
Bargard prefix + ", " + name
}f
Tabe factorial(n) f{
Agar n <= 1 {
Bargard 1
} Vagarna {
Bargard n * factorial(n - 1)
}
}f
از Emtehan، Khata و Hamishe برای مدیریت خطا و پاکسازی استفاده میشود.
موتور عبارتها از محاسبهٔ ریاضی، مقایسه، فاکتوریل، قدر مطلق، توان، باقیمانده و چند تابع کمکی ریاضی پشتیبانی میکند.
تابعهای داخلی فعلی شامل sqrt، int، float، str، bool و abs هستند.
Emtehan {
Set result = 10 / 0
} Khata {
Chap "An error occurred"
} Hamishe {
Chap "Cleanup"
}
Chap $Sin(90)
Chap $Cos(45)
Chap $Tan(30)
Chap $Log(100)
Chap $GCD(24, 36)
Chap $LCM(4, 6)
Chap 5!
Chap | -10 |
Chap 2 ^ 8
Chap 10 mod 3
Chap sqrt(16)
Chap int(3.9)
Chap float(42)
Chap str(100)
Chap bool(1)
Chap abs(-5)
Chap یک مقدار را در ترمینال چاپ میکند.
Begir ورودی کاربر را میخواند و میتواند متن راهنما هم داشته باشد.
کامنت تکخطی در موتور فعلی با ... نوشته میشود.
Chap "Hello"
Chap red("Warning")
Chap green("Done")
Set name = Begir("Enter your name: ")
Chap "Hello " + name
... این یک کامنت است! این خط نادیده گرفته میشود
Chap "Visible output" ... این بخش هم نادیده گرفته میشود
break
continue
return
return 42
هرجا ترتیب اجرا مهم باشد، از پرانتز استفاده کنید.
عملگرهای مقایسه شامل ==، !=، <، >، <= و >= هستند.
رشتهها با + به هم وصل میشوند و ضرب رشته در عدد هم پشتیبانی میشود.
Set result = (3 + 4) * 2
Chap 5 == 5
Chap 10 > 7
Chap 8 <= 8
Chap 3 != 4
Chap "HP " + "language"
Chap 10 + 5
Chap 20 - 3
Chap 6 * 7
Chap 15 / 3
HP برای سینتکس فینگیلیش ساخته شده و تمرکز آن روی سادگی، خوانایی و اجرای مستقیم است.
قواعد اصلی که باید حفظ شوند عبارتاند از:
- کلیدواژههای HP
- مقداردهی با
Set - چاپ با
Chap - شرط با
Agar - تابع با
Tabe - بازگشت با
Bargard - حلقه با
LoopوBaraye
با همین قواعد میتوان برنامههای کوتاه، خوانا و قابلگسترش نوشت.

