标签: libraries

Haskell库概述及其质量

我想在生产中使用Haskell.它有很多图书馆,但并非所有图书馆都是稳定的,随时可用且发展良好的.一些有趣概念的图书馆具有实验地位.许多库仍然是次要版本(例如0.0.1).其中一些人刚刚放弃了.Hackage太大而无法监控它们,所以我需要简要介绍一下当前库的状态,它们的前景和适用性.

我理解这个问题非常广泛,但这些信息对任何人都有用.在这里,我们可以一点一点地收集信息,然后将其用于提供信息性的论文.

那么我可以使用哪些库:

  • 能够处理数百万件物品的快速阵列
  • 快速而强大的地图(可能是Data.Map?)
  • 快速,通用和方便的树木
  • 队列,哈希表
  • 常用表达
  • 有限状态机
  • 神经网络,遗传算法
  • 数学计算
  • 物理学(可用于游戏开发)
  • GUI
  • 图像处理(实际上我们有各种图像格式)
  • 使用数据库(可能是ORM或某些DSL来生成SQL)
  • 功能反应式编程
  • OpenGL绑定(是的,HOpenGL很好),OpenAL和OpenCL绑定
  • 解析(Parsec我觉得很棒)
  • 多线程和并行编程
  • 网络
  • 多用途游戏引擎
  • 别的什么?

拥有以下工具的有趣之处:

  • 测试(QuickCheck)
  • 记录(也许是hslogger)
  • 剖析
  • 调试

这里是类似主题的链接:

其他链接

谢谢.

haskell libraries

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

来自androidx和com.android.support的重复类

我最近更新了我的Android Studio(并且我非常确定Gradle版本),现在在尝试编译项目时遇到了很多错误。这是目前困扰我的那个:

Duplicate class android.support.v4.app.INotificationSideChannel found in modules classes.jar (androidx.core:core:1.0.1) and classes.jar (com.android.support:support-compat:26.1.0)

其次是很多类似的。

我尝试删除所有com.android.support有利于androidx的使用(有关使用替换事物的信息,请参见此处),但是com.android.support即使删除了库,库仍在使用中(一旦尝试再次编译,它们将被重新制作)。

这是我得到的全部错误的链接。

android libraries android-studio android-gradle-plugin androidx

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

成为一名称职的scala程序员是否要求你成为一名称职的java程序员?

我是美学上Scala的忠实粉丝,并且在很多概念性工作中都投入了诸如打字系统和库之类的东西.

然而,当我开始修改Scala(并看到我的一些同事修补它)时,我发现自己不得不挖掘越来越多的Java知识(尤其是图书馆的方式).

这给我带来了一些问题:

  • 从来没有成为Java程序员,我对Java标准库或其他流行的库(如Apache Commons)不熟悉或不熟悉.
  • 我在Java领域的google-fu很弱.很难知道要搜索什么 - 这个问题因为大量无关紧要或基本的Java编程新手编程教程而加剧了.

在这一点上,我不确定我是否应该咬紧牙关并尝试通过Java找到最快最全面的游览来吸引自己20年的Java开发,或者是否合理继续尝试逐步修补我的Java知识,因为我在斯卡拉附近徘徊.

斯卡拉在我们中间所能提供的任何智慧都会受到高度赞赏.

PS我毫不怀疑我能够熟悉Scala语法,并且我对scala社区中的函数式编程和范例非常满意.但程序员的能力不仅仅基于一个人自我教育的能力,还有一个人的学习能力,并采用其他人的工具和技能.

java scala libraries

40
推荐指数
4
解决办法
2431
查看次数

与NetworkX相关的可扩展性问题是什么?

我对拥有数百万个节点和数千万个边缘的大型网络进行网络分析感兴趣.我希望能够执行诸如从多种格式解析网络,查找连接组件,检测社区以及运行像PageRank这样的中心度量之类的事情.

我被NetworkX所吸引,因为它有一个很好的api,良好的文档,并且多年来一直在积极开发.另外,因为它是在python中,它应该快速开发.

在最近的一个演示文稿中(幻灯片可以在github上找到),它声称:

与许多其他工具不同,NX旨在处理与现代问题相关的规模数据...... NX中的大多数核心算法都依赖于极快的遗留代码.

该演示文稿还指出NetworkX的基本算法是在C/Fortran中实现的.

但是,看一下源代码,看起来NetworkX主要是用python编写的.我对源代码不太熟悉,但我知道有几个例子,其中NetworkX使用numpy进行繁重的提升(后者又使用C/Fortran进行线性代数).例如,该文件networkx/networkx/algorithms/centrality/eigenvector.py使用numpy来计算特征向量.

