作者 主题:太多的编程语言? (Read 18239 times)

0会员和7位客人正在查看此主题。

 在线的 伯尼

  • 超级贡献者
  • ***
  • 帖子:3442
  • 国家:  SI.
Re:太多的编程语言?
« 回复#75开: 2019年9月25日,07:24:23 PM»
你r view of HDLs is limited.

看看VHDL;有更多的信号类型而不是它,您可以创建自己的特定于应用程序的信号类型。

引用
事实上,他们非常清楚,HDL是边界线无用的东西,这些东西不会对HDL代码的开发环境几乎所有都使用TCL脚本,而不是Verilog或VHDL。
完全错误和无关紧要 - 只需代替HDL的C / C ++,并为TCL进行BASH,以及您'll看看是多么愚蠢。

嗯,你可以在语言中弥补新的概念,而VHDL则旨在鼓励这一点。但是HDL语言从一开始给你的基本事情是面向漂亮的电路。

我的观点是,HDL语言是为了在数字电路设计中提供利基应用,并且对在计算机上运行的通用软件具有真正的所有内容。 (直到Intel开始在PC中包括用户可编程Altera FPGA协处理器)

您能指出一些在一些上下文中使用HDL的一些例子,即在无点涉及数字电路?是的,您可以在理论上写一个在Verilog中的整个操作系统,它可以在HDL模拟器中运行,因为它是巡回赛完成,但我的意思是使用HDL语言与其他更典型的编程或脚本语言实际上有意义的示例。


引用
为此,它只是更有意义,使用围绕经典连续执行想法的语言。但是不要'T Think所有C代码按顺序齐全执行。如果您看看大型DSP,他们有多个ALU和MAC,同时为它们提供正常的C编译器,但特定编译器足够智能,以识别什么操作'T彼此相互依赖,在DSP核心上并行执行5或10件事,然后在代码需要时加入常规顺序执行。
现在,您将在特定架构上的特定编译器实现语言定义和原理。

我刚刚试图表明并行架构不一定需要设计用于并行的语言,反之亦然。有一个编译器可以将C代码转换为FPGA门,HDL模拟器基本上是在CPU上运行HDL代码的解释器。只是某些语言更适合描述某些事情。

引用
哦,至于xcore它的未来派的多体师系统不太光荣,因为它乍一看了。我一直是一名主持人在那里有很长一段时间官方论坛,几乎所有看到它的XC软件都使用它的芯片,如它的一个8个核心CPU,每个核心运行自己的C代码。它更加表现为将执行执行到8个线程,作为Main()的第一件事并停止创建更多线程。 The Acreentocessor Commucation Bus令人印象深刻,但通常该软件将包括一些常规的C代码,它使用指针在线程工作之间进行共享内存(因为XC禁止它,但这会避免它),因为这再次提供更快的性能。我喜欢Xc evergaingally xc延伸到原生多线程,但它没有'在实践中锻炼身体。和所有使用它作为荣耀的8核心CPU和C共享内存指针Hack的软件不仅仅是由用户编写的代码,它是如何编写XMOS提供的大量示例代码。

你 appear to contradict yourself in there! Apart from that, xC is irrelevant to HDLs; don't confuse them.

它长期以来一直是你可以用任何语言编写Fortran的真实性。它不应该'如果传统持续存在,这是一个惊喜 :(

我希望XC不是'故事结束,我'm积极寻找改进。但这是我见过的故事的最佳开始。

它不是在这里发生故障的XC语言。

它更像是它被编译的硬件在执行语言时不太伟大,因此语言的用户避免了创新的功能,并最终以常规的Oldschool C所做的操作方式相同,由于对这种特定的硬件导致更好的性能。最后,它正在运行的事情几乎是一个常规的CPU,恰好发生了"uber hyperthreading"在单个核心上执行8个线程的能力,并具有连接到其他CPU的基于幻象信息箱的总线。

当我第一次发现XMOS处理器时,我真的退出了它,但在与他们合作并为他们编写相当多的代码后,看到出来的新筹码......我最终失去了希望。它最终只是另一种内置的MCU'hardware RTOS'但是在外围设备的方式上很少,结束于其他MCU的应用中也可以使用。到目前为止,它最常用的应用程序是USB音频,因为XMOS是罕见的少数人之一,提供了良好的工作驱动程序和用于执行异步USB音频的代码。

如果你不,请继续尝试其中的失败者't believe me.
« 最后编辑:2019年9月25日,07:26:50 PM由Berni »
 

 离线 遗产

  • 超级贡献者
  • ***
  • !
  • 帖子:4415
  • 国家:  CH.
Re:太多的编程语言?
« 回复#76上: 2019年9月25日,07:58:20 PM»
@TGGZZ
你有没有建模过"Stood"?
我的好奇心  :D
 

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#77开: 2019年9月25日,08:44:00 PM»
@TGGZZ
你有没有建模过"Stood"?
我的好奇心  :D

没有;从来没有听说过它!
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 

 离线 rstofer.

  • 超级贡献者
  • ***
  • 帖子:8069
  • 国家:  我们
Re:太多的编程语言?
« 回复#78开启: 2019年9月25日,09:00:46 PM»
Matlab是商业和专有的软件。 一个自由和开源的替代品是八度音。 大多数matlab脚本也可以在octave中运行。

最近,使用Python而不是Matlab或Octave存在趋势。

另一个趋势,但概念有点不同,是jupyter笔记本 //jupyter.org/

这是一个脚本,我写作用于使用euler绘制微分方程'S方法,它在八度和Matlab中产生相同的结果。 在大学,我的孙子正在参加,他们所做的一切都围绕着Matlab。 DE课程可以花更多的时间在应用程序上,更少的时间担心手工解决/绘图DES。 我在48年前大约需要大约48年前的课程有多巨大的改进。 他的课程实际上很有趣!


