Pascal及其当前的应用

时间:2009-06-08 23:07:30

标签: pascal

我在1997年学习了Turbo Pascal,我非常喜欢它作为一种语言。一切都非常有条理,编译器确保你以正确的方式做事。我后来尝试过Delphi但从未对它感兴趣。

从那以后我使用了很多不同的编程和脚本语言(C,C ++,PHP,Python,Perl,TCL),最近我开始考虑我的旧Turbo Pascal时代。

所以,我想知道什么是实用目的Pascal今天可能有用,以及API和框架可用。有没有人在现代开发环境中使用Pascal或者它只是一种死语?

澄清我的问题:可以将Pascal用于现代应用程序开发。是否正在使用以及如何使用?

维基百科链接或快速谷歌搜索无济于事,我一直在那里。这就是我问“专家”的原因。

11 个答案:

答案 0 :(得分:28)

请注意,较旧(1.0.x)版本的Free Pascal编译器与Turbo Pascal兼容(如可以使用TP调试),这将演示基本的Pascal功能。

使用Pascal作为基本语言的问题与C大致相同,因为它们在语言级别上几乎相同。唯一的区别是编译器的数量,通用性和质量。

我强烈建议尽量使用德尔福方言(使用Delphi或Lazarus / FPC),而不是回到Turbo。

DOS-isms和16-bitisms会严重限制你,FPC或Delphi支持几乎所有没有DOS-isms和16-bititms的方言。

Turbo Pascal是DOS时代(如果不是THE)的主要编译器之一,Delphi仍然是世界上销量第二大的IDE(在视觉工作室之后),所以我认为“死语言”和“教学”语言“位有点夸张。

答案 1 :(得分:17)

从Java / C / C ++切换到FPC的满意用户的意见:

Pascal,Free Pascal(特别是FPC)对于绝对一切都很有用。应用程序编程具有良好的性能(因为它正在编译),游戏编程(例如通过OpenGL),也适用于Web编程,因为它可以编译为Java字节码。它可以在所有重要平台上运行(MS,Linux,Mac,iOS,Android等)。

FPC是高度更新的,与70年代/ 80年代的语言相比,它是一种非常现代的语言,有些人可能认为我们正在讨论这种语言。它具有OOP扩展(包括使用Objective-C类的“Objective Pascal”模式),而OOP是非强制性的,就像C ++一样。它还具有运算符重载,函数重载,动态数组,有限的垃圾收集,自动命名空间......而且,它是一种模块化语言(如Java),而C / C ++在这些年后仍然是非模块化的(用#include伪造它。 (我会对今天“现代”语言必须具备的功能进行认真的讨论感兴趣。)

我提到了便携性吗? FPC附带了一个大型运行时库,其中大部分是跨平台的,包括一个类库(主要用于Lazarus AFAIK)。 FPC非常适合编写可移植代码。

作为一种教学语言,一个主要优点是它与C / C ++的接近程度。它实际上只有最简单的语法(和不同的对象模型)不同,但它真的非常接近C ++。在C / C ++和Pascal之间移植比在ObjC和C ++之间移植更容易。但FPC的优势在于更容易学习,语法更简单。

所以我声称FPC在教学语言和严肃的应用程序编程方面都非常有用。 (我认为这是理想的,但更多的是意见。)

一直有帕斯卡尔的仇敌通常会提到70年代的原始语言而不知情的火焰。就我个人而言,我认为70年代的Pascal和20年前的问题(当便携性都是问题时)都不值得讨论。有趣的是你现在可以做什么,除了“但其他人都做......”之外的语言之间的利弊。

答案 2 :(得分:10)

  

Pascal不用于任何实用的东西,因为库支持不存在。

多少公牛。 Delphi,FreePascal和Lazarus可以使用大量的库。

  

正如McWafflestix所说,拥有简化的环境是有价值的

“简化环境”?那只是贬义。我会说它一直都很复杂。

答案 3 :(得分:8)

让我们记住Lazarus是Delphi的免费克隆:

http://www.lazarus.freepascal.org/index.php

FreePascal:

Free Pascal(又名FPK Pascal)是一个32位和64位专业Pascal编译器。它适用于不同的处理器:Intel x86,Amd64 / x86_64,PowerPC,PowerPC64,Sparc,ARM。

http://www.freepascal.org/

答案 4 :(得分:8)

目前还没有人提到TeX(以及METAfont和其他TeXware)是用Pascal编写的。

在90年代初期,我使用Pascal的自定义方言开发了商业X / Motif CAD应用程序。

答案 5 :(得分:4)

主要的是Pascal衍生物Delphi(来自Embarcadero,以前由Borland拥有)。

请参阅Wikipedia以获取更多,主要是开源的列表。

答案 6 :(得分:3)

我从2012年开始一直使用Pascal从版本1到RAD Studio XE3。这是我的第一语言。 pascal中的知识几乎就是它运行的系统中的知识。

这是一门令人惊叹的语言,奠定了我在C,嵌入式C和模拟/数字电路设计方面的基础 - 所有这些都是自学的。我后来研究PHP,JS和TCP模型毫不费力地理解它们背后的任何核心概念。

当然,Pascal现在是Object Pascal,就像Basic是Visual Basic一样。以下是Pascal在2012年的商业产品中所做的事情。 (pascal的非商业版本确实如此,如果不是更好的话)

支持几乎所有的Web技术。 支持几乎所有数据库技术。 单一代码库中的跨平台。 大型社区,组件和图书馆。

Pascal开发的一个流行应用程序是Skype。

微软,拥有自己的语言,去年买了Skype,我认为是8亿美元。

答案 7 :(得分:2)

搜索关键字'pascal',使用'编程语言'过滤结果=> 'pascal',你会发现一堆pascal的应用程序,如果不是企业级别,至少是严重的程序员级别。

有了这么多的开源和跨平台的思想库,我认为pascal还活着(除了流行的delphi方言)并且可以做实际的任务。结果暗示,pascal可以做操作系统,编译器,交叉-Platform Library,Desktop-Programming.So,看起来pascal至少可以完成很多严肃的任务,如果不是太过于实际可以让moeny立即恢复。

无论如何,我喜欢这种语言,虽然我没有用它做任何严肃的编程。

答案 8 :(得分:2)

  

Pascal可以用于现代应用程序开发。是吗?   用过怎么样?

当然可以,并且它被广泛使用。只需看一下 Lazarus CT (免费的Delphi克隆),它可以从单一来源生成现代跨平台本机应用程序。它有很多组件和许多例子。它是RAD并具有 8个主机OS / CPU层(win32 / 64,lin32 / 64,freebsd 32/64,solaris 32/64)和 22个目标OS / CPU层(i386-win32,x86_64-win64,i386-linux,x86_64-Linux,arm-wince,arm-linux,powerpc-linux,powerpc64-linux,sparc-linux,i386-freebsd,x86_64-freebsd,sparc-solaris, i386-solaris,x86_64-solaris,i386-haiku,arm-gba,arm-nds,arm-embedded,armeb-linux,arm-android,i386-android,powerpc-wii)。还有哪些其他工具可以匹配?

P.S。只需记住将其安装为admin / root。

答案 9 :(得分:0)

我认为Turbo Pascal流行的主要原因不是Pascal语言,而是IDE。据我所知,它很容易使用它,它很快,甚至调试都很有趣。

另一方面,Pascal语言已经过时,因此Borland在Pascal语言中添加了很多东西(并使他们的语言更像Module-2)。

答案 10 :(得分:-2)

帕斯卡作为一种教学语言非常有用;它说明了一些比较基本的计算机科学规则,其含义比C少。