有没有人知道这种调用优化库如numpy的策略是否在整个NetworkX中非常流行,或者只是少数算法呢?任何人都可以描述与NetworkX相关的其他可扩展性问题吗?

来自NetworkX首席程序员的回复 我在NetworkX邮件列表上提出了这个问题,Aric Hagberg回答说:

NetworkX中使用的数据结构适合于扩展到大问题(例如,数据结构是邻接列表).算法具有各种缩放属性,但您提到的一些属性是可用的(例如,PageRank,连接的组件,边缘数量是线性复杂度).

此时,NetworkX是纯Python代码.邻接结构使用Python字典编码,以牺牲内存和计算速度为代价提供了极大的灵活性.大图会占用大量内存,最终会耗尽.

NetworkX确实将NumPy和SciPy用于主要基于线性代数的算法.在那种情况下,使用NumPy矩阵或SciPy稀疏矩阵将图表表示(复制)为邻接矩阵.这些算法可以受益于NumPy和SciPY中使用的传统C和FORTRAN代码.

python graph social-networking libraries

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

包与图书馆

我刚刚开始使用CMake,我注意到他们同时拥有a find_package和a find_library.这让我很困惑.有人可以解释编程世界中包和库之间的区别吗?或者,在CMake的世界?

伙计们,欣赏吧!

cmake package libraries difference

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

在哪里放置第三方库来设置c ++ linux开发环境?

我不是C++的新手,尽管我是Linux新手.我正在使用CMake与一些第三方预编译一个跨平台的游戏引擎,但我对使用库有很多疑问.我的问题是如何与第三方图书馆合作.在哪里放这个库.Apt在他们的官方位置安装libs(/ usr/local,/ usr/lib/..)但我使用本地库中的本地库在我的项目目录中开发.

另外,我需要一个很好的教程来了解库的工作原理.例如:当试图编译我的项目时,luabind通过liblua.s0.1询问,但是AFAIK没有办法用lua提供的源生成这个库(至少做make,make install).

我知道,这个问题很模糊,但我没有足够的经验来更简洁.

更新:阅读sombe答案后,更简洁的问题如下.如果我安装所有第三方库,我该如何分发我的程序?如何在不使用大型自述文件的情况下管理家属?

感谢所有强文

c++ linux libraries

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

如何在.NET 6库中引用ASP.NET Core 6类型?

我正在为我的组织开发内部图书馆。我需要引用通常“属于”网络应用程序的某些类型,例如。提供一些扩展:

  • WebApplicationOptions
  • HttpContext

如果我使用<Project Sdk="Microsoft.NET.Sdk">,我没有对这些类型的引用,也找不到包含它们的任何 nuget 包。如果我使用<Project Sdk="Microsoft.NET.Sdk.Web">,我无法构建我的类库,因为它被视为应用程序并且必须指定入口点。

所以,我的一般问题是:为 ASP.NET Core 6 编写库的正确方法是什么?

回到 core 2.x 时代,所有东西都有软件包,比如Microsoft.AspNetCore.Http.Abstractions. 它们都停留在版本上2.2.0,我认为它们现在无法使用?

c# package libraries .net-core asp.net-core

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

Gradle无法在Android Studio中解析库

我想在Android Studio中包含一个库,但它显示如下错误:

"无法解决:com.lemonlab:expandable-button-menu:1.0.0"

如何解决这个问题?

    apply plugin: 'com.android.application'

    android {
        compileSdkVersion 21
        buildToolsVersion '21.1.2'

        defaultConfig {
            applicationId "ayowes.com.newecampus"
            minSdkVersion 15
            targetSdkVersion 21
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android-ptimize.txt'), 'proguard-rules.txt'
            }
        }
    }

    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:21.0.3'
        compile 'com.google.android.gms:play-services:6.5.87'
        compile 'com.lemonlab:expandable-button-menu:1.0.0'
        compile files('libs/pinchzoom.jar')
    }
Run Code Online (Sandbox Code Playgroud)

android gradle libraries

35
推荐指数
7
解决办法
10万
查看次数

如何在不使用IDE的情况下在java中包含库

如何在不使用像Netbeans这样的IDE的情况下在我的java程序中导入库?在Netbeans中,我这样做: 在此输入图像描述

如何通过使用notepad ++或程序员的记事本来实现同样的目的.尽可能我不想使用NetBeans,因为这将是矫枉过正,因为我只是在工作的简单的项目.

java libraries

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

用Scala进行Web Scraping

只是想知道是否有人知道利用Scala简洁语法的网络抓取库.到目前为止,我已经找到了Chafe,但这看起来很难记录和维护.我想知道是否有人在那里使用Scala进行刮擦并提出建议.(我正在尝试集成到现有的Scala框架中,而不是使用Python中编写的scraper.)

scala libraries web-scraping

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