代码: [选择]
steps=100;                              % number of steps per unit time
dt=1/steps;
t=0:dt:20;                              % t will have 2001 values
n=length(t);
y=zeros(1,n);                           % fill vectors with 0
dy=zeros(1,n);
y(1)=0;                                 % initial value of y(0)
                                        % but index starts at 1
dy(1)=-2*y(1)+2*(1+sin(2*t(1)));        % expression for y'(0) index = 1

为了 j=2:n                               % step through 2000 values
    y(j)=y(j-1)+dy(j-1)*dt;             % compute value of current y       
    dy(j)=-2*y(j)+2*(1+sin(2*t(j)));    % compute value of y'
end

plot(t,y,t,2*(1+sin(2*t)))
xlabel('t')
ylabel('y')
legend('y(t)','Forcing Function')
title(['Euler''s Method - ' num2str(steps) ' steps per unit time (t)'])[/font]
shg                                     % pull graph to top
[/font]


这是考虑的'programming'? 我怀疑应该......
« 上次编辑:2019年9月25日,09:12:17 PM由Rstofer »
 

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#79: 2019年9月25日,09:09:34 PM»
你r view of HDLs is limited.

看看VHDL;有更多的信号类型而不是它,您可以创建自己的特定于应用程序的信号类型。

引用
事实上,他们非常清楚,HDL是边界线无用的东西,这些东西不会对HDL代码的开发环境几乎所有都使用TCL脚本,而不是Verilog或VHDL。
完全错误和无关紧要 - 只需代替HDL的C / C ++,并为TCL进行BASH,以及您'll看看是多么愚蠢。

嗯,你可以在语言中弥补新的概念,而VHDL则旨在鼓励这一点。但是HDL语言从一开始给你的基本事情是面向漂亮的电路。

当然,他们这么合理地做得很好,但他们是 远的 从有限到这样做。

引用
我的观点是,HDL语言是为了在数字电路设计中提供利基应用,并且对在计算机上运行的通用软件具有真正的所有内容。 (直到Intel开始在PC中包括用户可编程Altera FPGA协处理器)

耸肩。在他们的正确思想中没有人会想到使用VHDL作为Python替换,也不是反之亦然。

但that'■推荐OP也会学习HDL的关键特征。然后他们会知道哪种工具与每种情况相关。


引用
您能指出一些在一些上下文中使用HDL的一些例子,即在无点涉及数字电路?是的,您可以在理论上写一个在Verilog中的整个操作系统,它可以在HDL模拟器中运行,因为它是巡回赛完成,但我的意思是使用HDL语言与其他更典型的编程或脚本语言实际上有意义的示例。

大学教师'问愚蠢的问题。在HDL中编写整个操作系统是非敏感的,如提示在Java中实现硬件逻辑。

OP对嵌入式电子系统感兴趣。那些通常涉及硬件和软件之间的拆分功能。

在实施此类系统时,有时它有利于模型 系统 ,即硬件和软件。此时,使用HDL来模拟效力。


引用
引用
为此,它只是更有意义,使用围绕经典连续执行想法的语言。但是不要'T Think所有C代码按顺序齐全执行。如果您看看大型DSP,他们有多个ALU和MAC,同时为它们提供正常的C编译器,但特定编译器足够智能,以识别什么操作'T彼此相互依赖,在DSP核心上并行执行5或10件事,然后在代码需要时加入常规顺序执行。
现在,您将在特定架构上的特定编译器实现语言定义和原理。

我刚刚试图表明并行架构不一定需要设计用于并行的语言,反之亦然。有一个编译器可以将C代码转换为FPGA门,HDL模拟器基本上是在CPU上运行HDL代码的解释器。只是某些语言更适合描述某些事情。

我反复做出这一点。

但that'■推荐OP也会学习HDL的关键特征。然后他们会知道哪种工具与每种情况相关。

引用
引用
哦,至于xcore它的未来派的多体师系统不太光荣,因为它乍一看了。我一直是一名主持人在那里有很长一段时间官方论坛,几乎所有看到它的XC软件都使用它的芯片,如它的一个8个核心CPU,每个核心运行自己的C代码。它更加表现为将执行执行到8个线程,作为Main()的第一件事并停止创建更多线程。 The Acreentocessor Commucation Bus令人印象深刻,但通常该软件将包括一些常规的C代码,它使用指针在线程工作之间进行共享内存(因为XC禁止它,但这会避免它),因为这再次提供更快的性能。我喜欢Xc evergaingally xc延伸到原生多线程,但它没有'在实践中锻炼身体。和所有使用它作为荣耀的8核心CPU和C共享内存指针Hack的软件不仅仅是由用户编写的代码,它是如何编写XMOS提供的大量示例代码。

你 appear to contradict yourself in there! Apart from that, xC is irrelevant to HDLs; don't confuse them.

它长期以来一直是你可以用任何语言编写Fortran的真实性。它不应该'如果传统持续存在,这是一个惊喜 :(

我希望XC不是'故事结束,我'm积极寻找改进。但这是我见过的故事的最佳开始。

它不是在这里发生故障的XC语言。

它更像是它被编制的硬件在执行语言特殊多任务功能时不太好,

请解释这个断言。

引用
结果,该语言的用户避免了创新功能,并最终以常规Oldschool C所做的操作方式相同,以来,因为在这种特定的硬件上导致更好的性能。最后,它正在运行的事情几乎是一个常规的CPU,恰好发生了"uber hyperthreading"在单个核心上执行8个线程的能力,并具有连接到其他CPU的基于幻象信息箱的总线。

