问题列表 - 第21260页

有没有办法在Haskell中做更多的"动态"数据构造函数?

是否有一些Haskell扩展能够创建比GADT更复杂的数据构造器?

假设我想创建一个有序列表的数据结构,并且有一个类似于(:)列表工作的数据构造函数,带有类型签名:

data MyOrdList a where
    (>>>) :: (Ord a) -> a -> MyOrdList a -> MyOrdList a
Run Code Online (Sandbox Code Playgroud)

但我希望(>>>)有一个特定的行为,如下所示:

(>>>) :: (Ord a) => a -> [a] -> [a]
x >>> [] = [x] 
x >>> xs = low ++ [x] ++ high 
  where low  = filter (<x) xs
      high = filter (>x) xs
Run Code Online (Sandbox Code Playgroud)

所以结构总是一个有序的结构.(我现在不知道如果这是一个很好的做法,我只是提供了我想要的行为类型的最简单的例子).

当然我可以使用一个函数(>>>),但是我将没有模式匹配和其他好处,我有它>>>是一个数据构造函数.

有没有办法做这样的事情?

constructor haskell data-structures

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

是否有针对MS SQL服务器的基于Web的开源管理?

有没有人知道基于Web的MS SQL管理器(在ASP.NET或经典ASP中)?我厌倦了使用他们的工作室软件,并且使用MySQL也很多,所以我习惯了基于网络的管理.谢谢 :)

sql-server asp.net asp-classic

12
推荐指数
1
解决办法
1万
查看次数

Powershell:从$ file.Fullname中减去$ pwd

给出以下文件:

c:\dev\deploy\file1.txt
c:\dev\deploy\file2.txt
c:\dev\deploy\file3.txt
c:\dev\deploy\lib\do1.dll
c:\dev\deploy\lib\do2.dll
Run Code Online (Sandbox Code Playgroud)

例如,如果$ pwd如下

c:\dev\deploy
Run Code Online (Sandbox Code Playgroud)

运行声明

$files = get-childitem
Run Code Online (Sandbox Code Playgroud)

我想取这个列表并使用foreach ($file in $files)我想替换我自己的路径,$pwd例如我想打印c:\temp\files如下:

c:\temp\files\file1.txt
c:\temp\files\file2.txt
c:\temp\files\file3.txt
c:\temp\files\lib\do1.dll
c:\temp\files\lib\do2.dll
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做呢

A = c:\dev\deploy\file1.txt - c:\dev\deploy\
B = c:\temp\files\ + A

giving B = c:\temp\files\file1.txt
Run Code Online (Sandbox Code Playgroud)

powershell split path

5
推荐指数
2
解决办法
6141
查看次数

使用Windows图片和传真查看器(shimgvw.dll)从命令行打印jpgs时,如何选择布局?

我正在使用Windows批处理文件和Windows图片和传真查看器的命令行界面自动打印jpg文件.我在.bat中使用的命令是:

rundll32.exe C:\Windows\System32\shimgvw.dll,ImageView_PrintTo /pt "%fullpath_to_jpg%" "%printer_name%"
Run Code Online (Sandbox Code Playgroud)

我的照片打印机执行4x6打印.如果jpg文件正好是4x6宽高比,一切正常,我得到一个全出血4x6打印.如果没有,我会得到一个我不想要的白色边框.在Windows资源管理器中,我可以右键单击非4x6 jpg,然后选择打印以调用照片打印向导,选择"全页照片打印"并裁剪,以便为我提供我想要的全出血4x6打印.

如何从命令行指定"全页照片打印"布局选项,以告诉shimgvw.dll"裁剪并旋转以适合"而不是"居中并旋转以适应"?是否有注册表设置选择此作为默认布局而不是"全页传真打印?我应该使用photowiz.dll而不是shimgvw.dll?

我找不到这些dll的命令行参数或注册表设置的参考.

printing windows-xp batch-file

6
推荐指数
1
解决办法
2977
查看次数

在哪里管理ACL继承?

我应该在哪里最好地管理ACL的层次结构?

我看到三种管理ACL层次结构的可能性:

1) ACL本身管理层次结构:

class Acl {
  Acl parent;
  // ...
}
Run Code Online (Sandbox Code Playgroud)

2)构造一个单独的树结构来管理层次结构.

3)使用已存在的层次结构作为ACL的隐式层次结构(如文件系统已经具有层次结构).

