据报道,Erlang已在生产系统中使用了20多年,正常运行时间百分比为99.9999999%.
我做了以下数学计算:
20*365.25*24*60*60*(1 - 0.999999999) == 0.631 s
Run Code Online (Sandbox Code Playgroud)
这意味着系统在20年期间只有不到一秒的停机时间.我并不想挑战这个问题的有效性,我只是好奇我们如何关闭系统(故意或偶然)只有0.631秒.任何熟悉大型软件系统的人都可以向我们解释这个吗?谢谢.
有谁知道如何计算服务在一组处理单元(或机器)上的停机时间?
Mathematica绘制这样的东西(由Graphviz创建)是否可行且实用:

这是我能得到的最好的(但形状和风格并不令人满意):

码:
GraphPlot[{{A -> C, "go"}, {C -> B, "gone"}, {C -> D,
"went"}, {C -> C, "loop"}}, VertexLabeling -> True,
DirectedEdges -> True]
Run Code Online (Sandbox Code Playgroud) 我试图找到一个通用的解决方案来绘制像Mathematica中的图形对象的钟面.我已经实现了自己的版本,但我认为必须有更好的解决方案.一个更简洁的版本,代码更少或思路过程更清晰,我们将不胜感激.
我的版本:
radius = 1;
elementList =
Join[Table[i, {i, 3, 1, -1}], Table[i, {i, 12, 4, -1}]];
elementNumber = Length[elementList];
thetaList = Table[i, {i, 0, 2 Pi, 2 Pi/elementNumber}][[1 ;; 12]];
coordinateList = Map[{radius*Cos[#], radius*Sin[#]} &, thetaList];
objectList =
Map[Style[#, FontFamily -> "Georgia", FontSize -> 30] &,
elementList];
Graphics[
Join[
MapThread[Text[#1, #2] &, {objectList, coordinateList}],
{Circle[{0, 0}, 1.2*radius]}
]
]
Run Code Online (Sandbox Code Playgroud)

问题描述:
Mathematica
"\:nnnn"
用作unicode输入的语法.例如,如果我们进入
"\:6c34",我们得到"?"(中文"水").但如果有人想进入"\:1f618"(面对投掷一个吻)会怎样.当我尝试这个时,我得到了"?8",而不是"a face throwing a kiss".所以,Mathematica "\:1f61"在我进入之前进行了评估"8".
问题: 我们如何延迟此评估或如何输入任何unicode输入(对于超过4个字符的十六进制)?
软件和硬件平台: 我在Intel Mac上运行Mathematica 8.我尝试了Mathematica和Mathematica笔记本的命令行版本,它们的行为相同.
谢谢.
思考: Unicode是一个可扩展的标准,它可以增长(它确实增长:)).实现此标准的软件系统可能只实现此标准的子集,以便有效且有用(8位,16位或32位编码).一,作为某个软件包的用户,不应该假设一旦软件说它支持unicode,它就支持通用的unicode集.
我想从表达式列表中创建一个格式化的文档.此列表中的一个表达式如下:
text = Style["a\n\tb\n\t\tc", FontSize -> 17, FontFamily -> "Monaco"]
Run Code Online (Sandbox Code Playgroud)
它按计划格式化:

但是当我执行以下命令尝试生成文档时:
CreateDocument[{text}]
Run Code Online (Sandbox Code Playgroud)
我懂了:

在使用"CreateDocument"以编程方式生成文档时,有什么方法可以保持字符串的格式化吗?
软件平台:我正在运行Mathematica 8.
谢谢.
我正在做一个非常基本的操作 - 在Mathematica中画点.这是代码:
Graphics[
{
Point[{0, 0}], Point[{1, 2}]
}
]
Run Code Online (Sandbox Code Playgroud)
我给出了我想要的结果:

但是当我指定"PlotRange"时,我得到一张空白画布.为什么这两个点消失了?
Graphics[
{
Point[{0, 0}], Point[{1, 2}]
},
PlotRange -> {{0, 0}, {4, 4}}
]
Run Code Online (Sandbox Code Playgroud)
截图:

如果您无法重现我遇到的问题,也请告诉我.谢谢.
我尝试使用crypto:sign/4来签名但是失败了.任何人都可以告诉我如何在Erlang中使用ECDSA签名消息吗?谢谢.(我使用的是Erlang版R16B01.)
模块代码:
-module(message).
-compile(export_all).
go() ->
{_PubKey, PriKey} = crypto:generate_key(ecdh, secp256k1),
SigBin = sign_message(PriKey, "Hello"),
SigBin.
sign_message(PriKey, Msg) ->
Algorithm = ecdsa,
DigestType = sha256,
MsgBin = list_to_binary(Msg),
SigBin = crypto:sign(Algorithm, DigestType, MsgBin, PriKey),
SigBin.
Run Code Online (Sandbox Code Playgroud)
但它在测试运行中失败了:
1> message:go().
** exception error: no function clause matching crypto:sign(ecdsa,sha256,
{digest,
<<24,95,141,179,34,113,254,37,245,97,166,252,147,
139,46,38,67,6,236,48,78,218,81,128,...>>},
<<189,38,200,204,95,248,54,69,42,65,216,165,242,228,100,
54,158,5,61,174,58,198,191,161,9,...>>) (crypto.erl, line 462)
Run Code Online (Sandbox Code Playgroud)
感谢Paul,可以通过进行以下更改来解决此错误.
更改:
SigBin = crypto:sign(Algorithm, DigestType, MsgBin, PriKey),
Run Code Online (Sandbox Code Playgroud)
至:
SigBin = crypto:sign(Algorithm, DigestType, MsgBin, [PriKey, secp256k1]),
Run Code Online (Sandbox Code Playgroud) drawing ×3
erlang ×3
graphics ×2
arc-lisp ×1
astral-plane ×1
clock ×1
database ×1
downtime ×1
ecdsa ×1
encryption ×1
formatting ×1
lisp ×1
mnesia ×1
racket ×1
reliability ×1
sign ×1
string ×1
unicode ×1
uptime ×1