正确,但是什么's your point?

如果你的观点是实现有局限性,那真的是对任何人的新闻吗?

引用
当我第一次发现XMOS处理器时,我真的退出了它,但在与他们合作并为他们编写相当多的代码后,看到出来的新筹码......我最终失去了希望。它最终只是另一种内置的MCU'hardware RTOS'但是在外围设备的方式上很少,结束于其他MCU的应用中也可以使用。到目前为止,它最常用的应用程序是USB音频,因为XMOS是罕见的少数人之一,提供了良好的工作驱动程序和用于执行异步USB音频的代码。

听起来好像你真的不一样't了解硬件和软件之间的边界是非常灰色和可移动的,特别是在上下文中 系统 建筑与设计。鉴于这一点,它就不了'如果你继续以旧的熟悉方式思考,请给我一个惊喜。

一代新一代将来自于思考;他们赢了'由于现有的增强技术(基于缩放半导体工艺)已经用完了蒸汽而具有任何选择。

基于CSP的概念提供 a 前进的方式。我想找到别人,但他们没有't appeared yet.

引用
如果你不,请继续尝试其中的失败者't believe me.

我已经做好了。

我发现它究竟做了它的设计,没有任何奇怪"gotchas".

我发现非常容易使用,特别是与其他MCU相比。
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 

 离线 rstofer.

  • 超级贡献者
  • ***
  • 帖子:8069
  • 国家:  我们
Re:太多的编程语言?
« 回复#80开启: 2019年9月25日,09:57:36 PM»
谈到学习编程语言时,我'M常被不堪重负。目前流行的包括但不限于c,c ++,c#,java,python等。你命名它,你必须学习他们!

我认为应该掌握一种特定的编程语言,而不是成为所有人的专家。

作为一名电子工程师,我应该学到哪一个!?


以最不广大的方式回答这个问题,C将是我对工作EE的推荐,至少作为第一语言。 如上所述,有各种语言的特定应用: C ++为业务逻辑,Web设计的Java,Fortran for Number Crunching和CEMBedded Systems的C. Python试图击中所有的基础。

但'programming'作为艺术有些独立的语言。 它与你的关系更密切'think' about the problem.  Niklaus Wirth's book '数据结构+算法=程序'没有误导,帕斯卡是我最喜欢的语言。 在我尝试将手指放在键盘之前,我发现自己阻止了课程并编写了一种伪代码。 在担心编写编写代码之前,我想直接拥有逻辑。

如果你必须成为有能力的话,不要感到惊讶,这是几种语言,这更重要的是你得到的每一份工作都会改变。 但我建议从C.
 

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#81开启: 2019年9月25日,晚上10:02:29»
谈到学习编程语言时,我'M常被不堪重负。目前流行的包括但不限于c,c ++,c#,java,python等。你命名它,你必须学习他们!

我认为应该掌握一种特定的编程语言,而不是成为所有人的专家。

作为一名电子工程师,我应该学到哪一个!?


以最不广大的方式回答这个问题,C将是我对工作EE的推荐,至少作为第一语言。 如上所述,有各种语言的特定应用: C ++为业务逻辑,Web设计的Java,Fortran for Number Crunching和CEMBedded Systems的C. Python试图击中所有的基础。

但'programming'作为艺术有些独立的语言。 它与你的关系更密切'think' about the problem.  Niklaus Wirth's book '数据结构+算法=程序'没有误导,帕斯卡是我最喜欢的语言。 在我尝试将手指放在键盘之前,我发现自己阻止了课程并编写了一种伪代码。 在担心编写编写代码之前,我想直接拥有逻辑。

如果你必须成为有能力的话,不要感到惊讶,这是几种语言,这更重要的是你得到的每一份工作都会改变。 但我建议从C.

那'S夜,即使我可能会狡辩有一些细节。

I'D在一个方面进一步进一步:如果您只需要一种职业语言,那么您将有一个无聊的重复性职业。你知道事物之王:不是"10 years experience" but "1年经验重复10次" :)
« 上次编辑:2019年9月25日,TGZZZ下午10:04:02 »
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 

 离线 rstofer.

  • 超级贡献者
  • ***
  • 帖子:8069
  • 国家:  我们
Re:太多的编程语言?
« 回复#82开启: 2019年9月25日,晚上10:12:07»
我认为Octave缺乏Simulink,这是一个非常大的交易。

Matlab个人版仅为149美元。

Scilab适合你。

它包括XCOS作为Simulink的替代品,所以我将安装它并播放一下。 在MATLAB Simulink中,我可以将集成商和其他设备进行庞大,并将模拟计算机解决方案模拟为某些方程式。 我喜欢模拟计算!  That doesn't mean I'任何擅长的,缩放时间和幅度仍然不太了解,但我'm working on it.

I'只要我的孙子在大学以自大学为所有的数学课程使用它,就会与Matlab一起挂断。 事实上,只有Matlab就有一个第一个学期强制性课程。  It was kind of fun!

eta: 我安装了scilab,它很好地工作得很好。 脚本语言有点不同,作者承认脚本并不像Matlab和Octave之间的差别,但它不是't a really big deal.  I haven't仿真。 我印刷了新人文件和我'我明天看着它。
« 上次编辑:2019年9月25日,2019年9月25日,下午11:35:43由Rstofer »
 

 离线 Kjelt.

  • 超级贡献者
  • ***
  • 帖子:6043
  • 国家:  NL.
