小编Ono*_*cci的帖子

Elixir 中的命名函数和匿名函数有什么区别?

命名函数和匿名函数有什么区别?

hello = &("Hello, #{&1}")匿名函数是怎样的?

function elixir

4
推荐指数
1
解决办法
692
查看次数

在凤凰城实现highlight.js的正确方法是什么?

我用过这个,它有效,但感觉有点hacky.我已经尝试将highlight.pack.js文件复制到文件web/static/js并从.html.eex文件中调用它,但这只是给了我一个错误.我尝试过使用CDN(它有效),但这并没有给我我想要的结果.那么在phoenix v1.2.0中实现highlight.js的正确方法是什么呢?如果重要的话,我正在使用Earmark v1.0.1进行降价支持.

elixir highlight.js phoenix-framework

4
推荐指数
1
解决办法
257
查看次数

如何在MFC应用程序退出时设置Errorlevel

我有一个MFC遗留应用程序,我帮助维护.我不太确定如何识别MFC的版本,我认为它无论如何都不会有所作为.

该应用程序可以在命令行上采取一些参数; 我希望能够在退出应用程序时设置错误级别,以允许bat/cmd文件检查失败并做出适当的响应.

我不相信exit()可以工作(还没有尝试过,说实话),因为这是一个MFC应用程序.任何人都知道如何设置MFC应用程序返回的错误级别?我可以使用exit()吗?

c++ windows mfc cmd batch-file

3
推荐指数
1
解决办法
4750
查看次数

表达式测试序列中的所有项目是否相同

F#中有多个实例模式吗?

考虑一下我正在制作一份清单.我有以下模式匹配

match l with
| [] | [_] -> l  //if the list is empty or contains only one item, simply return it
|        

    //is there a pattern to test if all of the elements are identical?
Run Code Online (Sandbox Code Playgroud)

换句话说,传递[]或[1]应该只返回列表,所以应该[1; 1; 1; ...],但我无法弄清楚如何模式匹配最后一个模式.这可能吗?或者我有可能使用更好的方法吗?我没有找到任何关于重复模式的东西.

f# pattern-matching

3
推荐指数
1
解决办法
1466
查看次数

F# 将构造函数添加到记录?

基本上我想有一个单一的构造来处理序列化到 JSON 和格式化的 xml。Records 可以很好地序列化到 json 或从 json 序列化。但是 XmlSerializer 需要一个无参数的构造函数。我真的不想经历为这些构造构建类对象的练习(仅限原则)。我希望可以有一些快捷方式将无参数构造函数放到记录上(也许使用 wioth 语句或其他东西)。我无法让它表现 - 社区中有人有运气吗?

