首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我喜欢C语言,却又非常讨厌C+?一位国外程序员的回答

我最喜欢的语言是C和汇编语言。因为没有限制,所以它是一个稳定的平台,没有多余的装饰,它深深地扎根在金属上,您可以用它来做事情,这不仅在理论上不可能用其他任何东西,而且实际上是不可能的,而且还有更多。

两种语言似乎都没有限制,并且可以幸免于编程时尚和成文法的各种起伏,就像它们从未发生过一样。它们实现了您可以在其他地方获得的所有功能,而不仅仅是通过语言装饰,而是通过开放原则。您可以包括文件并在其他任何地方使用它们。它们是如此的灵活以至于可以满足您的任何需求,它们可以是微小的,快速的,灵活的或身临其境的,面向对象的,功能性的,逻辑的或数学的或形式化的东西。您需要他们做的任何事情。它们是裸机。

由于它们不会随时间变化很大,因此它们是一个稳定的基础,您只需要跟踪硬件和操作系统原理的发展即可。多个处理器?JIT编译?从语言内部编写脚本?绑定到其他东西并流水线吗?与GPU,驱动程序实现,神经网络或语言问题等并行处理器进行通信,构建不需要Apache且不继承其限制来检测对它的攻击的网站,在内存中实现数据库结构,而该结构仅限于数据流受处理器架构和RAM速度影响?

除了这两个收藏夹之外,它们还提供了我想要的所有功能,以及我所无法获得的所有其他功能,还有其他一些功能值得一提。LUA,Python,Perl和POSIX随附的所有出色工具,包括Awk,Gc,Bc,Sc,Grep,以及Zsh和Maxima以及我为C获得的许多库。

我不喜欢产生难以与C或任何其他语言共享的代码的语言。我喜欢C和Assembly,因为我可以在任何地方使用它,从通过x86_64的OpenCL或CUDA的GPU,到MOS6502或Arduino上的Atmel处理器,都可以使用它。甚至Raspberry Pi也通过发布Learn C Essentials慢慢发现C的功能-The MagPi Magazine。

我在1985/86年学习了C,但今天它仍然很强大。我仍然可以用其他语言无法做到的事情来做。再加上组装,这是我们整个基础架构的工作骨干,其余的一切……都很好。但并不重要。对于我来说,只有两种语言比BASIC和Assembly年龄大。

您可以生活在没有Prolog,Lisp或Python的世界中。但是,如果所有C程序员突然死亡,而编译器消失了,世界将陷入停顿。这是标记,是编程语言的本质。因为很简单。在我看来,这种简单性是接触人类的最佳途径。这不是“看起来我们可以在这种新语言中做阶乘多短!这是递归的!” 啊啊没事 这对人类并不友好,如果我想要短代码,我会在语言游戏-“ P”中编程。

对人类而言,友好的语言就是一种,它是如此简单,以至于您只需要一天就可以学习其中的大部分原理。一种人类友好的语言是一种,您可以离开15年,经过几天的刷新后又回到了马鞍上。友好的语言不会取悦语言教授而不是语法恋物癖的人。友好的语言可以解决所有问题,您只需看一行,就可以了解它的作用。无需了解其余代码,就像所有OO一样。

最后,我将矛头指向一种古老的语言,该语言取代了Fortran的想法。一种被嘲笑的语言,因为在旧的8位计算机上,它是如此原始和有限。但是,今天的速度仍然比Python快30倍,同时还提供了一个简单的界面,一个用于所有系统功能,图形,网络以及其他所有功能的API。所有绑定语言的爷爷——BASIC。

如果您对此有所笑,请看一下性能。就是现代BASIC的作用所在以及它可以做什么。这是与英语口语非常接近的语言。没有其他语言可以实现的事情。因为BASIC已经在那里。并且做得更好。亲吻这位老教父的戒指,因为他的力量随着年龄的增长而变得不可思议。而且,年轻的Python仍然需要向他学习很多东西。

顺便说一句,对于C++,只需阅读Linus Torvalds对C ++的评价即可:C ++上的Linus Torvalds这或多或少是我在96年离开C ++的原因-不是因为Torvalds所说的,而是因为C ++搞砸了我的一个大型项目。而且我愚蠢地去了Java,使它变得更糟。因为那是OO编程的问题。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201013A08JMT00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券