Re:太多的编程语言?
« 回复#83开启: 2019年9月25日,晚上10:15:21»
I'D在一个方面进一步进一步:如果您只需要一种职业语言,那么您将有一个无聊的重复性职业。
我不同意,它不是一种语言,或者使得一份无聊的职业的组件或工具它坚持在一份工作中,一家公司,一个使其重复,可能无聊的一个域。我一直是五个不同域名的六个不同公司的嵌入式C程序员,除了语言之外,这些工作都没有太多的共同之处,虽然在许多工作中更多的其他技能,语言和多学科技能,如机械,机械,电子和软件等其他技能,语言和多学科技能在工作中混合了。
 

 离线 rstofer.

  • 超级贡献者
  • ***
  • 帖子:8069
  • 国家:  我们
Re:太多的编程语言?
« 回复#84开启: 2019年9月25日,晚上10:19:05»
谈到学习编程语言时,我'M常被不堪重负。目前流行的包括但不限于c,c ++,c#,java,python等。你命名它,你必须学习他们!

我认为应该掌握一种特定的编程语言,而不是成为所有人的专家。

作为一名电子工程师,我应该学到哪一个!?


以最不广大的方式回答这个问题,C将是我对工作EE的推荐,至少作为第一语言。 如上所述,有各种语言的特定应用: C ++为业务逻辑,Web设计的Java,Fortran for Number Crunching和CEMBedded Systems的C. Python试图击中所有的基础。

但'programming'作为艺术有些独立的语言。 它与你的关系更密切'think' about the problem.  Niklaus Wirth's book '数据结构+算法=程序'没有误导,帕斯卡是我最喜欢的语言。 在我尝试将手指放在键盘之前,我发现自己阻止了课程并编写了一种伪代码。 在担心编写编写代码之前,我想直接拥有逻辑。

如果你必须成为有能力的话,不要感到惊讶,这是几种语言,这更重要的是你得到的每一份工作都会改变。 但我建议从C.

那'S夜,即使我可能会狡辩有一些细节。

I'D在一个方面进一步进一步:如果您只需要一种职业语言,那么您将有一个无聊的重复性职业。你知道事物之王:不是"10 years experience" but "1年经验重复10次" :)

哎呀,我也狡辩!  Here'我真正思考的是什么: 这些是管理工程中的更多资金,而不是在进行工程中。 您可能需要一些熟悉的编程,但如果您'聪明,你买的编程,你不't DO programming. 事实上,你想做的最后一件事就是成为公司's best programmer!  You'永远不会得到这种方式!

你毕业的那一天,你注册了MBA计划。  If you'重新成立,继续前进,让你的麦佩,但仍然用MBA(它)'在EE学校的所有数学之后,LL很容易)。 永远不要工作一天作为工程师,只需购买它!
 

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#85开启: 2019年9月25日,晚上11:39:55»
哎呀,我也狡辩!  Here'我真正思考的是什么: 这些是管理工程中的更多资金,而不是在进行工程中。 您可能需要一些熟悉的编程,但如果您'聪明,你买的编程,你不't DO programming. 事实上,你想做的最后一件事就是成为公司's best programmer!  You'永远不会得到这种方式!

你毕业的那一天,你注册了MBA计划。  If you'重新成立,继续前进,让你的麦佩,但仍然用MBA(它)'在EE学校的所有数学之后,LL很容易)。 永远不要工作一天作为工程师,只需购买它!

你在波音工作吗? :)

If "programmer"意味着某些实施别人的人'S设计,我同意听起来很可怕。一世've never done that.

我有书面合同并成为一个项目经理,但决定不超过必要的经验 :)