module JSONExample
    open System
    open System.IO 
    open System.Net 
    open System.Text 
    open System.Web 
    open System.Xml
    open System.Security.Authentication 
    open System.Runtime.Serialization //add assemnbly reference System.Runtime.Serialization System.Xml
    open System.Xml.Serialization
    open System.Collections.Generic 

    [<DataContract>]            
    type ChemicalElementRecord = { 
        [<XmlAttribute("name")>]
        [<field: DataMember(Name="name") >] 
        Name:string 

        [<XmlAttribute("name")>]
        [<field: DataMember(Name="boiling_point") >] 
        BoilingPoint:string 

        [<XmlAttribute("atomic-mass")>]
        [<field: DataMember(Name="atomic_mass") >] 
        AtomicMass:string 
    } 

    [<XmlRoot("freebase")>]
    [<DataContract>] 
    type FreebaseResultRecord = { 
        [<XmlAttribute("code")>]
        [<field: DataMember(Name="code") >] 
        Code:string 

        [<XmlArrayAttribute("results")>]
        [<XmlArrayItem(typeof<ChemicalElementRecord>, ElementName = "chemical-element")>]
        [<field: …
Run Code Online (Sandbox Code Playgroud)

.net f# datacontractserializer xmlserializer

3
推荐指数
1
解决办法
1823
查看次数

成员属性是否允许或使用F#?

考虑以下示例F#代码:

type mytype() =
   member this.v = new OtherClass()
Run Code Online (Sandbox Code Playgroud)

如果OtherClass实现了IDisposable,那么成员绑定是否像let绑定或use绑定一样?有没有办法让它充当使用绑定?我有一些与此非常相似的代码,我想确保在父对象超出范围时调用Dispose.

通过Expert F#进行的快速扫描未能找到任何明确的内容,但也许我正在寻找书中的错误术语.

f#

3
推荐指数
1
解决办法
227
查看次数

F#措施的重载

考虑以下F#代码:

[<Measure>] type pixel
[<Measure>] type inch
[<Measure>] type dot
[<Measure>] type percentage

let scaleCalculation (finalSize:float<pixel>) (originalSize:float<pixel>) =
   finalSize/originalSize * 100.0<percentage>
Run Code Online (Sandbox Code Playgroud)

(我意识到我需要检查originalSize为0,但这并不是真正与这个问题密切相关).

我想要的是重载此功能来处理每英寸的英寸和点数.我不认为有任何方法可以超载计量单位,但我只是想我会看到是否有人对此有任何建议.

我知道我可以这样做:

   let scaleCalculation (finalSize:float) (originalSize:float) =
      finalSize/originalSize * 100.0<percentage>
Run Code Online (Sandbox Code Playgroud)

但后来我失去了对finalSize和originalSize测量的检查.我只想确保finalSize和originalSize的度量相同.

有什么建议,想法?

f# overloading measures

3
推荐指数
1
解决办法
299
查看次数

度量单位,接口和混合

考虑以下F#代码:

type ILinear =
  interface 
  end

type IMetric =
  interface
  end


[<Measure>] type cm =
    interface ILinear
    interface IMetric 

[<Measure>] type m =
    interface ILinear
    interface IMetric

[<Measure>] type time
Run Code Online (Sandbox Code Playgroud)

我想使用这些接口作为对度量类型进行分组的方法,并且作为允许"任何度量"和"特定度量"之间的一般性级别的方式 - 类似于:

(* Yes, I know this syntax is probably incorrect *)    
let rate (distance:float<'u:#ILinear,#IMetric>) (time:float<time>) =
       distance/time
Run Code Online (Sandbox Code Playgroud)

我意识到这可能会推动可能性的限制,但我只是好奇,如果这是可能的,如果是这样,语法将是什么.正如我所说,这是使用接口作为一个穷人的混合.

f# interface units-of-measurement mixins

3
推荐指数
1
解决办法
381
查看次数

如何在Elixir中编码Monadic值?

所以我试图更好地理解monad的想法.我试着开始简单; 这是一个非常简单的Elixir模块,只有一个返回功能.这个:

defmodule MonadTest do
   def return(s), do: fn s -> s end
end
Run Code Online (Sandbox Code Playgroud)

然后我以这种方式将函数绑定到变量:

f = &MonadTest.return/1
Run Code Online (Sandbox Code Playgroud)

然后我尝试像这样调用函数:

f.(12)
Run Code Online (Sandbox Code Playgroud)

但是我没有回到12,而是获得了这个功能.像这样:

iex(22)> r = f.(12)
#Function<0.122071921/1 in MonadTest.return/1>
iex(23)> r
#Function<0.122071921/1 in MonadTest.return/1>
Run Code Online (Sandbox Code Playgroud)

我确定我错过了一些明显的东西 - 但我在这里错过了什么?

monads elixir

3
推荐指数
1
解决办法
481
查看次数

如何在浏览器堆栈中使用Canopy

我一直是f#测试库Canopy的用户,它的工作原理很棒。但是我不知道如何让它针对浏览器堆栈上的浏览器。我确实找到了这个,但是有可能。

twitter.com/bryan_hunter/status/423352533877153792

f# canopy-web-testing

3
推荐指数
1
解决办法
264
查看次数