How to set up a hackage mirror1. cd to a clean directory where you want your hackage mirror to be2. Download package index:wget http://hackage.haskell.org/packages/archive/00-index.tar.gz3. This package index contains .cabal files of all pack... 続きを読む
I interactively build a simple B-tree data structure in Haskell, implementing insertion and deletion, using a GADT to ensure that I maintain the structural invariant. You can also download the MP4 video, as well as the slides I used for my YO... 続きを読む
Ben Lippmeier benl at ouroborus.net Mon Apr 22 04:29:29 CEST 2013 Previous message: [Haskell-cafe] Stream fusion and span/break/group/init/tails Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] On 22/04/2013, at 12:23 , "Edward ... 続きを読む
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 {-# LANGUAGE StandaloneDeriving, FlexibleContexts, UndecidableInstances #-} 続きを読む
hackageDBbeamable-0.1.0.0: Generic serializer/deserializer with compact representation The beamable packageYet another binary serialization library. Beamable provides efficient and fast serialization, often requiring less space than alternati... 続きを読む
This is a nice little research project, and I hope you learn a lot from it. Having written algorithmic trading systems I think you are missing on a couple of central points: 1. There is no such thing as the "best" algorithmic trading platform... 続きを読む
(Exploring typed language design in Haskell)2010 (C) Ralf Lämmel & Oleg Kiselyov Slides [.pdf]: 1 slide/page, 4 slides/page. Video [.mov]: [.mov]. Refined inquiry on the Expression Problem Homogeneous vs. heterogeneous lists Complexity of typ... 続きを読む
2012年に PLDI 2013 に投稿され惜しくも reject されてしまった "Haskell beats C" とその実装の紹介です。(その後、ICFP 2013 に再投稿されました。) by shelarcy 続きを読む
Vinyl is a general solution to the records problem in Haskell using type level strings and other modern GHC features, featuring static structural typing (with a subtyping relation), and automatic row-polymorphic lenses. All this is possible w... 続きを読む
limit my search to /r/haskellsubreddit:subredditfind submissions in "subreddit"author:usernamefind submissions by "username"site:example.comfind submissions from "example.com"url:textsearch for "text" in urlselftext:textsearch for "text" in s... 続きを読む
limit my search to /r/haskellsubreddit:subredditfind submissions in "subreddit"author:usernamefind submissions by "username"site:example.comfind submissions from "example.com"url:textsearch for "text" in urlselftext:textsearch for "text" in s... 続きを読む
Take a look at repa source code: major part of functions has different phase control numbers: 0, 1, 2, 4. But there aren't any RULES in the package. – leventov Jan 22 at 6:30 @leventov: repa may not define rules, but it's based on vector, wh... 続きを読む
The absurd function in Data.Void has the following signature, where Void is the logically uninhabited type exported by that package: -- | Since 'Void' values logically don't exist, this witnesses the logical -- reasoning tool of \"ex falso qu... 続きを読む
Saturday, July 23, 2011 Profunctors in Haskell > {-# LANGUAGE TypeSynonymInstances, RankNTypes, ExistentialQuantification #-} Introduction When I wrote about coends a while back I made up a term 'difunctor'. More recently it was pointed out t... 続きを読む
Towards Safe and Efficient Functional Reactive Programming This page contains the accompanying code for my thesis "Towards Safe and Efficient Functional Reactive Programming". Agda The Agda code is available as a tarball, or it can be browsed... 続きを読む
Don Stewart dons00 at gmail.com Tue Mar 19 20:36:03 CET 2013 Previous message: [Haskell-cafe] Streaming bytes and performance Next message: [Haskell-cafe] Streaming bytes and performance Messages sorted by: [ date ] [ thread ] [ subject ] [ a... 続きを読む
What this talk covers The bytestring library strict and lazy bytestrings the new bytestring builder (to be included in version 0.10.0.0, repo, preview docs ) their use cases, implementation, memory layout, and other stuff that’s good to know... 続きを読む
Our goal during the design of the Haskell Foreign Function Interface (FFI) was simplicity: to provide a minimal, policy-free set of mechanisms to call non-Haskell code via C calling conventions from Haskell and vice versa. Then, on top of the... 続きを読む
{-# LANGUAGE QuasiQuotes, TypeFamilies, GeneralizedNewtypeDeriving, TemplateHaskell, OverloadedStrings, FlexibleContexts, GADTs #-} import Data.Conduit (($$), ($=), runResourceT) import qualified Data.Conduit.List as CL import Database.Persis... 続きを読む
Happstack, Fay, & Acid-State: Shared Datatypes are Awesome Haskell is slowly moving onto the browser -- and that is very exciting. We have Fay, GHCJS, UHCJS, Haskell-like languages such as Elm, and more! In this post I want to demonstrate two... 続きを読む
This post is in Literate Haskell. The entire contents can be copied into a file called PatternMaybe.lhs and will be compilable by GHC. The code from this post is available on Hackage, in the first-class-patterns library. In my previous post I... 続きを読む
Get Started Learn how to build concurrent, distributed programs with Cloud Haskell Learn more Cloud Haskell: Erlang-style concurrent and distributed programming in Haskell. The Cloud Haskell Platform consists of a generic network transport AP... 続きを読む
Text.ProseDoc Text.ProseDoc is a tool that reads markdown formatted comments from a Haskell source file and composes the comments and the associated source into a HTML document where the prose and source flow side by side in sync. The concept... 続きを読む
Tomas Petricek, Dominic Orchard and Alan Mycroft Submitted to ESOP 2013 Monadic typing provides a unified way of tracking effects of computations, but there is no unified mechanism for tracking how computations rely on the environment in whic... 続きを読む
aeson (≥0.6.0.2), attoparsec (≥0.8.6.1), base (>4 & <5), bytestring, containers, mtl (2.*), QuickCheck (≥2.4.2 & <2.5), regex-pcre (≥0.94.4), syb (≥0.3.6.1), template-haskell, text (≥0.11.1.0), th-lift (≥0.5.5 & <0.6), transformers (≥... 続きを読む
I gave a talk on “Machines” and stream processing in Haskell and Scala, to the Brisbane Functional Programming Group at Microsoft HQ in December 2012. A lot of people have asked me for the slides, so here they are: Machines.pdf The preëmpti... 続きを読む
I want to tackle some image-processing problems in Haskell. I'm working with both bitonal (bitmap) and color images with millions of pixels. I have a number of questions: On what basis should I choose between Vector.Unboxed and UArray? They a... 続きを読む
Extensible Records for Haskell (GHC 7.6). Pull requests welcome! 続きを読む
From a library implementor's perspective, the way to debug this is to create a wrapper for the suspect operation, then look at the core code to see if fusion has worked. -- Main.hs --------------------------------------------------- import So... 続きを読む
Repa (REgular PArallel arrays) Repa provides high performance, regular, multi-dimensional, shape polymorphic parallel arrays. All numeric data is stored unboxed. Functions written with the Repa combinators are automatically parallel provided ... 続きを読む
Loop fusion in Haskell Roman Leshchinskiy Programming Languages and Systems University of New South Wales What is this about? What I do Data Parallel Haskell compiles nested data-parallel programs to flat data-parallel ones lots of arrays an... 続きを読む
Repa is a Haskell library for high performance, regular, multi-dimensional parallel arrays. All numeric data is stored unboxed and functions written with the Repa combinators are automatically parallel (provided you supply "+RTS -N" on the co... 続きを読む
Vector is a Haskell library for working with arrays. It has an emphasis on very high performance through loop fusion, whilst retaining a rich interface. The main data types are boxed and unboxed arrays, and arrays may be immutable (pure), or ... 続きを読む
[Haskell-cafe] Seeking feedback for a tutorial paper draft about GADTs Anton Dergunov anton.dergunov at mail.ru Tue Jan 8 20:07:48 CET 2013 Previous message: [Haskell-cafe] What happened to first-class modules? Next message: [Haskell-cafe] Se... 続きを読む
There are lots of optimization opportunities in a statically typed, purely functional language. This post describes an approach that improves the performance of off-the-shelf Haskell list functions by about 25% on average. The code is availab... 続きを読む
limit my search to /r/haskellreddit:subredditfind submissions in "subreddit"author:usernamefind submissions by "username"site:example.comfind submissions from "example.com"url:textsearch for "text" in urlselftext:textsearch for "text" in self... 続きを読む
README.md Overview Projects such as cloud-haskell or acid-state crucially rely on performant, generic serialization. As I've developed the new bytestring builder, I wondered what speedup I could gain using it for encoding a Haskell value to a... 続きを読む
I need a function which takes an arbitrary number of arguments (All of the same type), does something whith them and afterwards gives a result back. A list of arguments is impracticable in my specific case. As I looked through the haskell lib... 続きを読む
Suppose I want to price a call option using a finite difference method and repa then the following does the job: import Data.Array.Repa as Repa r, sigma, k, t, xMax, deltaX, deltaT :: Double m, n, p :: Int r = 0.05 sigma = 0.2 k = 50.0 t = 3.... 続きを読む
Ryan Ingram ryani.spam at gmail.com Tue Nov 1 01:33:14 CET 2011 Previous message: [Haskell-cafe] lazy A-star search Next message: [Haskell-cafe] arr considered harmful Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] I know it's... 続きを読む
hackageDBtemporary-1.1.2.4: Portable temporary file and directory support for Windows and Unix, based on code from Cabal The temporary packageThe functions for creating temporary files and directories in the base library are quite limited. Th... 続きを読む
The linux-perf packageThis library is for parsing, representing in Haskell and pretty printing the data file output of the Linux perf command. The perf command provides performance profiling information for applications running under the Linu... 続きを読む
The igraph packageComplete bindings to all functions about graph properties of the igraph C library. Requires igraph 0.6. PropertiesVersion 続きを読む
Static Analysis and Code Optimizations in Glasgow Haskell Compiler — Presentation Transcript Static Analysis and Code Optimizationsin Glasgow Haskell Compiler Ilya Sergey ilya.sergey@gmail.com 12.12.12 1 The GoalDiscuss what happens when we ... 続きを読む
Wolfgang Jeltsch Temporal Logic with “Until”, Functional Reactive Programming with Processes, and Concrete Process Categories 7th ACM SIGPLAN Workshop on Programming Languages Meets Program Verification January 22, 2013 (paper) Wolfgang Jel... 続きを読む
hello mum");a.close()},find_slide_number:function(e){var c=e.indexOf("#");if(cthis.slides.length){a=1}if(--athis.slides.length){a=1}if(--a0){a=w3c_slidy.slides[w3c_slidy.slide_number];w3c_slidy.hide_slide(a);w3c_slidy.slide_number=w3c_slidy.s... 続きを読む
Join the Community Is the documentation not quite up to snuff? Did we screw something up? We're only human. Help us help you. Visit us on IRC Raise an Issue This package provides families of lenses, isomorphisms, folds, traversals, getters an... 続きを読む
This week I gave a talk at the Tech Mesh conference:Multi-core with less Pain: Deterministic Parallel Programming with Haskell. Slides (pdf)(video will be available later)Abstract:You want to make your code run faster, so you think about chan... 続きを読む
Summary Bryan O'Sullivan introduces some of the technologies pioneered in the Haskell community to streamline software development and reduce operational costs, while producing beautiful code. Bio Bryan O'Sullivan is an Irish hacker, writer, ... 続きを読む
It’s quite obvious to me that the treatment of exceptions in Haskell is wrong. Setting aside the example I gave before of an outright unsoundness, exceptions in Haskell are nevertheless done improperly, even if they happen to be sound. One... 続きを読む
Google+ を使用すると、適切な情報を適切なユーザーと共有できます。 サークル ゲーム ストリーム ハングアウト 写真 イベント 続きを読む
Hi, I'd like to know a bit about the STM implementation in GHC, specifically about how it tries to achieve fairness. I've been reading "Composable Memory Transactions" but it does not contain that much details on this specific matter. What I ... 続きを読む
Figure 5.3: The syntax of Core A typical structure for a compiler for a statically-typed language is this: the program is type checked, and transformed to some untyped intermediate language, before being optimised. GHC is different: it has a ... 続きを読む
conduit provides the transPipe function in order to allow pipes with different underlying monads to interact. However, some of the semantics of this function are surprising. In particular, it will run the monad modification function multiple ... 続きを読む
Changed 2 years ago by simonmar priority changed from normal to high os changed from Windows to Unknown/Multiple milestone set to 6.14.1 I can't see a way to fix this in the implementation of Chan while retaining the properties and the other ... 続きを読む
Hask is the category of Haskell types and functions. The objects of Hask are Haskell types, and the morphisms from objects 続きを読む
Most of the packages in Hackage have trivial Setup.hs or Setup.lhs program files. In creating a list of Setup file examples, I'm filtering out these trivial Setup files, defined as having: main = defaultMain or main = defaultMainWithHooks, wi... 続きを読む
Haskell eXchange 2012: Lennart Augustsson on Making EDSLs fly Making EDSLs fly In this talk, Lennart will show how to implement a toy EDSL (Embedded Domain Specific Language) in Haskell. First, we will look at how to get a typed DSL embedded ... 続きを読む
Haskell eXchange 2012: Simon Marlow on High performance concurrency High performance concurrency The Haskell community could be justifiably accused of navel-gazing, that is, spending inordinate amounts of time designing beautiful programming ... 続きを読む
Summary: the :.: type from generic-deriving/GHC.Generics precludes the use of indexed datatypes inside of the represented datatypes; I propose a way to lift that restriction, but don’t have a compelling example that needs the added exressivi... 続きを読む
Haskell Symposium @ ICFP 2012. Richard Eisenberg: Dependently typed programming with singletons. 続きを読む
Friday, May 4, 2012 How to write hybrid CPU/GPU programs with Haskell What’s better than programming a GPU with a high-level, Haskell-embedded DSL (domain-specific-language)? Well, perhaps writing portable CPU/GPU programs that utilize both ... 続きを読む
Friday, January 20, 2012 Talk: A guided tour through the bytestring library Yesterday, I held a talk about the bytestring library at the Zurich HaskellerZ meetup group. The goal of the talk was to enable the audience to write efficient code b... 続きを読む
Haskell is a great language for writing and supporting embedded Domain Specific Languages (DSLs). Some form of observable sharing is often a critical capability for allowing so-called deep DSLs to be compiled and processed. In this paper, we ... 続きを読む
Haskell Implementors Workshop 2012 (@ ICFP). Simon Peyton Jones: GHC Status Update. 続きを読む
Tuesday, July 31, 2012 Free monad transformers I'm spinning off the Control.Monad.Trans.Free module from pipes into its own package: transformers-free. Some people requested this because they wanted to experiment with the FreeT type in their ... 続きを読む
Saturday, June 9, 2012 Why free monads matter Interpreters Good programmers decompose data from the interpreter that processes that data. Compilers exemplify this approach, where they will typically represent the source code as an abstract sy... 続きを読む
Max Bolingbroke batterseapower at hotmail.com Sun Jun 27 05:54:08 EDT 2010 Previous message: [Haskell-cafe] Space leak with unsafePerformIO Next message: [Haskell-cafe] Re: The mother of all functors/monads/categories Messages sorted by: [ da... 続きを読む
I often have the luxury of finding all sorts of underdocumented compile errors in GHC, and today was no exception. This wasn’t the first time I’ve hit this one in particular but it’s the first time I didn’t have a easy work around. Let’s... 続きを読む
Existential Pontification and Generalized Abstract Digressions Have you ever wondered how the codensity transformation, a surprisingly general trick for speeding up the execution of certain types of monads, worked, but never could understand ... 続きを読む
Mutable variables vs. the type system Having adopted the purely functional point of view on programming, I don’t like mutable variables very much. But there is something strange about them that goes far beyond their mutability: somehow, they... 続きを読む
Subject: Re: [Haskell-cafe] Codensity improvement of free monads - msg#00904 List: haskell-cafe@haskell.org On Mon, Jan 25, 2010 at 7:37 PM, Luke PalmerÂ<lrpalmer@xxxxxxxxx>Âwrote: Hello haskell-cafe, I have just read "Asymptotic Improvement ... 続きを読む
hackageDBhermit-0.0: Haskell Equational Reasoning Model-to-Implementation Tunnel The hermit packageHERMIT uses Haskell to express semi-formal models, efficient implementations, and provide a bridging DSL to describe via stepwise refinement th... 続きを読む
I’m very pleased to announce a preview release of esqueleto, a bare bones, type-safe EDSL for SQL queries. On the first part of this blog post I’ll talk about persistent and HaskellDB. You may jump right into where I talk about esqueleto if... 続きを読む
Introduction The GHCi Debugger has a :print command that inspects data structures at runtime. Evaluation is not forced, so there are no side effects. $ ghci GHCi, version 7.4.2: http://www.haskell.org/ghc/ :? for help λ> let a = [1..3] λ> :pr... 続きを読む
リアクティブプログラミングって何? 時刻によって変化する値を使って計算する x = mouse_position.x y = mouse_position.y sum = x + y printf("(%d, %d); sum=%d", x, y, sum) 入力が変わるたびに再計算 用途: UI、シミュレーションなど Haskell/ML上のリアク... 続きを読む
base (4.*), comonad (3.0.*), containers (≥0.3 & <0.6), free (≥3.1.1 & <3.2), mtl (≥2.1.1 & <2.2), profunctors (3.0.*), semigroups (≥0.8.3 & <0.9), transformers (0.3.*) 続きを読む
haskell | 01:46Haskellでのデバッグといえばprintfデバッグなのではないかと思う。printfデバッグは大抵の場合うまくいくが、多相的な関数を書いているときは不便なことがある。表示したい値を文字列にする手段がない場合だ。 import Debug.Trace import Data.... 続きを読む
It’s time to celebrate! I have just released version 0.7.0.0 of my reactive-banana library on hackage! This version is a big step forward as it features dynamic event switching, which means that you can now make an event which contains other... 続きを読む
Summary EventLog is a fast, extensible event logging framework in the GHC run-time system (RTS) to support profiling of GHC run-time events. The GHC User's Guide describes how to enable event logging, after the program is linked with eventlog... 続きを読む
In order to derive the type signature lenses, and to motivate generalizing these combinators to work on a much wider menagerie of types, we'll take a bit of an excursion through other types and typeclasses you may already be familiar with. Fr... 続きを読む
Lens Tutorial Lenses are a form of functional reference that provide the ability to compose them. Ignoring the implementation for the moment, lenses provide us with two operations: view :: Simple Lens a b -> a -> b set :: Simple Lens a b -> b... 続きを読む
Debugging GHC-compiled code with gdb If you're working on a GHC port, tweaking the runtime, or modifying the code generator, at some point you will have to become familiar with how to use gdb for debugging crashes in GHC-compiled programs. T... 続きを読む
Dismiss Octotip: You've activated the file finder by pressing t Start typing to filter the file list. Use ↑ and ↓ to navigate, enter to view files. 続きを読む
hackageDBfay-0.1.0.0: A compiler for Fay, a Haskell subset that compiles to JavaScript. The fay packageFay is a strict subset of Haskell which can be compiled (type-checked) with GHC, and compiled to JavaScript. PropertiesVersion 続きを読む
by Neil Mitchell TagSoup is a library for parsing HTML/XML. It supports the HTML 5 specification, and can be used to parse either well-formed XML, or unstructured and malformed HTML from the web. The library also provides useful functions to ... 続きを読む
Apache/2.2.9 (Debian) mod_perl/2.0.4 Perl/v5.10.0 Server at community.haskell.org Port 80 続きを読む
Elm: Concurrent FRP for Functional GUIs Evan Czaplicki 30 March 2012 Abstract Graphical user interfaces (GUIs) mediate almost all of our interactions with computers, whether it is through web pages, phone apps, or desktop applications. Funct... 続きを読む
hackageDBnewtype-0.2: A typeclass and set of functions for working with newtypes. The newtype packagePer Conor McBride, the Newtype typeclass represents the packing and unpacking of a newtype, and allows you to operatate under that newtype wi... 続きを読む
Add comments to Hackage package pages I've tested it on Firefox 13 and Chrome 18. Install now! To comment on a specific version of a package, just go to that URL /package/the-package-x.y.z. If enough people find it useful, it's easy to stick ... 続きを読む
An Adaptation of the GTK+ 2.0 Tutorial by Tony Gale Ian Main & The GTK Team Versión en español Table of Contents 1. Introduction 2. Getting Started 3. Packing 3.1 Packing Widgets 3.2 Packing Demonstration Program 3.3 Packing Using Tables 4. M... 続きを読む
GHC 7.2 includes improved support for datatype-generic programming through two new features, enabled with two new flags: DeriveGeneric and DefaultSignatures. We show how this all works in this page, starting with a detailed example. Since thi... 続きを読む
The effects packageControl.Effects is a library for programming with effects, like in the the Eff language by Andrej Bauer and Matija Pretnar. Effects can be used instead of monad transformers. See the home page for some example code. Propert... 続きを読む
[Haskell] ANNOUNCE: forthcoming O'Reilly book on Parallel and Concurrent Haskell Simon Marlow marlowsd at gmail.com Thu May 17 11:21:58 CEST 2012 Previous message: [Haskell] Haskell Weekly News: Issue 227 Messages sorted by: [ date ] [ thread... 続きを読む
Parallel and Concurrent Programming in Haskell (Simon Marlow) CEFP 2011, volume 7241 of LNCS, pages 339--401, 2012Haskell provides a rich set of abstractions for parallel and concurrent programming. This tutorial covers the basic concepts inv... 続きを読む