روبی (پروگرامنگ زبان)
پیراڈائم | multi-paradigm: اوبجیکٹ اوریئنٹڈ، امپیریٹیو،، فنکشنل، reflective |
---|---|
اشاعت | 1995 |
ڈیزائنر | یوکوہیرو ماتسوموتو |
ترقی دہندہ | Yukihiro Matsumoto، et al. |
مستحکم اشاعت | 2.1.4 (27 اکتوبر 2014ء[1]) |
شعبہ تحریر | duck، dynamic |
Scope | lexical، sometimes dynamic |
اہم اطلاقات | Ruby MRI، YARV، Rubinius، MagLev، JRuby، MacRuby، RubyMotion، HotRuby، IronRuby، Mruby |
متاثر | ایڈا،[2] سی++،[2] CLU،[3] Dylan،[3] ایفل،[2] لوا، Lisp،[3] پرل،[3] پائیتھون،[3] Smalltalk[3] |
موثر | Clojure، D،[4] Elixir، Falcon، Fancy،[5] Groovy، Ioke،[6] Julia،[7]Mirah، Nu،[8] potion، Reia، Swift[9] |
آپریٹنگ سسٹم | کراس پلیٹ فارم |
اجازت نامہ | Ruby License or BSD License[10][11] |
فائل کی توسیع | .rb، .rbw |
ویب سائٹ | www |
روبی (یاقوت) (انگریزی: Ruby) ایک آبجیکٹ اورئنٹڈ اور عمومی مقاصد کے لیے استعمال ہونے والی پروگرامنگ زبان ہے جسے 1990ء کی دہائی کے درمیان یوکوہیرو ماتسوموتو (Yukihiro Matsumoto) نے جاپان میں بنایا تھا۔
اس کے مصنفین کے مطابق، روبی زبان دیگر پروگرامنگ زبانوں پرل، سمال ٹالک، ایفل، ایڈا اور لسپ سے متاثر ہے۔[12] روبی متعدد پروگرامنگ پیراڈائم کو سپورٹ کرتی ہے، نیز یہ ایک فنکشنل، آبجیکٹ اورئنٹڈ اور امپیریٹیو زبان ہے۔ مزید اس میں ڈائنامک ٹائپ سسٹم اور اور خودکار میموری مینجمنٹ کی سہولت بھی موجود ہے۔
تاریخ
[ترمیم]24 فروری 1993ء میں یوکی ہیرو ماتسوموتو نے روبی زبان کی ڈیزائننگ اور ڈویلپمنٹ کا آغاز کیا۔ ڈیزائننگ کے دوران دیگر پروگرامنگ زبانوں مثلا پرل، پائیتھون، لسپ اور ایڈا کی ممتاز خصوصیات کو اخذ کیا۔ 21 دسمبر 1995ء کو روبی زبان کا پہلا نسخہ (Ruby 0.95) منظر عام پر پیش کیا گیا،[13][14] نیز اگلے دونوں میں روبی کے مزید تین نسخے پیش کیے گئے۔[15] لیکن روبی زبان کو زیادہ مقبولیت حاصل نہیں ہوئی، پھر 2005ء میں ڈیوڈ ہائنمائر ہانسون نے روبی زبان میں ویب پروگرامنگ فریم ورک روبی آن ریلس اِرقام کیا تو اس کی مقبولیت میں بے حد اضافہ ہو گیا۔
روبی نام
[ترمیم]روزی زبان کی کوڈنگ سے قبل 24 فروری 1993ء کو ماتسوموتو اور اشت سوکا کے درمیان ایک آن لائن چیٹنگ کے دوران یہ نام “روبی“ سامنے آیا۔[15] ابتدا میں دو نام پیش نظر تھے، روبی اور کورل (Coral)۔ ماتسوموتو نے روبی کا انتخاب کیا جو اس کے ایک شریک کار کا سنگ پیدائش بھی تھا۔[16][17]
ابتدائی اشاعتیں
[ترمیم]روبی کی ابتدائی اشاعت Ruby 0.95 کے بعد اس کے مزید متعدد مستحکم نسخے اشاعت پزیر ہوتے رہے، جن کی فہرست درج ذیل ہے:
- روبی 1.0: 25 دسمبر 1996[15]
- روبی 1.2: دسمبر 1998
- روبی 1.4: اگست 1999
- روبی 1.6: ستمبر 2000
2000ء میں روبی زبان جاپان میں پائیتھون سے زیادہ مقبول ہو چکی تھی۔[18] ستمبر 2000 میں پہلی انگریزی کتاب روبی پروگرامنگ کے نام سے منظر عام پر آئی۔
- روبی 1.8: اگست 2003
- روبی 1.9: دسمبر 2007
- روبی 2.0: 24 فروری 2013[19]
اس اشاعت میں متعدد نئی خصوصیات متعارف کرائی گئیں۔
- روبی 2.1: کرسمس ڈے 2013[20]
مثالیں
[ترمیم]درج ذیل مثالوں کو کسی فائل میں محفوظ کرکے کمانڈ لائن سے چلایا جا سکتا ہے۔ اس کے لیے پہلے Ruby
اِرقام کریں، اس کے بعد فائل کا نام درج کریں۔
ہیلو ورلڈ کی کلاسیکی مثال:
puts "Hello World!"
روبی کے کچھ بنیادی کوڈ:
# Everything، including a literal، is an object، so this works:
-199.abs # 199
"ice is nice".length # 11
"ruby is cool.".index("u") # 1
"Nice Day Isn't It?".downcase.split("").uniq.sort.join # " '?acdeinsty"
سٹرنگ کنورژن کی مثال:
puts "What's your favorite number?"
number = gets.chomp
output_number = number.to_i + 1
puts output_number.to_s + ' is a bigger and better favorite number.'
سٹرنگز
[ترمیم]روبی میں سٹرنگز کو ڈیفائن کرنے کے متعدد طریقے ہیں۔
a = "\nThis is a double-quoted string\n"
a = %Q{\nThis is a double-quoted string\n}
a = %{\nThis is a double-quoted string\n}
a = %/\nThis is a double-quoted string\n/
a = <<-BLOCK
This is a double-quoted string
BLOCK
مزید دیکھیے
[ترمیم]حوالہ جات
[ترمیم]- ↑ nagachika (2014-10-27)۔ "Ruby 2.1.4 Released"۔ ruby-lang.org۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 27 اکتوبر 2014
- ^ ا ب پ
Peter Cooper (2009)۔ Beginning Ruby: From Novice to Professional۔ Beginning from Novice to Professional (2nd ایڈیشن)۔ Berkeley: APress۔ صفحہ: 101۔ ISBN 1-4302-2363-4۔
To a lesser extent، Python، LISP، Eiffel، Ada، and C++ have also influenced Ruby.
- ^ ا ب پ ت ٹ ث
Ola Bini (2007)۔ Practical JRuby on Rails Web 2.0 Projects: Bringing Ruby on Rails to Java۔ Berkeley: APress۔ صفحہ: 3۔ ISBN 1-59059-881-4۔
It draws primarily on features from Perl، Smalltalk، Python، Lisp، Dylan، and CLU.
- ↑ "Intro - D Programming Language 1.0 - Digital Mars"۔ Digital Mars۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 21 اکتوبر 2014۔
D is a systems programming language. Its focus is on combining the power and high performance of C and C++ with the programmer productivity of modern languages like یاقوت and Python.
- ↑ Christopher Bertels (23 February 2011)۔ "Introduction to Fancy"۔ Rubinius blog۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 21 جولائی 2011
- ↑ Ola Bini۔ "Ioke"۔ Ioke.org۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 21 جولائی 2011۔
inspired by Io، Smalltalk، Lisp and Ruby
- ↑ "آرکائیو کاپی"۔ 08 اپریل 2016 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 01 نومبر 2014
- ↑ Tim Burks۔ "About Nu™"۔ Programming Nu™۔ Neon Design Technology، Inc.۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 21 جولائی 2011
- ↑ Chris Lattner (2014-06-03)۔ "Chris Lattner's Homepage"۔ Chris Lattner۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 03 جون 2014۔
The Swift language is the product of tireless effort from a team of language experts، documentation gurus، compiler optimization ninjas، and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course، it also greatly benefited from the experiences hard-won by many other languages in the field، drawing ideas from Objective-C، Rust، Haskell، Ruby، Python، C#، CLU، and far too many others to list.
- ↑ "COPYING in Ruby official source repository"۔ 20 مارچ 2017 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 01 نومبر 2014
- ↑ "BSDL in Ruby official source repository"۔ 21 مارچ 2022 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 01 نومبر 2014
- ↑ "About Ruby"۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 02 مارچ 2014
- ↑ "More archeolinguistics: unearthing proto-Ruby"۔ 06 نومبر 2015 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 01 نومبر 2014
- ↑ ""Re: history of ruby" — E-mail from Yukihiro Matsumoto to ruby-talk"۔ 16 جولائی 2011 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 01 نومبر 2014
- ^ ا ب پ http://blog.nicksieger.com/articles/2006/10/20/rubyconf-history-of-ruby History of Ruby
- ↑ "The Ruby Language FAQ – 1.3 Why the name 'Ruby'?"۔ Ruby-Doc.org۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ April 10، 2012
- ↑ Yukihiro Matsumoto (June 11، 1999). "Re: the name of Ruby?". Ruby-Talk mailing list. Archived from the original on 2018-12-25. https://web.archive.org/web/20181225131629/http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/394%0A%20۔ اخذ کردہ بتاریخ April 10، 2012.
- ↑ Yukihiro Matsumoto (October 2000)۔ "Programming Ruby: Forward"۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 05 مارچ 2014
- ↑ Endoh، Yusuke. (2013-02-24) Ruby 2.0.0-p0 is released. Ruby-lang.org. Retrieved on 2013-07-17.
- ↑ "Ruby 2.1.0 is released"۔ December 25، 2013۔ 25 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ December 26، 2013
مزید پڑھیے
[ترمیم]- Sandi Metz (September 5، 2012)، Practical Object-Oriented Design in Ruby (First ایڈیشن)، Addison-Wesley، صفحہ: 272، ISBN 0-321-72133-0
- Jeremy McAnally، Assaf Arkin (March 28، 2009)، Ruby in Practice (First ایڈیشن)، Manning Publications، صفحہ: 360، ISBN 1-933988-47-9
- Dave Thomas، Chad Fowler، Andy Hunt (April 28، 2009)، Programming Ruby 1.9: The Pragmatic Programmers' Guide (Third ایڈیشن)، Pragmatic Bookshelf، صفحہ: 1000، ISBN 1-934356-08-5، 01 ستمبر 2015 میں اصل سے آرکائیو شدہ، اخذ شدہ بتاریخ 01 نومبر 2014
- David Black (June 4، 2009)، The Well-Grounded Rubyist (First ایڈیشن)، Manning Publications، صفحہ: 520، ISBN 1-933988-65-7
- David Flanagan، Yukihiro Matsumoto (January 25، 2008)، The Ruby Programming Language (First ایڈیشن)، O'Reilly Media، صفحہ: 446، ISBN 0-596-51617-7
- Kevin Baird (June 8، 2007)، Ruby by Example: Concepts and Code (First ایڈیشن)، No Starch Press، صفحہ: 326، ISBN 1-59327-148-4
- Michael Fitzgerald (May 14، 2007)، Learning Ruby (First ایڈیشن)، O'Reilly Media، صفحہ: 255، ISBN 0-596-52986-4
- Peter Cooper (March 26، 2007)، Beginning Ruby: From Novice to Professional (First ایڈیشن)، Apress، صفحہ: 664، ISBN 1-59059-766-4، 17 ستمبر 2010 میں اصل سے آرکائیو شدہ، اخذ شدہ بتاریخ 01 نومبر 2014
- Hal Fulton (November 4، 2006)، The Ruby Way (Second ایڈیشن)، Addison-Wesley، صفحہ: 888، ISBN 0-596-52369-6
- Lucas Carlson، Leonard Richardson (July 19، 2006)، Ruby Cookbook (First ایڈیشن)، O'Reilly Media، صفحہ: 906، ISBN 0-596-52369-6
بیرونی روابط
[ترمیم]ویکی ذخائر پر روبی (پروگرامنگ زبان) سے متعلق سمعی و بصری مواد ملاحظہ کریں۔ |
- دفتری ویب سائٹ
- Official Ruby documentation
- Ruby User Guideآرکائیو شدہ (Date missing) بذریعہ rubyist.net (Error: unknown archive URL) — by Yukihiro Matsumoto، the creator of Ruby
- Ruby From Other Languages
- Ruby Forum — gateway to the ruby-talk mailing list
- Try Ruby!آرکائیو شدہ (Date missing) بذریعہ tryruby.org (Error: unknown archive URL) — web-based Ruby REPL
- Ruby Draft Specification، September 2010آرکائیو شدہ (Date missing) بذریعہ ipa.go.jp (Error: unknown archive URL)
- کرلی (ڈی موز پر مبنی) پر Ruby
- پروگرامنگ زبانوں کے سانچے
- آیزو معیارات
- آبجیکٹ اوریئنٹڈ پروگرامنگ زبانیں
- پروگرامنگ زبانیں مع آئیسو معیار
- خاندان سی پروگرامنگ زبان
- روبی پراگرامنگ زبان
- اسکرپٹنگ زبانیں
- سی میں پروگرام شدہ مفت سافٹ ویئر
- سی میں پروگرام شدہ مفت سافٹویئر
- مضامین مع نمونہ روبی کوڈ
- مفت کمپائلرز و انٹرپریٹرز
- ڈائنامکلی تحریر شدہ پروگرامنگ زبانیں
- کلاس بیسڈ پروگرامنگ زبانیں
- جاپانی ایجادات
- فنکشنل زبانیں