小编nit*_*owa的帖子

Haskell将单个值应用于函数列表

对于作业,我正在处理一系列函数[Int -> Int](例如[(+3), (*4), (+1)]),我想Int对它们各应用一个,然后创建一个结果列表[Int]

我已经搜索了很多,但我无法找到办法进行这样的操作.使用map不如我所料.相关的错误是这样的:

ERROR - Cannot infer instance
*** Instance   : Num ((Label -> Label) -> a)
Run Code Online (Sandbox Code Playgroud)

按要求代码:

data Tree = Node (Label -> Label) Label [Tree]
type Label = Int

testTree = Node (+1) 3 [ Node (+1) 5 [], Node (+1) 4 [Node (+1) 1 [], Node (+2) 7 []]]

listify :: Tree -> [(Label -> Label)]
listify t = [(getNodeFunction t)] ++ concat(map (listify) (getSubTrees …
Run Code Online (Sandbox Code Playgroud)

haskell

15
推荐指数
2
解决办法
5245
查看次数

我在 [您最喜爱的位置支持应用程序] 中使用了谁的 google API 密钥?

一个小介绍

因此,我一直在跨平台电子和网络应用程序中使用 Google 地图地理定位 API。

在我的浏览器中使用不再那么新的navigator.geolocation.getCurrentPosition(callback)浏览器(chrome/chromium/firefox,我想还有其他大浏览器)就像以前一样工作。然而,在 Electron 中,系统会提示我首先注册 API。

令人惊讶的是,Google 地图要求您提供付款地址,然后使用该地址对您的 API 调用进行计费。(您可以在这里阅读: https: //developers.google.com/maps/billing/understanding-cost-of-use

根据这些人的说法https://github.com/electron/electron/issues/13143 Electron 附带了一个由每个人共享的内置 API 密钥(除非您设置自己的)

当然,问题是我的浏览器从哪里获取 API 密钥?所有浏览器都带有相同的密钥吗?谁为所有这些来自 Firefox 的呼叫付费?显然,人们不能遵守每月 200 美元的免费配额。

是否存在未记录的元 API,用于动态获取浏览器使用的 API 密钥?

也许有人可以阐明这一点。干杯。

附录:

深入研究该主题,我发现了以下内容:

浏览器二进制文件确实带有内置 API 密钥。显然,它们是按每个发行版进行管理的(例如,Arch 上的 chromium 与 Ubuntu 上的 chromium 具有不同的版本等)

您可以通过检查来验证这一点

git clone https://aur.archlinux.org/chromium-dev.git

它将漫不经心地声明他们的密钥PKGBUILD(这是开源的,所以我不会在这里透露任何秘密,尽管其中一个字段的名称不太恰当)。

# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
# NOTE: These are for Arch Linux use ONLY. For your own distribution, please
# get …
Run Code Online (Sandbox Code Playgroud)

firefox google-maps google-api geolocation electron

5
推荐指数
0
解决办法
759
查看次数

GForth:将浮点数转换为String

一个简单的问题原来非常复杂:

如何在GForth中将浮点数转换为字符串?所需的行为如下所示:

1.2345e fToString \ takes 1.2345e from the float stack and pushes (addr n) onto the data stack
Run Code Online (Sandbox Code Playgroud)

forth gforth

5
推荐指数
1
解决办法
116
查看次数

C:mmap失败:没有这样的设备

我正在尝试使用c命令创建内存映射

  void* mem_map = mmap(NULL, 
                       sizeof(serverData),      //200000
                       PROT_READ | PROT_WRITE, 
                       MAP_SHARED, 
                       mem_map_fp, 
                       0);

  if(mem_map == MAP_FAILED){
    bail_out(EXIT_FAILURE, "mmap");
  }
Run Code Online (Sandbox Code Playgroud)

程序编译,但在尝试运行时会产生以下错误:

mmap: No such device
Run Code Online (Sandbox Code Playgroud)

根据我的理解,代码没有任何问题,这让我怀疑原因可能有点复杂.我正在运行这个linux版本:

Linux ubuntu 4.2.0-16-generic #19-Ubuntu SMP Thu Oct 8 15:35:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

c memory-mapping

2
推荐指数
1
解决办法
3168
查看次数