以下代码是使用现有层次结构的一种可能性:

interface AclHolder {
    Acl getAcl();
}

public class Folder implements AclHolder {
    private AclHolder parent;
    private Acl acl;

    @Override
    public Acl getAcl(){
        return acl==null ? parent.getAcl() : acl;
    }
}
Run Code Online (Sandbox Code Playgroud)

另一种方法可能是使用规则来定义什么是层次结构.

我认为在1)和2)中创建显式ACL层次结构可能会有问题,因为这种层次结构通常必须反映系统结构并且是一种复制形式.

什么是最好的方法?

security inheritance acl hierarchy

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

C中的反转位模式

我正在将数字转换为二进制数,并且必须使用它putchar来输出每个数字.

问题是我正在接受订单.

在做自己的后缀之前,有没有反转数字位模式?

因为在int中有一个特定的位模式 - 我该如何反转这个位模式?

c

8
推荐指数
2
解决办法
5215
查看次数

C++中的dynamic_cast和static_cast

dynamic_cast对C++中的关键字很困惑.

struct A {
    virtual void f() { }
};
struct B : public A { };
struct C { };

void f () {
    A a;
    B b;

    A* ap = &b;
    B* b1 = dynamic_cast<B*> (&a);  // NULL, because 'a' is not a 'B'
    B* b2 = dynamic_cast<B*> (ap);  // 'b'
    C* c = dynamic_cast<C*> (ap);   // NULL.

    A& ar = dynamic_cast<A&> (*ap); // Ok.
    B& br = dynamic_cast<B&> (*ap); // Ok.
    C& cr = dynamic_cast<C&> …
Run Code Online (Sandbox Code Playgroud)

c++ dynamic-cast

149
推荐指数
4
解决办法
16万
查看次数

Zend框架 - 在呈现布局之前执行的最后一个代码

在执行所有其他代码之后,我想在渲染布局之前执行一些代码.我会把那些代码放在哪里?

我特意尝试在布局使用之前修改headLink,headScript和inlineScript视图助手中引用的文件.

以下是我要采取的步骤:

  1. 循环遍历这些视图助手中的文件
  2. 列出本地文件
  3. 从视图助手中删除本地文件
  4. 将本地文件列表作为参数引用到服务器脚本,该脚本将它们组合为单个HTTP请求
  5. 将新的组合脚本引用添加到相应的视图助手

看起来Front Controller插件不会帮助我实现这个目标,原因如下:

  1. postDispatch() 在每个执行的控制器动作之后执行,我需要完整的样式表/ javascripts列表
  2. dispatchLoopShutdown() 在控制器动作循环之后执行,但此时已经呈现了布局

正如Rufinus建议的那样,我通过扩展View Helpers来解决这个问题. 从这个角度我的问题以及解决方案就在这里.

php zend-framework zend-view zend-layout

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

用Groovy代替Java Little

我一直在检查Groovy,我觉得将Java程序一点一点地移动到Groovy - 抓住一个类并使其成为Groovy类,然后一次转换方法guts - 可能是相对理智的利用一些Groovy语言功能的方法.我也会在Groovy中做新的课程.

问题:

  1. 这是一种合理的转换方式吗?
  2. 我可以将所有公共方法和字段保存在Java中吗?Groovy"只是"超集,对吧?
  3. 在Groovy中你不会做什么样的事情,但更喜欢Java呢?

java groovy

11
推荐指数
1
解决办法
462
查看次数

使用ggplot2如何在图例中表示点和线

使用ggplot2我正在绘制几个函数和一系列点.我无法弄清楚如何表示传奇上的点.我意识到我需要使用aes()函数,但我不完全理解如何做到这一点.我很抱歉这个例子很长,但我不知道如何说明它.

## add ggplot2
library(ggplot2)

# Declare Chart values
y_label = expression("y_axis"~~bgroup("(",val / km^{2},")"))
x_label = "x_axis"

#############################
## Define functions
# Create a list to hold the functions
funcs <- list()
funcs[]

# loop through to define functions
for(k in 1:21){

# Make function name
funcName <- paste('func', k, sep = '' )

# make function
func = paste('function(x){exp(', k, ') * exp(x*0.01)}', sep = '')

funcs[[funcName]] = eval(parse(text=func))

}

    # Specify values
    yval = c(1:20)                              
    xval = c(1:20) …
Run Code Online (Sandbox Code Playgroud)

statistics plot r ggplot2

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