OTOH很多时候我已经从最初的概念中消失了,通过硬件和软件架构和设计(使用模拟/ FPGA / Digital / Digital / Hard&通过实施,测试和验收试验,软实时/网络机/高可用性电信/等。非常有趣。 (N.B.除工程师之外,还有很少有专门的项目经理本身)
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 

 离线 Emece67.

  • 频繁的贡献者
  • **
  • 帖子:326
  • 国家:  es.
Re:太多的编程语言?
« 回复#86开启: 2019年9月25日,晚上11:55:07»
我认为应该掌握一种特定的编程语言,而不是成为所有人的专家。

作为一名电子工程师,我应该学到哪一个!?

我认为掌握单一语言根本不是明智的。没有母体你选择什么语言,它会在一些应用中很好地适应,但在别人身上不可误用。 ee很宽,以免您每天使用许多工具。

关于你的问题,我没有关于你必须学习的语言的答案(这取决于你的特定职业),但我有一个关于你应该先学到什么,它是C.它可能是笨拙,原始的,低水平和所有你喜欢的形容词,但它直接适用于许多问题,是嵌入式系统的主权,当你继续学习别人时,所有这些都将增加一个补充"wow effect"当发现新功能/范式/能力时,这种其他语言添加到您在C中所做的操作。

关于HDLS,我已经使用了(并且仍然使用它们)很多,虽然我必须承认,事实上,它们不仅是HDLS,还要编程语言(嘿,VHDL有指针!!),我认为他们的目的不是这样使用的,但作为HDL。也许你还需要学习任何一个,但我怀疑你'LL需要它们作为一些编程语言的替代语言,缺乏表达并行性的方法。我认为其他语言/工具(说OpenCl / Webcl)是/将更好。可以理解由各种互连的SW FSM组成的SW FSM和系统,而无需先前的HW FSMS知识,即使在普通的香草C中写道,也可以'在这里看到HDLS在裸露的编程语言中的任何好处。而且,如果您坚持HDL,为什么不为系统?

关于我们使用更多的语言的民意调查怎么样?甚至关于我们从未使用过的语言?经过近40年的职业生涯,我尚未写一行:
  • Java(讨厌它)
  • Fortran(使用Matlab,也许我还没有发现需要Fortran的正确问题)
  • R
  • 向前
  • Ada(可悲的是,真的很好奇)

问候。

 
« 上次编辑:2019年9月25日,PM由Emece67下午11:59:20 »
信息必须流。
 

 离线 rstofer.

  • 超级贡献者
  • ***
  • 帖子:8069
  • 国家:  我们
Re:太多的编程语言?
« 回复#87开启: 2019年9月26日,上午12:34:28»
If "programmer"意味着某些实施别人的人'S设计,我同意听起来很可怕。一世've never done that.

我想我'LL与程序员的劳动统计局定义:

//www.bls.gov/ooh/computer-and-information-technology/computer-programmers.htm

与软件开发人员相反

//www.bls.gov/ooh/computer-and-information-technology/software-developers.htm

与计算机硬件工程师相反

//www.bls.gov/ooh/architecture-and-engineering/computer-hardware-engineers.htm

在电气工程师类中,BLS将电力工程与选区工程混合起来

//www.bls.gov/ooh/architecture-and-engineering/electrical-and-electronics-engineers.htm

关于BLS网站的好处是您可以通过区域深入了解,以了解在西雅图(129K)的代码纬纱是多少's the median). 向下滚动大约2/3页面:

//www.bls.gov/oes/current/oes151131.htm#st

« 上次编辑:2019年9月26日,am rstofer 12:36:20 »
 

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#88开启: 2019年9月26日,12:40:58 AM»
关于HDLS,我已经使用了(并且仍然使用它们)很多,虽然我必须承认,事实上,它们不仅是HDLS,还要编程语言(嘿,VHDL有指针!!),我认为他们的目的不是这样使用的,但作为HDL。也许你还需要学习任何一个,但我怀疑你'LL需要它们作为一些编程语言的替代语言,缺乏表达并行性的方法。

使用HDL作为传统通用语言的替代将是PEVOSTER。

即使你不'T使用HDL用于硬件设计,正常的HDL设计模式真的强调并行操作 - 您只需't忽略它(不太佩戴!)。

熟悉这样的"thinking parallel"将在未来几十年中持续更加重要的软件方面。

引用
我认为其他语言/工具(说OpenCl / Webcl)是/将更好。

大多数传统语言都具有作为螺栓开启的并行执行。一些(和我'看着你,C!)不能'甚至在过去5年之前表达螺纹!

引用
可以理解由各种互连的SW FSM组成的SW FSM和系统,而无需先前的HW FSMS知识,即使在普通的香草C中写道,也可以'在这里看到HDLS在裸露的编程语言中的任何好处。而且,如果您坚持HDL,为什么不为系统?

关键点是了解如何以及何时使用一个或多个FSM。你如何实现它们是一个 完全地 不同的问题。实际上,您经常在硬件和其余的软件中实现一部分单个FSM。

在通用语言中,有几种有用的设计模式,例如有用的设计模式。 2D事件/状态跳转表和状态==类。
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#89开启: 2019年9月26日,上午12:42:59»
If "programmer"意味着某些实施别人的人'S设计,我同意听起来很可怕。一世've never done that.

我想我'LL与程序员的劳动统计局定义:

他们是争议和随着时间的推移而变化。

我小的时候"computer" was a 职称 .
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 

 离线 bjdhjy888

  • 常规贡献者
  • *
  • 帖子:62
  • 国家:  加利福尼亚州
Re:太多的编程语言?
« 回复#90开启: 2019年9月26日,01:08:45»
向前?   :horse:

妈妈:儿子,什么'在你的房间里有这些巨大的C / C ++书籍吗?  :o
我:妈妈,我'm learning Forth.  8)
 

 离线 Westfw.

  • 超级贡献者
  • ***
  • 帖子:3391
  • 国家:  我们
Re:太多的编程语言?
« 回复#91开启: 2019年9月26日,02:57:31 AM»
引用
这些是管理工程中的更多资金,而不是在进行工程中。
大概。 op谈论赚很多钱吗?  I'一位经理;它不是'作为作为工程师的乐趣。 虽然,我雇了一些好人!
如果你进入管理,请尽量成为一个好经理。
前同事's recent FB post:
引用
上周,Facebook员工秦辰从梅洛公园的Facebook大楼的4楼跳起来,留下了妻子和年轻的女儿。 Facebook,谷歌和其他硅谷公司都充满了可怕的,缺乏经验的经理和无能的,漠不关心的人力资源官员毁了人们's lives. It'硅谷的时间来清理他们的行为。下面是一年前的血压截图,同时在Facebook和今天在Facebook工作时,离开Facebook后一个月。
[也可以看看]:

引用
我认为应该掌握一种特定的编程语言,而不是成为所有人的专家。
可怕的态度。  I wouldn'聘请了那些来说的任何人。 我确实雇了那些没有人的人'编程很多"target language",因为了解所解决的问题比是编程语言的专家更重要......

 

 离线 bjdhjy888

  • 常规贡献者
  • *
  • 帖子:62
  • 国家:  加利福尼亚州
Re:太多的编程语言?
« 回复#92开启: 2019年9月26日,03:16:32 AM»
引用
引用
我认为应该掌握一种特定的编程语言,而不是成为所有人的专家。
可怕的态度。  I wouldn'聘请了那些来说的任何人。 我确实雇了那些没有人的人'编程很多"target language",因为了解所解决的问题比是编程语言的专家更重要......
哟dah boss!
 :-*
 

 离线 布鲁尔特

  • 超级贡献者
  • ***
  • 帖子:2019
  • 国家:  NZ.
  • 以前是Sifive,三星r&D
Re:太多的编程语言?
« 回复#93开启: 2019年9月26日,05:05:08»
引用
上周,Facebook员工秦辰从梅洛公园的Facebook大楼的4楼跳起来,留下了妻子和年轻的女儿。 Facebook,谷歌和其他硅谷公司都充满了可怕的,缺乏经验的经理和无能的,漠不关心的人力资源官员毁了人们's lives. It'硅谷的时间来清理他们的行为。下面是一年前的血压截图,同时在Facebook和今天在Facebook工作时,离开Facebook后一个月。

是的。

今年我刚刚搬到硅谷(和美国)才能为一个创业公司工作。它 'S迅速增长,不可避免地是一些事情并不是理想的理想,而且客户不断想要在明天*的路线图上的东西,以及要求更多的文档,更多的示例代码等。

这当然比没有人注意到或关心你所做的事情要好得多。

幸运的是,有很多客户足够高兴我们*现在的设计 - 胜利和收入是滚雪球。

有压力来完成完成的事情,但是,与您提到的一些公司(以及苹果和亚马逊,声誉)不同,我不'看看人们对人们疯狂的时间来焚烧自己的任何期望。我不'T知道这是否与我们的40多岁,50岁,甚至60岁的经验丰富的退伍军人比例有关,甚至60多人都有什么关系。'拍摄新毕业生将采取的垃圾。


至于这个线程的原始问题,哪种语言学习,我建议了两个:

1)要了解使用库和算法的简单编程,您需要一种语言(尤其是球拍系统)或其他类似的语言,如LISP或Python或Ruby。对于数学上越严谨的数学,也许可以去寻找Haskell或Ocaml。 Rust,Go和D也可以符合这项法案。

2)了解计算机实际工作的如何,最好了解它们的局限性以及如何采取最大限度的优势,您应该同时和逐步学习C,这是一个合理的Sane汇编语言您拥有C编译器(RISC-V是理想的, MIPS,PowerPC或手臂变体之一是下一个最好的东西,AVR也不错),CPU程序员'S模型(寄存器等)。如何在二进制中编码指令。

在C中写一些代码。编译它并阅读汇编语言。 C和汇编语言的单一步骤。编写一些汇编语言功能,并从C.呼叫C语言函数呼叫。

特别注意指针,阵列,全局与堆栈vs堆。你'重新永远不会成为任何语言的好程序员,没有良好的精神模型如何工作。和你'在不看汇编语言的情况下,非常不太可能提出正确的心理模型。

对于真正高级了解算法和数据结构以及它们如何执行您需要了解缓存,TLB,分支预测和类似的东西。
 
以下用户感谢此帖子: bjdhjy888

 在线的 伯尼

  • 超级贡献者
  • ***
  • 帖子:3442
  • 国家:  SI.
Re:太多的编程语言?
« 回复#94开启: 2019年9月26日,05:58:05 AM»
引用
我的观点是,HDL语言是为了在数字电路设计中提供利基应用,并且对在计算机上运行的通用软件具有真正的所有内容。 (直到Intel开始在PC中包括用户可编程Altera FPGA协处理器)
耸肩。在他们的正确思想中没有人会想到使用VHDL作为Python替换,也不是反之亦然。

但that'■推荐OP也会学习HDL的关键特征。然后他们会知道哪种工具与每种情况相关。
引用
您能指出一些在一些上下文中使用HDL的一些例子,即在无点涉及数字电路?是的,您可以在理论上写一个在Verilog中的整个操作系统,它可以在HDL模拟器中运行,因为它是巡回赛完成,但我的意思是使用HDL语言与其他更典型的编程或脚本语言实际上有意义的示例。

大学教师'问愚蠢的问题。在HDL中编写整个操作系统是非敏感的,如提示在Java中实现硬件逻辑。

OP对嵌入式电子系统感兴趣。那些通常涉及硬件和软件之间的拆分功能。

在实施此类系统时,有时它有利于模型 系统 ,即硬件和软件。此时,使用HDL来模拟效力。

请决定您尝试制作的点,因为您似乎争论您之前的积分。

我在这个谈话开始时说了它'对于除了描述复杂的数字电路之外的任何内容的任何内容都可以使用HDL。我正在制作我的观点为什么这是这种情况。

至于建模整个系统。我很乐意这样做,但你有没有运气从MCU或CPU供应商那里获得HDL源代码?您最多最多的是一个可执行的CPU核心模拟器,如果你很幸运,也许是一些基本外围设备(如计时器)。

在典型的电子工程工作中,您将在使用FPGA时几乎遇到HDL。除非您为Intel或架构供应商的IRB等级为Intel提供的集成电路供应商。

引用
结果,该语言的用户避免了创新功能,并最终以常规Oldschool C所做的操作方式相同,以来,因为在这种特定的硬件上导致更好的性能。最后,它正在运行的事情几乎是一个常规的CPU,恰好发生了"uber hyperthreading"在单个核心上执行8个线程的能力,并具有连接到其他CPU的基于幻象信息箱的总线。

正确,但是什么's your point?

如果你的观点是实现有局限性,那真的是对任何人的新闻吗?

引用
当我第一次发现XMOS处理器时,我真的退出了它,但在与他们合作并为他们编写相当多的代码后,看到出来的新筹码......我最终失去了希望。它最终只是另一种内置的MCU'hardware RTOS'但是在外围设备的方式上很少,结束于其他MCU的应用中也可以使用。到目前为止,它最常用的应用程序是USB音频,因为XMOS是罕见的少数人之一,提供了良好的工作驱动程序和用于执行异步USB音频的代码。

听起来好像你真的不一样't了解硬件和软件之间的边界是非常灰色和可移动的,特别是在上下文中 系统 建筑与设计。鉴于这一点,它就不了'如果你继续以旧的熟悉方式思考,请给我一个惊喜。

一代新一代将来自于思考;他们赢了'由于现有的增强技术(基于缩放半导体工艺)已经用完了蒸汽而具有任何选择。

基于CSP的概念提供 a 前进的方式。我想找到别人,但他们没有't appeared yet.

我只涉及到XMOS才能获得稍前的新产品,并获得一些早期进入开发工具。所以我不'T知道那里的长期路线图,但到目前为止我看到的是我的多处理期望,希望他们可以在将来改变,因为它可能是真正的计算创新。通过运行它的硬件确定语言的所有有用应用程序之后,到目前为止XC仅编译XMOS芯片。

您能否将XMOS处理器命名为XMOS处理器的最终应用程序,在那里他们真的具有与MCU,DSPS,FPGA等现有解决方案的优势?
 

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#95开启: 2019年9月26日,07:40:52»
引用
我的观点是,HDL语言是为了在数字电路设计中提供利基应用,并且对在计算机上运行的通用软件具有真正的所有内容。 (直到Intel开始在PC中包括用户可编程Altera FPGA协处理器)
耸肩。在他们的正确思想中没有人会想到使用VHDL作为Python替换,也不是反之亦然。

但that'■推荐OP也会学习HDL的关键特征。然后他们会知道哪种工具与每种情况相关。
引用
您能指出一些在一些上下文中使用HDL的一些例子,即在无点涉及数字电路?是的,您可以在理论上写一个在Verilog中的整个操作系统,它可以在HDL模拟器中运行,因为它是巡回赛完成,但我的意思是使用HDL语言与其他更典型的编程或脚本语言实际上有意义的示例。

大学教师'问愚蠢的问题。在HDL中编写整个操作系统是非敏感的,如提示在Java中实现硬件逻辑。

OP对嵌入式电子系统感兴趣。那些通常涉及硬件和软件之间的拆分功能。

在实施此类系统时,有时它有利于模型 系统 ,即硬件和软件。此时,使用HDL来模拟效力。

请决定您尝试制作的点,因为您似乎争论您之前的积分。

I'm not.

在我写的第一篇文章(新强调)"您应该了解每种类型编程语言的一个示例的概念,优缺点。这将使您能够实现 为工作选择合适的工具,就像你应该知道是否使用螺钉或钉子或螺栓。一旦您了解概念,拾取该类型的下一个语言很简单。"

引用
我在这个谈话开始时说了它'对于除了描述复杂的数字电路之外的任何内容的任何内容都可以使用HDL。我正在制作我的观点为什么这是这种情况。

你 put the point more strongly than that, and in any case, it is wrong.

系统不仅仅是数字位,而HDL可以并做模型其他部件,例如,模拟和(伸展点)人类。

引用
至于建模整个系统。我很乐意这样做,但你有没有运气从MCU或CPU供应商那里获得HDL源代码?您最多最多的是一个可执行的CPU核心模拟器,如果你很幸运,也许是一些基本外围设备(如计时器)。

那 would be 模拟, 和while it can be done with softcores, it is not very sensible.

做了什么是 模型 a processor'S计算。在适当的情况下,在改进设计的同时可以移动到模拟中,例如,仿真。硬件与软件之间的边界。这种设计的逐步改进是正常的。

引用
在典型的电子工程工作中,您将在使用FPGA时几乎遇到HDL。除非您为Intel或架构供应商的IRB等级为Intel提供的集成电路供应商。

你 should add in the concept of a system that will be partitioned between an FPGA, a processor, and everything else.

在所有情况下,工程师将使用适当的工具进行作业,并且在项目进展时将交换工具。

引用
引用
结果,该语言的用户避免了创新功能,并最终以常规Oldschool C所做的操作方式相同,以来,因为在这种特定的硬件上导致更好的性能。最后,它正在运行的事情几乎是一个常规的CPU,恰好发生了"uber hyperthreading"在单个核心上执行8个线程的能力,并具有连接到其他CPU的基于幻象信息箱的总线。

正确,但是什么's your point?

如果你的观点是实现有局限性,那真的是对任何人的新闻吗?

引用
当我第一次发现XMOS处理器时,我真的退出了它,但在与他们合作并为他们编写相当多的代码后,看到出来的新筹码......我最终失去了希望。它最终只是另一种内置的MCU'hardware RTOS'但是在外围设备的方式上很少,结束于其他MCU的应用中也可以使用。到目前为止,它最常用的应用程序是USB音频,因为XMOS是罕见的少数人之一,提供了良好的工作驱动程序和用于执行异步USB音频的代码。

听起来好像你真的不一样't了解硬件和软件之间的边界是非常灰色和可移动的,特别是在上下文中 系统 建筑与设计。鉴于这一点,它就不了'如果你继续以旧的熟悉方式思考,请给我一个惊喜。

一代新一代将来自于思考;他们赢了'由于现有的增强技术(基于缩放半导体工艺)已经用完了蒸汽而具有任何选择。

基于CSP的概念提供 a 前进的方式。我想找到别人,但他们没有't appeared yet.

我只涉及到XMOS才能获得稍前的新产品,并获得一些早期进入开发工具。所以我不'T知道那里的长期路线图,但到目前为止我看到的是我的多处理期望,希望他们可以在将来改变,因为它可能是真正的计算创新。通过运行它的硬件确定语言的所有有用应用程序之后,到目前为止XC仅编译XMOS芯片。

您能否将XMOS处理器命名为XMOS处理器的最终应用程序,在那里他们真的具有与MCU,DSPS,FPGA等现有解决方案的优势?

这个单词"really"意味着主观反应,并且会有合法的意见差异。那'所有语言和技术都是如此。

最重要的是,对于这个线程,应用程序 概念 绝对不受硬件的限制。特别地,CSP概念体现了许多语言(和一些硬件),其中XC最多"pure" example.

概念 将生存并在一个过程中有用 整个职业生涯,即使是语言的来,也会变得突破和破碎点。

