rust

哈工大/哈工程被禁用 MATLAB,网友:被卡脖子的领域还不少

隐身守侯 提交于 2020-07-27 09:46:40
(给 程序员的那些事 加星标 ) 5 月 23 日,哈工大/哈工程等 33 个中国机构和个人被美国商务部拉入出口管控的「实体名单」。 近日,此一波被“拉黑”的效应已经在高校中产生了! 哈工大学生 发现无法正常使用 MathWorks 最近有哈工大学生表示 MathWorks 正版软件无法正常使用。与 MathWorks 客服交涉,对方告知“受近期美国政府规定的影响,公司已被要求禁止向哈工大/哈工程提供技术或客户支持”。 也有同学向校内老师咨询,得到如下回应: 自 2020-06-06 开始,因哈工大被列入美国商务部实体名单,影响到了我校 MATLAB 的正常使用,目前我们正在和美国 Mathworks 公司方面积极沟通。非常抱歉给大家带来的麻烦! 有自称 MathWorks 员工的网友在知乎上补充表示,“所谓被禁也只是不能提供技术支持和未来的商务合作,之前卖出去的正版 license 还是可以用的……” MATLAB 是什么? MATLAB 是 MATrix LABoratory(矩阵实验室)的缩写,它是美国 MathWorks 公司的一个商业数学软件,是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。 1970 年代末~80年代初,美国新墨西哥大学教授 Cleve Moler 独立编写了 MATLAB 第一版。 1984 年,克里夫

再见 Python,Hello Julia!

核能气质少年 提交于 2020-07-27 08:42:51
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 导读: 随着Python的停滞不前,一个新的热门竞争对手崛起了。 如果Julia对你来说仍是个谜,别担心。 不要误会我的意思。Python的流行仍然受到计算机科学家、数据科学家、人工智能专家,以及他们组成的稳固社区的坚定支持。 但是,如果你曾经和这些人一起共进过晚餐,那么你就应该知道他们对于Python的弱点有多少抱怨。从速度缓慢到需要过多的测试,再到尽管进行了先前的测试仍然会产生很多运行时错误 - 这些已经足够让人恼火了。 这就是为什么越来越多的程序员开始采用其他语言的原因,这些语言中最受欢迎的是Julia、Go和Rust。Julia非常适合数学和技术任务,Go非常适合模块化程序,而Rust是系统编程的首选。 由于数据科学家和人工智能专家需要处理许多数学问题,因此Julia成为他们的赢家。即使经过严格的审视,Julia仍然具有Python无法战胜的优势。 01 Python的禅与Julia的贪婪 当人们创建一种新的编程语言时,他们这样做的目的是希望保留旧语言中的好特性,并修复其坏特性。 从这个意义上讲,Guido van Rossum在20世纪80年代后期创建Python的目的是为了改进ABC(Abstract Base Class - 抽象基类)

TechEmpower Web 框架性能第19轮测试结果正式发布,ASP.NET Core在主流框架中拔得头筹

…衆ロ難τιáo~ 提交于 2020-07-26 23:30:30
TechEmpower 第19轮编程语言框架性能排行榜2020年5月28日正式发布,详见官方博客: https://www.techempower.com/blog/2020/05/28/framework-benchmarks-round-19/ ,TechEmpower基准测试有许多场景(也称为测试类型),此次评测多了一个综合评分选项,把拥有完整测试覆盖的框架现在将具有综合 分数 ,这反映了测试项目类型的总体性能得分:JSON serialization, Single-query, Multi-query, Updates, Fortunes 和 Plaintext. 。对于每一轮,我们使每个测试类型的结果规范化,然后为每个测试类型应用主观权重(例如,Fortunes的权重比 Plaintext 高,因为Fortunes 是一种更现实的测试类型)。asp.net core排第6名,asp.net 排名倒数第二,第103名, 微软从倒数一路追赶到第一。 表上前缀T标签表示精选的主流编程语言 第1名 C++的drogon 9676分 第2名 Rust的actix 9064分 第6名 C#的ASP.NET Core 5659分 第29名 Go的Chi 2229分 第34名 Java的Spring 1867分 第73名 Nodejs的Express 821分 第94名

TechEmpower Web 框架性能第19轮测试结果正式发布,ASP.NET Core在主流框架中拔得头筹

微笑、不失礼 提交于 2020-07-26 03:41:29
TechEmpower 第19轮编程语言框架性能排行榜2020年5月28日正式发布,详见官方博客: https://www.techempower.com/blog/2020/05/28/framework-benchmarks-round-19/ ,TechEmpower基准测试有许多场景(也称为测试类型),此次评测多了一个综合评分选项,把拥有完整测试覆盖的框架现在将具有综合 分数 ,这反映了测试项目类型的总体性能得分:JSON serialization, Single-query, Multi-query, Updates, Fortunes 和 Plaintext. 。对于每一轮,我们使每个测试类型的结果规范化,然后为每个测试类型应用主观权重(例如,Fortunes的权重比 Plaintext 高,因为Fortunes 是一种更现实的测试类型)。asp.net core排第6名,asp.net 排名倒数第二,第103名, 微软从倒数一路追赶到第一。 表上前缀T标签表示精选的主流编程语言 第1名 C++的drogon 9676分 第2名 Rust的actix 9064分 第6名 C#的ASP.NET Core 5659分 第29名 Go的Chi 2229分 第34名 Java的Spring 1867分 第73名 Nodejs的Express 821分 第94名

Python 为什么没有 main 函数?为什么我不推荐写 main 函数?

