问题列表 - 第15121页

Haskell lexer问题

我在haskell写一个词法分析器.这是代码:

lexer :: String -> [Token]
lexer s
    | s =~ whitespace :: Bool =
        let token = s =~ whitespace :: String in
            lex (drop (length token) s)
    | s =~ number :: Bool =
        let token = s =~ number :: String in
            Val (read token) : lex (drop (length token) s)
    | s =~ operator :: Bool =
        let token = s =~ operator :: String in
            Oper token : lex (drop (length token) s)
    | otherwise …
Run Code Online (Sandbox Code Playgroud)

haskell types lexer

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

SELECT子句中没有聚合函数时的GROUP BY行为

我有一个emp包含以下结构和数据的表:

name   dept    salary
-----  -----   -----
Jack   a       2
Jill   a       1
Tom    b       2
Fred   b       1
Run Code Online (Sandbox Code Playgroud)

当我执行以下SQL时:

SELECT * FROM emp GROUP BY dept
Run Code Online (Sandbox Code Playgroud)

我得到以下结果:

name   dept    salary
-----  -----   -----
Jill   a       1
Fred   b       1
Run Code Online (Sandbox Code Playgroud)

在什么基础上服务器决定返回吉尔和弗雷德并排除杰克和汤姆?

我在MySQL中运行此查询.

注1:我知道查询本身没有意义.我试图用'GROUP BY'方案调试问题.我试图理解为此目的的默认行为.

注2:我习惯于编写与GROUP BY子句相同的SELECT子句(减去聚合字段).当我遇到上述行为时,我开始想知道我是否可以依赖于以下场景:从emp表中选择薪水是dept中最低/最高的行.例如:像这样的SQL语句适用于MySQL:

SELECT A.*, MIN(A.salary) AS min_salary FROM emp AS A GROUP BY A.dept
Run Code Online (Sandbox Code Playgroud)

我没有找到任何描述这种SQL工作原理的材料,更重要的是如果我能够始终如一地依赖这种行为.如果这是一个可靠的行为,那么我可以避免以下查询:

SELECT A.* FROM emp AS A WHERE A.salary = ( 
            SELECT MAX(B.salary) FROM emp B WHERE B.dept = A.dept)
Run Code Online (Sandbox Code Playgroud)

mysql sql

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

如何使用jQuery关注页面加载时的表单输入文本字段?

这可能非常简单,但是有人可以告诉我如何在页面加载时让文本框上的光标闪烁吗?

html javascript jquery focus

227
推荐指数
8
解决办法
36万
查看次数

Python二进制数据读取

urllib2请求接收二进制响应,如下所示:

00 00 00 01 00 04 41 4D 54 44 00 00 00 00 02 41
97 33 33 41 99 5C 29 41 90 3D 71 41 91 D7 0A 47
0F C6 14 00 00 01 16 6A E0 68 80 41 93 B4 05 41
97 1E B8 41 90 7A E1 41 96 8F 57 46 E6 2E 80 00
00 01 16 7A 53 7C 80 FF FF
Run Code Online (Sandbox Code Playgroud)

其结构是:

DATA, TYPE, DESCRIPTION

00 00 …
Run Code Online (Sandbox Code Playgroud)

python binary-data

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

平行,但速度较慢

我正在使用monte carlo方法来计算pi,并使用并行编程和openmp进行基本体验

问题是,当我使用1个线程,x次迭代时,总是比n次线程,x次迭代运行得更快.谁能告诉我为什么?

例如,代码像"a.out 1 1000000"一样运行,其中1是线程,1000000是迭代

include <omp.h>
include <stdio.h>
include <stdlib.h>
include <iostream>
include <iomanip>
include <math.h>

using namespace std;

int main (int argc, char *argv[]) {

double arrow_area_circle, pi;
float xp, yp;
int i, n;
double pitg= atan(1.0)*4.0; //for pi error
cout << "Number processors: " << omp_get_num_procs() << endl;

//Number of divisions
iterarions=atoi(argv[2]); 
arrow_area_circle = 0.0;

#pragma omp parallel num_threads(atoi(argv[1]))
{
srandom(omp_get_thread_num());

#pragma omp for private(xp, yp) reduction(+:arrow_area_circle) //*,/,-,+
for (i = 0; i < iterarions; i++) …
Run Code Online (Sandbox Code Playgroud)

parallel-processing multithreading pi openmp montecarlo

5
推荐指数
3
解决办法
2069
查看次数

在Snow Leopard下设置Macports mysql5

我设法让我的安装全部搞砸了,因为我是一个新手,搞砸是我擅长的.

1)任何人都可以为这些东西参考一套可靠的设置说明吗?

2)我可以通过macports卸载并从头开始(密码和所有)吗?在尝试unistall,WTF之后,我尝试了一堆mysql目录!

3)mysqld.sock需要驻留在哪里以及我需要应用哪些文件设置才能让它与php5和apache2一起玩得很好?它是否存在于/ tmp或/ opt/local/var/run/mysql5 /中?我需要配置/opt/local/etc/php5/php.ini吗?选择/本地的/ var/DB/PHP5/mysql.ini?/opt/local/etc/mysql5/my.cnf?

4)我运行了> sudo -u mysql mysql_install_db5.如果我再次运行它会搞砸我吗?我运行了mysqladmin -u root密码'mypw',并收到一条错误消息,指出mysql无法通过套接字连接.这是否意味着我的密码现已设置?我有办法告诉你吗?

5)密码语句的语法从博客变为博客.我的密码是'mypw'还是mypw(没有引号)?(我的密码实际上不是mypw)

