http://en.wikipedia.org/wiki/Yukihiro_Matsumoto
Smalltalk
Like Smalltalk Ruby is a dynamic and pure object-oriented language. Both
languages are dynamic because they do not use static type information. They
are pure because all values are objects and are classified into classes that
are objects themselves. Both are also designed to be object-oriented languages
from the beginning, and they both support garbage collection.
As the design of the World Wide Web was not inherently dynamic, early hypertext consisted of hand-coded HTML that was published on web servers. Any modifications to published pages needed to be performed by the pages' author. To provide a dynamic web page that reflected user inputs, the Common Gateway Interface (CGI) standard was introduced for interfacing external applications with web servers.[1] CGI could adversely affect server load, though, since each request had to start a separate process.
In Smalltalk, control flow structures such as conditionals are done by sending messages to the objects—at least, that's how it appears. Sometimes this makes Smalltalk programs unnatural and hard to read.
In Ruby, control flow structure is far more conservative. Smalltalk is an operating system and a programming environment. The program is basically an image within the environment that is constructed through interaction via browsers. Unlike Smalltalk programs, Ruby programs are clearly separated from the language and its interpreter.
Programmers wanted tighter integration with the web server to enable high traffic web applications. The Apache HTTP Server, for example, supports modules that can extend the web server with arbitrary code executions (such as mod perl) or forward specific requests to a web server that can handle dynamic content (such as mod jk). Some web servers (such as Apache Tomcat) were specifically designed to handle dynamic content by executing code written in some languages, such as Java.
Around the same time, new languages were being developed specifically for use in the web, such as ColdFusion, PHP and Active Server Pages.
While the vast majority of languages available to programmers to use in creating dynamic web pages have libraries to help with common tasks, web applications often require specific libraries that are useful in web applications, such as creating HTML (for example, JavaServer Faces).
Eventually, mature, "full stack" frameworks appeared, that often gathered multiple libraries useful for web development into a single cohesive software stack for web developers to use. Examples of this include JavaEE (Servlets), WebObjects, OpenACS, and Ruby on Rails.
Perl
Ruby and two other great "P" languages (Perl and Python) often are classified as scripting languages. They are scripting languages, but probably not in the sense that you imagine. They are scripting languages for these reasons:
* They support a fast development cycle (edit-run-edit) by interpreters. No compilation is needed.
* They focus on quick programming by requiring you to code less. For example, you don't have to deal with static types of variables. Fewer declarations are needed in programs. Because of these attributes, these languages can be used for everyday task one-liners. Imagine developing a so-called one-liner (such as scanning the log files) in C, for example.
* A strong set of built-in libraries supports the handling of text and files.
分享到:
相关推荐
The design philosophy of Ruby encourages human-oriented design, rapid development, and test-first coding. <br/>Use Ruby where you would use Perl, C++,Smalltalk or Python, but free from special ...
Ruby 的特性与 Smalltalk、Perl 和 Python 类似。Perl、Python 和 Smalltalk 是脚本语言。Smalltalk 是一个真正的面向对象语言。Ruby,与 Smalltalk 一样,是一个完美的面向对象语言。使用 Ruby 的语法比使用 ...
Ruby的作者认为Ruby > (Smalltalk + Perl) / 2,表示Ruby是一个语法像Smalltalk一样完全面向对象、脚本执行、又有Perl强大的文字处理功能的编程语言。 Ruby以7月的诞生石ruby(红宝石)命名,是因为Perl的发音与6月...
Like Smalltalk, it is dynamically typed (as opposed to Java or C++), but unlike Smalltalk, Ruby features the same conveniences found in modern scripting languages such as Perl and Python. The ...
Ruby 简介 Ruby是一种纯粹的面向对象编程语言。...Ruby 的特性与 Smalltalk、Perl 和 Python 类似。Perl、Python 和 Smalltalk 是脚本语言。Smalltalk 是一个真正的面向对象语言。Ruby,与 Smalltalk
它的设计理念是成为“程序员的最佳朋友”,并且具有类似Smalltalk、Perl和Python的特性。Ruby的特点在于其简单易读的语法,它是一款解释型、通用型的语言,特别适合于服务器端脚本和开发互联网及内联网应用。 Ruby...
它的设计理念是结合Smalltalk的面向对象特性、Perl的文本处理能力以及Lisp的代码即数据的原则,形成一种既适合初学者又能满足高级开发者需求的语言。 在Ruby中,一切皆为对象,包括基本的数据类型如数字、字符串和...
它结合了Perl的灵活性、Smalltalk的强大功能、Python的优雅以及C的效率,使其成为一种非常实用且强大的编程语言。Ruby的设计哲学强调代码的可读性和简洁性,这使得Ruby代码易于编写和维护。此外,Ruby支持多重继承、...
它的设计理念是结合Smalltalk的面向对象特性、Perl的文本处理能力以及Python的易读性。Ruby强调简洁、优雅的语法,使得代码更加人性化,易于理解和编写。由于其动态类型,Ruby在开发过程中能够快速迭代,降低了编程...
与Smalltalk一样,它是动态类型的,但与Smalltalk不同,Ruby具有Perl和Python等现代脚本语言中的便捷功能。 Ruby语言的组合既具有纯粹的面向对象语言的强大功能,又具有脚本语言的便利性,使其成为智能、前瞻性的...
Ruby是一种由日本人松本行弘创造的编程语言,它的设计目标是创造一种比Perl更强大、比Python更面向对象的语言。Ruby的语法受到Perl和Smalltalk的影响,旨在提供一种更接近自然语言的编程体验,减少程序员在编写代码...
它在设计时融合了Perl、Smalltalk、Eiffel、Ada以及Lisp等语言的最佳特性,既支持过程化编程也支持函数式编程。 #### 二、Ruby编程语言特点 1. **简洁明了的语法**:Ruby的设计理念之一是使代码易于阅读和编写,这...
Ruby结合了Perl、Smalltalk、Eiffel、Ada以及Lisp等语言的特性,形成了自己独特的风格。它旨在创建一种新语言,这种语言不仅功能强大而且易于使用,能够与命令式语言相媲美。 #### 2. Ruby的开发者 Ruby是由日本...
Ruby由日本人松本行弘在1995年创建,它深受Perl、Smalltalk、Eiffel、Lisp和Python等语言的影响,融合了多种编程思想。 Ruby的核心特性包括: 1. 面向对象:Ruby是一种纯面向对象的语言,所有的数据类型都是对象,...
相比PHP和Perl,Ruby能够提供更为一致的代码结构,而与Lisp、Python和Smalltalk相比,Ruby结合了Rails框架,提供了显著的生产力提升和快速增长的社区支持。 2. **Rails的重要性**:Rails不仅是一个Web框架,它是...
Ruby在许多方面都与Perl、Python和Smalltalk有相似之处,但它的语法更加直观,适合快速开发。Ruby的核心特性包括动态类型、垃圾回收机制、块和闭包、模块和类的多重继承。 《Ruby入门书籍》可能是一本详细介绍Ruby...
Ruby是一种面向对象、动态类型的编程语言,由Yukihiro Matsumoto在1995年创建,它结合了Smalltalk、Perl、Python、Lisp和Eiffel等语言的特性。Ruby强调简单、清晰的语法,使代码易于阅读和编写。Ruby 2.5.1是该语言...
在编程语言的发展简史中,Ruby是由日本的松本行弘(Yukihiro Matsumoto)于1993年设计并创建的,他试图融合Perl的实用性、Smalltalk的面向对象特性和Python的易读性。Ruby的设计理念强调了程序员的生产力和代码的...
Ruby的设计灵感来源于多种语言,包括Perl、Smalltalk、Eiffel、Ada和Lisp,融合了它们的优点,形成了独特的语法和哲学。 #### 2.2 Ruby的特性 Ruby以其简洁、清晰的语法著称,强调代码的可读性和开发者效率。它...
由Yukihiro Matsumoto(马特松,也被称作Matz)在1995年创建,Ruby受到了Perl、Smalltalk、Eiffel、Lisp和Python等多种语言的影响。其语法简洁明了,使得程序员能够更加专注于解决问题,而不是语言本身。 Ruby on ...