小编Tik*_*vis的帖子

"shiv"是什么意思(在HTML5中)?

四处招呼

  1. 我正在学习html5
  2. 我理解雷米的html5 shiv的必要性
  3. 但是"shiv" 的定义只是在扼杀我.

"shiv" 究竟什么意思?

感谢名单

轨枕

html5

11
推荐指数
2
解决办法
2332
查看次数

理解Haskell中的绑定函数

我熟悉类别理论中的monad(实际上它们是一个非常简单的概念),但>>=Haskell中的函数完全让我困惑.好的,所以将bind应用于一个M a和一个函数的值与a -> M u首先将monad应用于此函数,然后在指定的值上进行评估并将结果相乘:a >>= f是相同的join $ (fmap f) $ a.但这是如何自然地描述计算?是否有一些有用的方法可以帮助我理解它?

在某个地方是否有一些适合C++丛林新鲜事物的文章?

monads haskell

10
推荐指数
2
解决办法
665
查看次数

如何以跨平台方式设置环境变量?

我可以轻松地使用读取环境变量System.Environment.getEnv.但是,System.Environment没有任何相应的setEnv功能(据我所知).

如何从Haskell程序设置环境变量?我更喜欢跨平台的解决方案.(所以只是执行export VAR=val或使用System.Posix.Env并不是我正在寻找的.)

haskell cross-platform environment-variables

10
推荐指数
1
解决办法
1605
查看次数

用折叠之类的东西计算树深度的最常用方法是什么?

计算a的深度需要什么最小(最一般)的信息Data.Tree?是一个Data.Foldable足够的实例?

我起初试图fold一个Tree和被困试图找到合适的Monoid相似Max.有些东西告诉我,因为Monoid(这会计算深度)需要是关联的,它可能不能用于表达需要了解结构的任何折叠(如1 + maxChildrenDepth),但我不确定.

我想知道什么样的思维过程会让我在这种情况下得到正确的抽象.

tree haskell fold

10
推荐指数
1
解决办法
352
查看次数

如何通过IO操作在某些非IO monad中惯用且高效地使用Pipe?

我有一个Producer创建依赖于随机性的值,使用我自己的Randommonad:

policies :: Producer (Policy s a) Random x
Run Code Online (Sandbox Code Playgroud)

Random是一个mwc-random可以从ST或运行的包装器IO:

newtype Random a =
  Random (forall m. PrimMonad m => Gen (PrimState m) -> m a)

runIO :: Random a -> IO a
runIO (Random r) = MWC.withSystemRandom (r @ IO)
Run Code Online (Sandbox Code Playgroud)

policies生产商的产量从一个简单的强化学习算法好政策.

通过索引到policies以下内容,我可以在5,000,000次迭代后有效地绘制策略:

Just convergedPolicy <- Random.runIO $ Pipes.index 5000000 policies
plotPolicy convergedPolicy "policy.svg"
Run Code Online (Sandbox Code Playgroud)

我现在想要在每500,000步骤上绘制中间策略,以了解它们如何收敛.我写了几个函数,它们接受policies生产者并提取一个列表([Policy s a]),例如10个策略 - 每500,000次迭代一次 - 然后绘制所有这些函数. …

haskell haskell-pipes

10
推荐指数
1
解决办法
165
查看次数

如何将DoctorJS与Emacs一起使用?

有没有办法使用DoctorJS(显然它曾经被称为jsctags)为Emacs生成TAGS文件?

我一直在环顾四周,似乎总是使用vi标签样式,但我可能会遗漏一些非常明显的东西.

javascript emacs ctags jsctags etags

9
推荐指数
1
解决办法
646
查看次数

如何使任意Emacs缓冲区"隐藏"?

几个emacs扩展创建"垃圾"缓冲区,我必须从各种缓冲区列表中手动删除它们.

Emacs有一个"隐藏缓冲区"的概念,例如用于迷你缓冲区.

如何将任意缓冲区设为隐藏缓冲区?

emacs

9
推荐指数
1
解决办法
2219
查看次数

如何在Emacs中使用Mx rgrep和git grep命令?

我希望能够使用正常的M-x rgrep工作流程(输入路径,模式并在*grep*缓冲区中显示链接的结果),但使用git grep而不是使用正常的find命令:

find . -type f -exec grep -nH -e  {} +
Run Code Online (Sandbox Code Playgroud)

我试着直接设置grep-find-command变量:

(setq grep-find-command "git grep")
Run Code Online (Sandbox Code Playgroud)

和使用 grep-apply-setting

(grep-apply-setting 'grep-find-command "git grep")
Run Code Online (Sandbox Code Playgroud)

但似乎都不起作用.当我运行M-x rgrep它时,只需使用与find以前相同的命令.

事实上,我敢肯定,现在rgrep甚至没有用到的grep-find-command变量,但我想不出它的命令存储.

emacs grep elisp

9
推荐指数
2
解决办法
1509
查看次数

如何获取scala宏来替换方法调用

如何让scala宏替换方法调用?

我的目标是创造一个叫做的特质ToStringAdder.假设我有一个x具有此特征的对象,那么当我调用时,x.add(any)我希望宏实际调用x.add(any, string)字符串是AST的字符串表示形式.(tostring当''任何'是一个函数时,这样我就可以很好).

除了Expecty之外,我所看到的所有这些示例都是有效地使用静态方法调用:不使用调用宏的对象.Expecty有以下方法,它给我一个关于如何检测'隐含这个'的线索,但我找不到在reify调用中引用它的方法.

 private[this] def recordAllValues(expr: Tree): Tree = expr match {
    case New(_) => expr // only record after ctor call
    case Literal(_) => expr // don't record
    // don't record value of implicit "this" added by compiler; couldn't find a better way to detect implicit "this" than via point
    case …
Run Code Online (Sandbox Code Playgroud)

scala scala-macros

8
推荐指数
1
解决办法
1815
查看次数

Pipes.Binary.decode - StateT用于什么?

我正在尝试使用管道和基于它构建的各种库来编写基本的网络服务器.预期的流程是:

从socket接收字节串 - >使用二进制解码 - >服务器逻辑在这里 - >发送响应到套接字

我认为这将是:

fromSocket s 4096 >-> decode >-> serverLogic >-> toSocket s
Run Code Online (Sandbox Code Playgroud)

管道二进制有一个decode和一个decodeMany,但我不确定我理解差异,我不知道如何使用decode.为什么decodeMany将上游管道作为参数而不是用它链接>->?你如何使用decode,StateT我的管道最终应该是什么样的?

haskell haskell-pipes

8
推荐指数
1
解决办法
213
查看次数