geo-x icon indicating copy to clipboard operation
geo-x copied to clipboard

Completely Georgianized programming language PoC

იქ->C

იქ-C წარმოადგენს პირველი ქართული პროგრამირების ენის კონცეპტს, რომელიც C ენის გამარტივებული ანალოგია. იქსი არის ზოგადი დანიშნულების სტრუქტურული პროგრამირების ენა, რომლის პლიუსებია: პრაქტიკულობა და სრულიად გაქართულებული სინტაქსი, გამოყენების სიადვილე, სტრუქტურული პროგრამირების მხარდაჭერა, ტექსტის ეფექტიანი დამუშავების ჩაშენებული მექანიზმი და მოდულების ქართული ბიბლიოთეკა. აღნიშნული მახასიათებლები მას ადვილად ასათვისებელს ხდის როგორც დამწყები, ასევე გამოცდილი პროგრამისტებისათვის. იქ-C შეიქმნა ჯგუფ Geo-X-ის მიერ HackTSU ჰაკათონის ფარგლებში. ჯგუფის წევრების მთავარი მიზანი და პრიორიტეტია ქართველი ახალბედა დეველოპერებისთვის პროგრამირების შესწავლის გამარტივება და მათთვის დახმარება. იქ-C წარმოადგენს ღია წყაროს სახის პროექტს და შექმნილია MIT ლიცენზიის ფარგლებში.

Geo-X Logo

დაყენების ინსტრუქცია

იქ-C წარმოადგენს მულტიპლატფორმულ პროგრამირების ენას და მისი ინსტალაცია შესაძლებელია გიტიდან.

git clone [email protected]:kala13x/geo-x.git
cd geo-x
chmod +x build.sh
./build.sh

სინტაქსი

მარტივი იქC-ს პროგრამა, რომელიც ჩართვისას დაბეჭდავს "გამარჯობა მსოფლიო"

შემოიღე სტანდარტები

ცარიელი ფუნქცია მთავარი () 
{
    დაბეჭდე("გამარჯობა მსოფლიო");
}

კომპილაცია

იქ-C-ს კოდის კომპილაცია შესაძლებელია gxx-ის მეშვეობით, რომლის გამოყენებაც არის ძალიან მარტივი. მაგალითად გამარჯობა.ი კოდის შემთხვევაში:

შემოიღე სტანდარტები

ცარიელი ფუნქცია მთავარი (რიცხვი არგუმენტები, სტრიქონი არგუმენტი[])
{
	/* შევამოწმოთ სწორი შეყვანილი სახელი */
	თუ (არგუმენტი[1] არის არაფერი) 
	{
		დაბეჭდე("მიუთითეთ სახელი არგუმენტად პროგრამის გაშვებისას");
		მოკვდი;
	}

	დაბეჭდე("გამარჯობა %d", არგუმენტი[1]);
}

კომპილაცია შესაძლებელია შემდეგი ბრძანებით

gxx -i გამარჯობა.ი -o გამარჯობა

სადაც გამარჯობა.ი არის საწყისი კოდის ფაილი და გამარჯობა - ფაილი რაშიც გვინდა დავაკომპლიროთ კოდი.

სიმარტივე

იქ->C ს მიზანია რომ კოდი იყოს მაქსიმალურად მარტივი და გასაგები დამწყები დეველოპერებისათვის, ამიტომ მისი სინტაქსი მაქსიმალურად მიახლოებულია სალაპარაკო ქართულთან. მაგალითდ ფუნქციის აღწერა რომელიც აბრუნებს რიცხვს ხდება ასე:

ფუნქცია კვადრატი აბრუნებს რიცხვს (რიცხვი ი) 
{
    დააბრუნე ი*ი;
}

აღნიშნული ფუნქცია არგუმენტად აიღებს რიცხვს, გაამრავლებს მას საკუთარ თავზე და დააბრუნებს ნამრავლის მნიშვნელობას.

ესაა მაგალითი იმის რომ იქ->C ს კოდი ძალიან ახლოს არის სალაპარაკო ქართულთან რაც მას ადვილად ასათვისებელს და მარტივს ხსნის დამწყები დეველოპერებისათვის

Year

აღნიშნული მახასიათებლები მარტივად გასაგებს ხდის კოდს და ეხმარება დამწყებ დეველოპერებს კოდის პროგრამირების ადვილად ათვისებაში.

სტრუქტურები

სტრუქტურებთან სამუშაოდ იქ-C იყენებს C ენის დახვეწილ სიტაქსს და აქვს შესაბამისი ქართული სინტაქსური ანალოგი. ეს არის მარტივი პროგრამა, რომელიც აღწერას უკეთეს სტრუქტუას, შემდეგ აკეთებს სტრუქტურის ცვლადების ინიციალიზაციას და ბეჭდავს მათ.

Structs

ესაა მაგალითი იმისა თუ როგორ მოხდება ზევით დაწერილი კოდის კომპილაცია და რა შედეგი ექნება დაკომპლირებული ფაილის გაშვებას ტერმინალში.

Struct

თარგმნის რეჟიმი

თუ თქვენ gxx-ს გაუშვებთ არგუმენტ -s ის დამატებით, პროგრამა კოდის კომპილაციის პარალელურად შექმნის იქ->C ში დაწერილი კოდის ზუსტ ანალოგს C პროგრამირების ენისთვის. ეს რეჟიმი არის სპეციალურად დამწყები პროგრამისტებისთვის, რადგან მათ შეეძლოთ შეხედვა და გაანალიზება თუ როგორ ხდება ქართულად დაწერილი იქ->C ს კოდის ტრანსლაცია C ში და როგორ მუშაობს ქართული კოდის C ანალოგი.

დოკუმენტაცია

იქ-C-ს მაგალითები შეგიძლიათ იხილოთ მაგალითების საქაღალდეში. სრული დოკუმენტაცია მალე იქნება ხელმისაწვდომი.