gpt4 book ai didi

algorithm - 评估可视化编程语言的执行流程

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:36:33 25 4
gpt4 key购买 nike

最近我在阅读有关可视化编程语言的内容。所以我想出了两个“范式”。在这两者中,您都有一个起点和多个终点。

现在,您可以从起点开始,也可以从终点反向移动(终点的顺序已知)。

从起点开始感觉很奇怪,因为您可以在数据流中进行“拆分”。比如说,如果我有一个整数,并且两个函数同时需要这个整数。坏的。我不想进入并发编码。至少还没有。还是应该?

从终点开始感觉好多了。您从第一个终点开始。检查任何需要的东西,并对其进行评估。我相信这是懒惰的评价。但是当你有多个输入时,问题就来了。您如何决定评估输入的顺序?

你能给我指出一些文章/论文/互联网上的东西吗?或者也许可以告诉我一些要查找的关键字?

最佳答案

如果我明白你的意思,在两个函数中使用相同的整数,就是这样:你只需使用它两次,不需要引入并发。如果你正在考虑破坏输入值的“实现”,你可以使用前请复印一份。

int i = 2;
int j = fun1(i);
int k = fun2(i);
int res = fun3(j, k);

会变成:

      i = 2[A]
|
Clone[B]
/ \
/ \
/ \
i_1 i_2
| |
fun1[C] fun2[D]
| |
j k
\ /
\ /
\ /
fun3[E]
|
res

但是不需要并发来评估图形。您可以只评估从左到右的“平行”分支(如 A-B-C-... 标签所示 - 另请参见 here)。

自上而下(又名从头到尾),从左到右感觉比自下而上更自然,前提是自下而上实际上具有明确定义的含义。关于后一点,假设您确实有程序的结果,您不能总是计算输入:想想当 funXXX 不是单射时会发生什么(例如 fun1(x) = x*x) 因此不可逆。

我希望我没有完全误解您的思路。

关于algorithm - 评估可视化编程语言的执行流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3268783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com