自作多情 提交于 2020-07-25 16:19:01
毫无疑问 Python 中没有所谓的 main 入口函数,但是网上经常看到一些文章提“Python 的 main 函数”、“建议写 main 函数”…… 有些人是知情的,他的意图可能是模仿那些正宗的 main 函数,但还有不少人明显是被误导了(或自己误解了),就写出来很累赘的代码。 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:1097524789 本期“Python 为什么”栏目来聊聊 Python 为什么没有 main 函数? 在开始正题之前,先要来回答这两个问题: 所谓的 “main 函数”是指什么?为什么有些编程语言需要强制写一个 main 函数? 某些编程语言以 main 函数作为程序的执行入口,例如 C/C++、C#、 Java、Go 和 Rust 等,它们具有特定的含义: main 函数名是强制的,也就是要求必须有一个 main 函数 main 函数最多只能有一个,也就是说程序的入口是唯一的 语法格式有一定的要求,具有相对固定的模板 为什么要强制一个main入口函数呢? 这些语言是编译型语言,需要把代码编译成可执行的二进制文件,为了让操作系统

TechEmpower Web 框架性能第19轮测试结果正式发布,ASP.NET Core在主流框架中拔得头筹

时间秒杀一切 提交于 2020-07-23 21:00:15
TechEmpower 第19轮编程语言框架性能排行榜2020年5月28日正式发布,详见官方博客: https://www.techempower.com/blog/2020/05/28/framework-benchmarks-round-19/ ,TechEmpower基准测试有许多场景(也称为测试类型),此次评测多了一个综合评分选项,把拥有完整测试覆盖的框架现在将具有综合 分数 ,这反映了测试项目类型的总体性能得分:JSON serialization, Single-query, Multi-query, Updates, Fortunes 和 Plaintext. 。对于每一轮,我们使每个测试类型的结果规范化,然后为每个测试类型应用主观权重(例如,Fortunes的权重比 Plaintext 高,因为Fortunes 是一种更现实的测试类型)。asp.net core排第6名,asp.net 排名倒数第二,第103名, 微软从倒数一路追赶到第一。 表上前缀T标签表示精选的主流编程语言 第1名 C++的drogon 9676分 第2名 Rust的actix 9064分 第6名 C#的ASP.NET Core 5659分 第29名 Go的Chi 2229分 第34名 Java的Spring 1867分 第73名 Nodejs的Express 821分 第94名

Python 为什么没有 main 函数?为什么我不推荐写 main 函数?

你。 提交于 2020-07-23 19:55:41
在开始正题之前,先要来回答这两个问题: 所谓的 “main 函数”是指什么?为什么有些编程语言需要强制写一个 main 函数? 某些编程语言以 main 函数作为程序的执行入口,例如 C/C++、C#、 Java、Go 和 Rust 等,它们具有特定的含义: main 函数名是强制的,也就是要求必须有一个 main 函数 main 函数最多只能有一个,也就是说程序的入口是唯一的 语法格式有一定的要求,具有相对固定的模板 为什么要强制一个main入口函数呢? 这些语言是编译型语言,需要把代码编译成可执行的二进制文件,为了让操作系统/启动器找到程序的起点,所以要约定这一个函数。简单地说,就是在一大堆代码里,需要定义一个显著的可用于执行的开头。 不难看出,main 函数是那些语言中重要而不可缺的有机组成部分。 然而,我们再来看看 Python,情况就大不相同了。 Python 是解释型语言,即脚本语言,运行过程是从上往下,逐行解析运行,也就是说它的起点是可知的 每个 .py 文件就是一个可执行文件,都可作为整个程序的入口文件,也就是说程序的入口是灵活可变的,没有必须遵守的约定 有时候运行 Python 项目,并没有指定入口文件(命令行中较常见,例如"python -m http.server 8000"), 那可能是存在 __main __ .py 文件,它所在的包被当成一个“文件

How to create a thread local variable inside of a Rust struct?

空扰寡人 提交于 2020-07-23 09:08:27
问题 I need a thread local variable, ideally stored in a struct which currently stores most of my program's global state. The first way I can see to do this is to use the thread_local! macro, however I would like to keep this thread local within my state struct. The second way I can see to achieve this is to have a HashMap<Thread,MyThreadLocalData> or similar between threads and the value of my thread local variable(s). I would then have a getter which uses thread::current to lookup the

How can I wrap another type and add fields and methods to it?

爷,独闯天下 提交于 2020-07-22 04:00:26
问题 I know inheritance is a bad word in the Rust world, however there must be some way, given the following struct struct Glyph { // Fields } to have a new Glyphs struct that is a wrapper for Vec<Glyph> methods ( push , etc.) as well as fields and methods proper to itself? 回答1: You can define a type alias (i.e. a synonym): type Glyphs = Vec<Glyph>; It is not a distinct type, so you can pass a Glyphs to any function that expects a compatible Vec , including generic functions. You will not be able

How to accept an async function as an argument?

懵懂的女人 提交于 2020-07-21 11:15:03
问题 I would like to replicate the behavior and ergonomics of taking a closure/function as an argument much like map does: iterator.map(|x| ...) . I've noticed that some library code allows passing in async functionality, but this method doesn't allow me to pass in arguments: pub fn spawn<F, T>(future: F) -> JoinHandle<T> where F: Future<Output = T> + Send + 'static, T: Send + 'static, spawn(async { foo().await }); I'm hoping to do one of the following: iterator.map(async |x| {...}); async fn a(x: