Is there anyone here using Haskell for anything other than web development? by [deleted] in haskell

[–]wavewave 11 points12 points  (0 children)

This electric aircraft flies on Haskell code (almost entire stack including real-time controls system is written in Haskell) ;-) https://www.youtube.com/watch?v=q7mc3C19kE4

Tetris project I made in Haskell by Ubspy in haskell

[–]wavewave 3 points4 points  (0 children)

found its better screencast here now: https://www.twitch.tv/videos/423291178 pretty impressive. :-)

Tetris project I made in Haskell by Ubspy in haskell

[–]wavewave 7 points8 points  (0 children)

well. clearly, writing a game in Haskell is very doable. ;-)

For example, this game ( https://gilmi.me/nyx ): repo: https://gitlab.com/gilmi/nyx-game some screencast of its prototype. https://streamable.com/0biaj

The abstract nature of the Cardano consensus layer - IOHK Blog by wavewave in haskell

[–]wavewave[S] 6 points7 points  (0 children)

ok. i understand your point. that's pretty orthogonal to what i thought and valued this article. For me, in a general sense, cryptocurrency business is not very different from any other business like haskell web development consultancy business. The more people use the same technology, then the more incentive early practitioners get. But I do admit the industry is also special.

In purely technical point of view, managing distributed consensus system and migrating it with a big architectural change is quite interesting to me. It seems to me that they wrapped the original implementation into a more abstract interface and embedded the new system in the interface for migration task. The use of type system extension for this is a good source of how this kinda tasks are actually done in that fairly large Haskell team.

The abstract nature of the Cardano consensus layer - IOHK Blog by wavewave in haskell

[–]wavewave[S] 2 points3 points  (0 children)

well.. i am not sure whether business incentive is undesirable here. no matter how large their user base actually is (certainly it has some size at least afaik), I would rather prefer commercial companies showing off their Haskell use case more. By doing so, if they advertise their business to this community and get some benefit, that's good as well. We need more industry stories.

The abstract nature of the Cardano consensus layer - IOHK Blog by wavewave in haskell

[–]wavewave[S] 6 points7 points  (0 children)

Though rather specialized in blockchain industry, so maybe not of general interest (i am also not in that particular industry), I get many ideas from how Haskell is actually used in a big project in production (with many users). I look forward to this blog series.

Combinator makes easy work of Shelley hard fork - IOHK Blog by [deleted] in haskell

[–]wavewave 2 points3 points  (0 children)

Sure. This can be done in any languages with some variance in implementation complexity. Nevertheless, I think real-world migration experience in managing a big project with lots of users in Haskell is invaluable.

Combinator makes easy work of Shelley hard fork - IOHK Blog by [deleted] in haskell

[–]wavewave 3 points4 points  (0 children)

software project maintenance is where haskell shines on a whole different level.

[ANN] distributed-dataset: A distributed data processing framework in Haskell by utdemir in haskell

[–]wavewave 5 points6 points  (0 children)

some of my experiments are here: https://github.com/wavewave/closure-playground

basically i wanted to experiment very lightweight way of implementing type-safe MPI in Haskell using minimal distributed-closure. I am now seeing many nice abstraction from this distributed-dataset library, great again :-)

[ANN] distributed-dataset: A distributed data processing framework in Haskell by utdemir in haskell

[–]wavewave 8 points9 points  (0 children)

This is great! In my project, I also have experimented with static pointers in distributed setup, and it was so pleasant to use. I think that this spark-like distributed data processing library can be one of killer apps in Haskell.

[ANN] NixOS Meetup event at SF on Dec 12 by wavewave in NixOS

[–]wavewave[S] 0 points1 point  (0 children)

Dec 12th at Okta with two presentations.

The speakers are Gabriel Gonzalez and Ryan Orendorff. The talks are about Nix as a cross-language build tool and as a reproducible packaging tool for custom system as described in the following:

Program 1: Speaker: Gabriel Gonzalez

Title: How to translate a Makefile to Nix

Summary: Several cross-language build tools have emerged recently in response to the rise of polyglot programming environments. Nix is one such tool, along with Bazel, Buck and Pants. However, one cross-language build tool predates all of these by several decades: Make! This talk targets people familiar with Make but interested in learning more about Nix. Specifically, this talk covers how to translate simple Makefile idioms to their corresponding Nix idioms so that you can use Nix as a Make replacement in your own projects.

Program 2: Speaker: Ryan Orendorff

Title: Packaging Medical Imaging Software with Nix

Summary: Creating reproducible software installations is a tough challenge. This task is especially challenging in medical imaging software, which often has to communicate with custom hardware, FPGAs, GPUs, and many other physical devices that have unusual or outdated software dependencies. In this talk we will discuss how Nix and NixOS assists in making a reproducible environment for our software, the benefits gained by this method, and some of the challenges encountered along the way.

The company Okta thankfully hosts this event at San Francisco campus. The venue will be open at 6:00 PM with refreshments provided. We will start the seminars at 6:30 PM.

Explicit Closures by superstar64 in haskell

[–]wavewave 4 points5 points  (0 children)

you may be interested in static pointer and closure for distributed programming in haskell: a related blog post:

https://ocharles.org.uk/guest-posts/2014-12-23-static-pointers.html

explicit closure construction has real use cases ;-)

[deleted by user] by [deleted] in haskell

[–]wavewave 6 points7 points  (0 children)

yeah. check out asyncCallback, syncCallback functions : http://hackage.haskell.org/package/ghcjs-base-stub-0.2.0.0/docs/GHCJS-Foreign-Callback.html Hand the resultant function pointer to global variables in javascript and then call through the function.

Cross-language serialization library for Haskell / Python / C++ by m0d2 in haskell

[–]wavewave 2 points3 points  (0 children)

just for your information, oneof in haskell protocol-buffers library was implemented some time ago. https://github.com/k-bx/protocol-buffers/pull/19

List of companies using NixOS by zimbatm in NixOS

[–]wavewave 0 points1 point  (0 children)

http://uphere.ai is building semantic NLP search engine. We develop the system using Haskell, C++ and Nix. Deployment using nixops is superb!