小编Eva*_*van的帖子

类型对Mercury等逻辑编程语言有什么好处?

我开始看Mercury语言,这看起来非常有趣.我是逻辑编程的新手,但在Scala和Haskell中使用函数式编程非常有经验.我一直在思考的一件事是,当你已经拥有至少与类型一样富有表现力的谓词时,为什么你需要逻辑编程中的类型.

例如,在以下代码段中使用类型有什么好处(取自Mercury教程):

:- type list(T) ---> [] ; [T | list(T)].

:- pred fib(int::in, int::out) is det.
fib(N, X) :-
  ( if N =< 2
  then X = 1
  else fib(N - 1, A), fib(N - 2, B), X = A + B
  ).
Run Code Online (Sandbox Code Playgroud)

与仅使用谓词编写它相比:

list(T, []).
list(T, [H | X]) :- T(H), list(T, X).

int(X) :- .... (builtin predicate)

fib(N, X) :-
  int(N),
  int(X),
  ( if N =< 2
  then X = 1
  else fib(N - 1, A), fib(N …
Run Code Online (Sandbox Code Playgroud)

logic types mercury first-order-logic

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

WordPress:单击按钮/链接时对内容进行动态排序

我需要一些功能方面的帮助。我正在尝试创建一个可以动态排序的帖子页面,以显示用户希望看到的帖子

使用场景:

帖子中有 4 个标题 ei:标题 A、标题 B、标题 C 和标题 D。

标题 A = 卡拉莫回顾;

标题 B = 目的地:公主港;

标题 C = 免费往返机票可以让您看到的事情;

标题 D = 在菲律宾旅行时要记住的五件事;

现在我想按以下方式排序:

最多评论

最受关注

按字母顺序 - 升序

用户可以通过单击如下所示的按钮来更改页面顺序。

在此输入图像描述

php wordpress

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

在自定义帖子类型中显示标签面板

我刚做了一个自定义的帖子类型.如何显示在标签上的侧边栏一样什么面板帖子后类型有?

php wordpress custom-post-type

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

jQueryMobile输入类型宽度100%

如何在jQueryMobile中将输入类型宽度设置为100%?与输入类型按钮相同.

谢谢.

css mobile jquery input width

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

水星:决定论和模式匹配

我有一个半决定性的功能.当我重新编写它以使用模式匹配而不是if语句时,Mercury表示它变得不确定.我想明白为什么.

原始代码:

:- pred nth(list(T), int, T).
:- mode nth(in,      in,  out) is semidet.
nth([Hd | Tl], N, X) :- (if N = 0 then X = Hd else nth(Tl, N - 1, X)).
Run Code Online (Sandbox Code Playgroud)

修订后的代码:

:- pred nth(list(T), int, T).
:- mode nth(in,      in,  out) is nondet.
nth([Hd | _], 0, Hd).                             % Case A
nth([_ | Tl], N, X) :- N \= 0, nth(Tl, N - 1, X). % Case B
Run Code Online (Sandbox Code Playgroud)

我习惯于考虑SML中的模式匹配,其中案例A中的0将确保在B的情况下,N不是0. Mercury的工作方式不同吗?即使N为0,情况B也可以被调用吗?(我将N \= 0条款添加到案例B中,希望使谓词半自由,但这不起作用.)

有没有办法用模式匹配编写这个谓词,这也是半决定的?

pattern-matching mercury

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

从自定义帖子类型循环/存档中排除类别

我一直在阅读有关如何做到这一点的帖子,但似乎没有任何意义或工作.我在我的functions.php文件和自定义分类法(分类)中创建了自定义帖子类型(研究).我的帖子类型也有一个自定义存档页面(archive-research.php).

我有一个名为"oldresearch"的类别(分类),我想从自定义归档模板中排除.

以下是我的自定义帖子类型代码.有人可以帮助我,让我知道排除代码需要去哪里.

<?php
/* redirect users to front page after login */
function redirect_to_front_page() {
global $redirect_to;
if (!isset($_GET['redirect_to'])) {
$redirect_to = get_option('siteurl');

}
}
add_action('login_form', 'redirect_to_front_page');


if ( function_exists('register_sidebars') )
    register_sidebars(3);


add_action('init', 'register_custom_menu');

function register_custom_menu() {
register_nav_menu('custom_menu', __('Custom Menu'));
}

/** Registering Custom Post Type: Research **/

// Register Taxonomy for Research
$labels = array(
    'name'                          => 'Classifications',
    'singular_name'                 => 'Classification',
    'search_items'                  => 'Search Classifications',
    'popular_items'                 => 'Popular Classifications',
    'all_items'                     => 'All Classifications',
    'parent_item'                   => 'Parent Classifications',
    'edit_item' …
Run Code Online (Sandbox Code Playgroud)

wordpress categories custom-post-type

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

JQuery输入[type = date]选择器

我有一个类型设置为"日期"(html5)的输入:

<input id="Employee_hireDate" class="pickDate" type="date" name="Employee[hireDate]" value="Hire Date" />
Run Code Online (Sandbox Code Playgroud)

当我查看原始源时,类型设置为日期.但是,在Chrome开发者工具中,它不会显示.当我跑:

alert($('#Employee_hireDate').attr('type'));
Run Code Online (Sandbox Code Playgroud)

它将输入类型显示为undefined.我正在使用Google Chrome v15.

有谁知道为什么JQuery找不到选择器?

洛根

jquery html5 date input

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

Wordpress,通过名称或 URL 获取帖子内容

我在这里看到我可以使用帖子 ID 在 WordPress 中获取帖子的内容。就像是:

<?php $my_postid = 83;//This is page id or post id
$content_post = get_post($my_postid);
$content = $content_post->post_content;
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]&gt;', $content);
echo $content;?>
Run Code Online (Sandbox Code Playgroud)

我想要同样的东西,但是通过它的名字来获取帖子。

php wordpress custom-post-type

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

选中复选框时,jQuery切换输入

我正在尝试构建类似wordpress选项的部分.单击复选框时可以切换相应<input type="text">字段的显示,我想在一个函数中执行此操作,因此我没有大量不同的函数,因此使用复选框切换相应输入的最佳方法是什么,我做了一个快速的jsFiddle,但当我使用我的复选框时,它切换所有输入,因为我明显选择了所有这些,所以什么是更好的解决方案使用like this或者什么来切换相应的字段,谢谢提前,http:/ /jsfiddle.net/MEC9n/

HTML

<div class="options">
    <input type="checkbox" name="title"><label>Title</label>
    <input type="checkbox" name="author"><label>Author</label>
    <input type="checkbox" name="category"><label>Category</label>
</div>
<div class="container">
    <form method="post">
        <input type="text" name="title" placeholder="Title:">
        <input type="text" name="author" placeholder="Author:">
        <input type="text" name="category" placeholder="Category:">
        <input type="submit" value="Submit">
    </form>
</div>
Run Code Online (Sandbox Code Playgroud)

jQuery的

   $(document).ready(function(){
        $('input[type="checkbox"]').click(function(){
            $('input[type="text"]').toggle();
        });
    });
Run Code Online (Sandbox Code Playgroud)

checkbox jquery input toggle

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

File.execute()没有执行我的脚本.如何调试此问题?

我正在为ExtendScript编写Illustrator CS6的脚本.在我的脚本结束时,我想使用生成一个任务(在Ruby中的第二个脚本)File.execute().但是,它不起作用.我对如何调试问题感到茫然 - 我怎么能弄清楚为什么这不起作用?

这是我的ExtendScript文件的结尾:

// Do a bunch of other work, then:
var rubyFile = new File(scriptFolder + 'BuildHtmlWalkthrough.rb');
alert(rubyFile.exists);
var result = rubyFile.execute(); 
alert(result);
Run Code Online (Sandbox Code Playgroud)

双方rubyFile.existsresult总是为真,表示该脚本启动确定.但是脚本似乎根本没有运行.我尝试过以下诊断:

  • Ruby脚本确实从命令行运行.脚本的权限是-rwxr-xr-x
  • 我添加了一个调用system("touch /blah/blah/blah")作为Ruby脚本的第一行.该文件没有被触及.
  • 我想也许ExtendScript进程在Ruby脚本运行之前就已经终止了,所以我之后添加了一个long for循环rubyFile.execute().旋转> 30秒没有帮助.

我可以做些什么来调试或解决这个问题?

我在MacOS X v10.9.1上.作为参考,这是以下文档File.execute():

File.execute():Boolean

核心JavaScript类

使用适当的应用程序执行或打开此文件,就好像它已在文件浏览器中双击一样.您可以使用此方法来运行脚本,启动应用程序等.如果应用程序启动成功,则立即返回true.

extendscript adobe-illustrator

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

非引用类型是否始终满足“静态”生命周期?

我试图理解为什么下面的代码可以编译。我没想到能够构造,Wrapper<String>因为T: 'static运行时分配的字符串不会在程序的整个生命周期中存在。

我认为允许这样做的原因是因为我设置T为非引用类型(String)。当我使用&str, 或包含引用的结构时,编译器会发出我期望的错误。

然而,我在 Rust 文档中找不到任何可以证实我的假设的内容,所以也许我没有完全理解规则。所有非引用类型是否都满足 的'static生命周期限制Wrapper<T>,还是有一些类型会失败?

use rand::Rng;

struct Wrapper<T>
where
    T: 'static,
{
    value: T,
}

fn wrap_string() -> Wrapper<String> {
    // Use rng to avoid construcing string at compile time
    let mut rng = rand::thread_rng();
    let n: u8 = rng.gen();
    let text = format!("The number is {}", n);
    Wrapper { value: text }
}

fn main() {
    let wrapped = wrap_string();
    std::mem::drop(wrapped); …
Run Code Online (Sandbox Code Playgroud)

lifetime rust

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

如何在枚举项之间移动非复制数据

我有一个代表状态机的 Rust 枚举。我需要在状态之间移动一些数据(其中数据未实现Copy)。有什么好的使用方法?

\n\n

基本上,我想消除bravo.clone()此代码中的调用。当原始数据将被删除时,必须克隆该数据是令人失望的。我宁愿做的事情是沿着bravo: *bravo\xe2\x80\x94 的路线将旧值移出bravoState1移入State2. 但我不能直接这样做,因为这会暂时使self.statewhile Construction的值无效State2

\n\n
enum MyStateMachine {\n    Idle,\n    State1 {\n        alpha: usize,\n        bravo: String,\n    },\n    // State2 is a superset of State1\n    State2 {\n        alpha: usize,\n        bravo: String,\n        charlie: usize,\n    },\n}\n\nimpl MyStateMachine {\n    fn to_state2(&mut self, charlie: usize) -> Result<(), String> {\n        use MyStateMachine::*;\n\n        match self {\n            State1 { alpha, bravo } => {\n                *self = State2 {\n …
Run Code Online (Sandbox Code Playgroud)

ownership rust

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

指定输入类型名称?

我正在联系表格.现在显然我希望消息框比电子邮件和主题输入框更大.显然我不能只在css中输入我的输入,因为它会改变所有的方框.我认为指定消息框会是这样的

input [type="text" name="message"] {
    padding-bottom: 500px;
}
Run Code Online (Sandbox Code Playgroud)

这显然不起作用......那么我做错了什么?

HTML

<div id="contactContent">
 <form>
 <label>Email:</label><input type="text" name="email" />
 <br>
 <label>Subject:</label><input type="text" name="subject" />
 <br>
 <label>Message:</label><input type="text" name="message" />
 </form>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

#contactContent { 
    margin-top: 50px; 
    margin-left: 350px;
}
input { 
    border: none; 
    background-color: #CCCCCC; 
    margin-left: 20px; 
    margin-bottom: 5px; 
    padding-right: 250px;
    padding-top: 13px;
    padding-bottom: 13px;
}
label {
    display:inline-block;
    width:100px;
    font-family:maven;
    color: #FF6464;
    font-size: 20px;
    text-align: right;
}
input [type="text" name="message"] {
    padding-bottom: 500px;
}
Run Code Online (Sandbox Code Playgroud)

html css forms input

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