6)启动和停止mysql的适当命令是什么?我的机器启动时我不希望它启动.


谢谢Jergason,这非常有帮助.

我真的希望与mysql的macports安装保持一致,因为它限制了我可以对我的机器造成的伤害.

所以现在突出的问题是......

1)macports mysql安装的默认套接字位置是什么?

2)启动和停止mysql的适当命令是什么?我的机器启动时我不希望它启动.一些博客说使用launchctl -load其他人说sudo/path/mysql_safe5.如果您没有设置密码(因为我不打算),您是否需要使用-user -p参数?

3)使macports mysql正常工作所需的目录所有权和权限是什么.似乎macports没有设置任何一个.


Nerdling

检查/ tmp是否为MacPorts mysql套接字

没用.如前所述,我知道/ tmp是套接字的默认位置.我的问题是,当我尝试启动mysql时套接字没有实现,也没有出现在/ opt/local/var/run/mysql5 /中.这告诉我启动mysql有问题,这意味着设置有问题.可能是什么,我不知道.我担心我不是天生具有这种事物的先验知识.

- 在Snow Leopard下使用macports进行mysql5安装的套接字应该是什么SPECIFIC目录?

如果你正在使用5个不同网站的关于如何运行mysql的提示,你会感到惊讶,你已经迷失了......好吧,我只是试着一次只关注一个网站并在之前退出所有更改去下一个.

没用.我完全按照你的建议开始做了.你觉得我做了什么,混合搭配5个博客的说明?这就是我询问干净卸载的原因.我想知道先前安装的状态更改是否会影响将来的"干净"安装.

- 什么SPECIFIC博客描述了使用Snow Leopard下的macports确认的mysql5安装程序.

我认为你使用MacPorts mysql唯一的问题(你有什么问题?)是它有一个你不期望它的套接字,并且它使用默认配置.

没用.我也是,看我原来的帖子.我认为问题在于mysql是如何启动的(或者没有启动).

- 您对如何解决问题有任何具体的建议吗?

这应该在MacPorts完成安装后解释.

没用.它不是,或者如果是的话,我没有看到它.也许是因为我在使用Porticus.

-你可以再详细一点吗?在什么时候我应该看到什么消息?

请参阅$ {prefix}/share/doc/mysql5 /获取想法和/或联系开发人员列表.还要考虑联系端口的维护者; 自从他们管理它们以来,他们可能最了解它.

没用.RTM,谷歌是你的朋友,所有这一切.是的,先去那里.虽然我承认我可能忽略了一些事情,因为当我确定我的问题很简单时,我还有其他工作要做的时候,我不想花几天时间阅读一些写得不好的文档.

  • 如果你想给我一个我可能忽略的特定文件,那将会有所帮助.

我希望像Jergason提供的一些简单,专注的帮助.我(和其他人读到这篇文章)赞赏杰格森愿意传达他的知识,以加速新技术人员的学习过程.对他来说,知识是基本的,但对于新来者来说,这是一个节省大量时间.智力的真正标志是理解技术知识不是先验的,即使是基本的帮助也是非常有帮助的.再次感谢J-man.

mysql macports osx-snow-leopard

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

我应该如何设计我的对象模型,以便我的DAL可以填充只读字段?

为了区分问题,在我当前的项目中,我决定在单独的程序集中完全分离我的DAL和BLL/Business对象.我希望将我的业务对象保持为简单的结构,而没有任何逻辑可以使事情变得非常简单.我想如果我可以将我的业务逻辑与我的DAL分开.所以我的应用程序将告诉我的DAL加载我的对象,我的DAL将运行到数据库并获取数据,用数据填充对象,然后将其传递回我的BLL.

问题 - 如何将DAL放在单独的程序集中并将数据推送到只读字段?

  • 如果我将getter设置为protected,那么继承的对象可以访问它,这实际上并不是我想要的,因为我将返回继承的对象类型,而不是原始的对象类型.
  • 如果我将getter设置为internal,那么我的DAL必须与我不想要的BLL位于同一个程序集中.
  • 如果我将getter设置为public,那么当应该只读取时,任何人都可以读取/写入它.

编辑:我注意到我可以有一个返回类型的ObjectBase,但实际上是返回一个对象或从ObjectBase派生的对象集合,所以对外界(在我的DAL之外)属性将是只读的,但我的派生类型(只能在我的DAL中访问)属性实际上是读/写.

.net c# asp.net

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

您可以在C中定义运行时数组的大小

C的新手,非常感谢您的帮助.

是否可以在C中定义数组而无需指定其大小或初始化它.

例如,我可以提示用户输入数字并将它们存储在int数组中吗?我不知道他们预先输入了多少号码.

我现在能想到的唯一方法是定义最大尺寸,这不是一个理想的解决方案......

c malloc dynamic-memory-allocation

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

正确的方法来配置BitmapSource

你应该怎么处理BitmapSource?

// this wont work because BitmapSource doesnt implement IDisposable
using(BitmapSource bitmap = new BitmapImage(new Uri("myimage.png")))
{
}
Run Code Online (Sandbox Code Playgroud)

c# wpf bitmapimage .net-3.5

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

在shell脚本中运行命令

我有一个shell脚本文件(run.sh),其中包含以下内容:

#!/bin/bash
%JAVA_HOME%/bin/java -jar umar.jar
Run Code Online (Sandbox Code Playgroud)

当我尝试运行它(./run.sh)时,它给了我以下内容:umar/bin/run.sh:line 1:fg:没有作业控制

但是,如果我直接在shell上运行相同的命令,它可以完美地工作.

脚本文件有什么问题?

谢谢

linux shell command-line

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