ہیک (پروگرامنگ زبان)

آزاد دائرۃ المعارف، ویکیپیڈیا سے
Jump to navigation Jump to search
ہیک
ہیک کا لوگو
اشاعت 2014
ڈیزائنر Julien Verlaguet, Alok Menghrajani, and others[1]
ترقی دہندہ فیس بک
شعبہ تحریر static , dynamic , weak
متاثر پی ایچ پی, Java, C#
آپریٹنگ سسٹم کراس پلیٹ فارم
اجازت نامہ BSD License[2]
ویب سائٹ hacklang.org

ہیک (انگریزی: Hack) ایک پروگرامنگ زبان ہے جو ہپ ہاپ ورچول مشین (HipHop Virtual Machine) کے لیے تیار کی گئی ہے۔ اس زبان کو فیس بک نے تیار کرکے آزاد مصدر رکھا ہے اور بی ایس ڈی اجازت نامہ کے تحت جاری کیا ہے۔[3][4]

ہیک کو پی ایچ پی کا نیا ورژن کہا جاسکتا ہے، لیکن ہیک زبان پروگرامرز کو ڈائنامک اور سٹیٹک دونوں قسم کی ٹائپنگ کی سہولت فراہم کرتی ہے، جسے گریجول ٹائپنگ (gradual typing) کہا جاتا ہے۔ ہیک کا ٹائپ سسٹم ان تمام اقسام کی سہولت فراہم کرتا ہے جن کے ذریعہ فنکشن آرگیومنٹس (function arguments)، فنکشن کی ریٹرن ویلیوز (function return values) اور کلاس پراپرٹیز (class properties) کو مختص کیا جاتا ہے، البتہ مقامی متغیرات کے اقسام کو مختص (specify) نہیں کیا جاسکتا۔[5][6]

تاریخ[ترمیم]

ہیک زبان 20 مارچ، 2014ء کو متعارف کرائی گئی۔[7] اس نئی پروگرامنگ زبان کے باضابطہ عمومی اعلان سے قبل فیس بک نے خود اپنی ویب سائٹ پر اس کے کوڈ کو استعمال کیا اور بڑے پیمانے پر اس کی جانچ پڑتال کی۔

خصوصیات[ترمیم]

ہیک زبان پی ایچ پی کی طرح ہی کام کرتی ہے، پی ایچ پی ویب پر عمومی مقاصد کے لیے انتہائی زیادہ مستعمل سکرپٹنگ زبان ہے جو بالخصوص ویب ڈویلپمنٹ کے لیے انتہائی مناسب ہے اور ایچ ٹی ایم ایل میں ضم بھی ہوجاتی ہے۔ پی ایچ پی کی اکثر سکرپٹس ہیک زبان میں بھی درست کام کرتی ہیں، تاہم پی ایچ پی کے کم استعمال ہونے والی خصوصیات کو ہیک معاونت فراہم نہیں کرتی۔[8]

زبان کی نحو[ترمیم]

ہیک سکرپٹ کا بنیادی خاکہ معمولی تبدیلیوں کے ساتھ پی ایچ پی سکرپٹ کی طرح ہی ہوتا ہے۔ ہیک فائل کا آغاز

<?hh

سے ہوتا ہے، جبکہ پی ایچ پی سکرپٹ کا آغاز

<?php

سے ہوتا ہے۔

<?hh
echo 'Hello World';

درج بالا سکرپٹ چلنے کے بعد براؤزر میں ذیل کے نتائج دکھائے گی:

Hello World

یہاں ایک انتہائی ضروری بات یاد رکھنے کی ہے کہ پی ایچ پی کی طرح ہیک زبان میں ہیک اور ایچ ٹی ایم ایل کوڈ کو ضم نہیں کیا جاسکتا۔ عموما پی ایچ پی اور ایچ ٹی ایم ایل کو ایک ہی فائل میں اس طرح ضم کیا جاتا ہے:

<html>
 <head>
 <title>PHP Test</title>
 </head>
 <body>
 <!-- hh and html do not mix -->
 <?php echo '<p>Hello World</p>'; ?> 
 </body>
</html>

اس طرز کی کوڈنگ کو ہیک معاونت فراہم نہیں کرتی۔[8]

فنکشنز[ترمیم]

ہیک زبان ان تمام اقسام کی سہولت فراہم کرتی ہے جن کے ذریعہ فنکشن آرگیومنٹس (function arguments) اور فنکشن کی ریٹرن ویلیوز (function return values) کو مختص کیا جاتا ہے۔ ہیک میں متعدد اقسام کے فنکشنز ذیل میں ملاحظہ کریں:

<?hh
// Hack functions are annotated with types.
function negate(bool $x): bool {
 return !$x;
}

مزید دیکھیے[ترمیم]

حوالہ جات[ترمیم]

  1. "Contributors to facebook/hhvm"۔ Github.com۔ اخذ شدہ بتاریخ 2014-03-25۔
  2. "facebook/hhvm"۔ github.com۔ فیس بک۔ 2014-03-20۔ مورخہ 7 جنوری 2019 کو اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 2014-08-11۔ |section= ignored (معاونت)
  3. Josh Lockhart (2014-04-03)۔ "Facebook's Hack, HHVM, and the future of PHP"۔ O'Reilly Media۔ مورخہ 7 جنوری 2019 کو اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 2014-08-02۔
  4. Cade Metz (2014-03-20)۔ "Facebook Introduces 'Hack,' the Programming Language of the Future"۔ Wired۔ مورخہ 7 جنوری 2019 کو اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 2014-04-15۔
  5. "Hack Manual"۔ docs.hhvm.com۔ اخذ شدہ بتاریخ 2014-03-25۔ |section= ignored (معاونت)
  6. "Hack Manual"۔ docs.hhvm.com۔ اخذ شدہ بتاریخ 2014-03-25۔ |section= ignored (معاونت)
  7. "Hack: a new programming language for HHVM"۔ code.facebook.com۔ فیس بک۔ مورخہ 7 جنوری 2019 کو اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 2014-03-23۔
  8. ^ ا ب "Hack Manual"۔ docs.hhvm.com۔ اخذ شدہ بتاریخ 2014-04-02۔ |section= ignored (معاونت)

بیرونی روابط[ترمیم]

سانچہ:PHP