OP会做得很好地理解这些概念。
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 

 离线 Kjelt.

  • 超级贡献者
  • ***
  • 帖子:6043
  • 国家:  NL.
Re:太多的编程语言?
« 回复#96开启: 2019年9月26日,08:19:22»
也许是一个好主题返回主题:编程语言?
 

 离线 Westfw.

  • 超级贡献者
  • ***
  • 帖子:3391
  • 国家:  我们
Re:太多的编程语言?
« 回复#97开启: 2019年9月26日,09:43:15 AM»
好的。
那里 is no reason NOT to have exposed yourself at least briefly to a lot of languages. 众多不同的语言。


即使你成为一个嵌入式程序员,他们在C中完成所有产品,你也是'仍然需要了解"make", and "shell scripts"(或.bat文件),可能包括一堆模糊的Unix工具,如sed,awk和perl(所有部分"壳牌脚本,我猜。 对于这些天的窗户,你应该学习PowerShell。)


人们编写Python程序以从电子表格,XML,JSON等中提取数据,以供C程序使用。

那里'没有理由不暴露自己。 如果没有别的,那样的索引是在您的产品上放置相对复杂的UI的方法。 即使您实际上在C中编写了翻译,也保持了一些标准字名称"helpful"给其他人(也许你赢了'T必须尽可能多地记录。)
你r editor might have an extension language that isn't c-like(emacs使用lisp!) 你可能需要它。
你'd偶尔需要了解目标CPU的汇编语言。   由于该目标可能会发生变化,因此您可能非常熟悉多个汇编程序。 装配宏是他们自己的语言,他们're useful too.

你 should figure out why everyone hates COBOL.  It wouldn'伤害了一些其他人"historic"语言(Fortran,Algol,Basic。)

你 should figure out why the Aviation folk want Ada.

你 should have at least an inkling of how to program a desktop and a cellphone, because those are frequently the user interface for an embedded system.
你 should try a hardware definition language. 和一个做象征性操纵的数学工具(所以你可以欺骗你的Conculus作业!)

专业化是昆虫。
 
以下用户感谢此帖子: Sparkyfx. , Techman-001., bjdhjy888

 离线 Kjelt.

  • 超级贡献者
  • ***
  • 帖子:6043
  • 国家:  NL.
Re:太多的编程语言?
« 回复#98开启: 2019年9月26日,09:53:45»
好的。
那里 is no reason NOT to have exposed yourself at least briefly to a lot of languages. 众多不同的语言。


即使你成为一个嵌入式程序员,他们在C中完成所有产品,你也是'仍然需要了解"make", and "shell scripts"(或.bat文件),可能包括一堆模糊的Unix工具,如sed,awk和perl(所有部分"壳牌脚本,我猜。 对于这些天的窗户,你应该学习PowerShell。)


人们编写Python程序以从电子表格,XML,JSON等中提取数据,以供C程序使用。

那里'没有理由不暴露自己。 如果没有别的,那样的索引是在您的产品上放置相对复杂的UI的方法。 即使您实际上在C中编写了翻译,也保持了一些标准字名称"helpful"给其他人(也许你赢了'T必须尽可能多地记录。)
你r editor might have an extension language that isn't c-like(emacs使用lisp!) 你可能需要它。
你'd偶尔需要了解目标CPU的汇编语言。   由于该目标可能会发生变化,因此您可能非常熟悉多个汇编程序。 装配宏是他们自己的语言,他们're useful too.

你 should figure out why everyone hates COBOL.  It wouldn'伤害了一些其他人"historic"语言(Fortran,Algol,Basic。)

你 should figure out why the Aviation folk want Ada.

你 should have at least an inkling of how to program a desktop and a cellphone, because those are frequently the user interface for an embedded system.
你 should try a hardware definition language. 和一个做象征性操纵的数学工具(所以你可以欺骗你的Conculus作业!)

专业化是昆虫。
你有机会的经理吗?他们没有Clue在语言上对SNIF需要多少时间,并学习重要的东西。
你 can always say you have to know everything of everything. I don't agree.

你 want to know a few programming languages and script languages and learn them when needed on the job, if not needed and you are not interested, don't bother.
也许在60年代,你可以知道一切,现在真的是不可能的,你更好地对待一件事(专家)和众多其他东西时更好,然后在一切中适度地糟糕。至少这是我的经历。在我们的编程团队中,我们知道谁联系了哪个主题,因为该人更多地了解它,那么每个团队的其余部分都有更多的专业化(除了在团队决定中选择他们未来的专业知识之外,每个人都有一些专业化)。

如果我们有8个专家,我们无法做到我们的工作。
如果我们有8位概念,那么对我们无法做到的一切,我们都无法做出一些事情。没有及时,因为我们需要挖掘来解决一些困难的问题。

除了编程和脚本语言,编译器,其他工具,如VersionControl等等等等。任何公司最重要的是域知识。
 
以下用户感谢此帖子: bjdhjy888

 在线的 TGZZZ.

  • 超级贡献者
  • ***
  • 帖子:13290
  • 国家:  GB.
    • 玩得开心更多,更少
Re:太多的编程语言?
« 回复#99开启: 2019年9月26日,10:02:27»
也许是一个好主题返回主题:编程语言?

它仍然是线程的主题'S头衔,即使你不't recognise that!
那里 are lies, damned lies, statistics - and ADC/DAC specs.
滑翔机飞行员's aphorism: "跨度没有替代品". Retort: "有一个替代品:技能+想象力。但是你可以 span".
正玩得开心 做更多,少
 


分享我

 掘客    Facebook    诽谤    美味的   Technorati.    推特    谷歌    雅虎
SMF.