• Stars
    star
    162
  • Rank 232,284 (Top 5 %)
  • Language Standard ML
  • License
    MIT License
  • Created almost 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Generic package manager for Standard ML libraries and programs

smlpkg CI

This program constitutes a generic package manager for Standard ML libraries and programs. The package manager assumes nothing and knows nothing about the Standard ML compilers used and is thus quite generic.

The package manager is centered around the notion of semantic versioning and currently supports packages hosted on GitHub and GitLab.

The package manager takes care of downloading and upgrading dependent packages and works well with the use of MLB files supported by Standard ML compilers such as MLton, MLKit, and SMLtoJs.

Usage

Adding a package

$ smlpkg add github.com/diku-dk/sml-random

This command modifies only sml.pkg and creates it if it does not already exist.

Downloading required packages

$ smlpkg sync

This command populates the lib directory based on the packages listed in sml.pkg.

Creating a new package

$ smlpkg init github.com/foo/bar

This command creates a file sml.pkg and initiates it with the given package name (foo should be a github user name or an organisation name and bar should be a repository name). You can now add code in the directory lib/github.com/foo/bar/.

Releasing a package

$ git tag vX.Y.Z
$ git push --tags

Remember to follow semantic versioning. Once a package has been released, other packages can safely add the package to their own source code tree using smlpkg add (see above).

Probably incomplete list of available packages

Design details

See this blog post on the design of the Futhark package manager.

Compilation

To compile the package manager, you need a Standard ML compiler such as MLton or MLKit.

Compilation using MLKit on macOS

$ brew install mlkit
$ make all

Compilation using MLton

$ MLCOMP=mlton make clean all

License

This software is distributed under the MIT LICENSE.

The package manager is almost a complete port of the Futhark package manager, designed, and implemented in Haskell by Troels Henriksen.

More Repositories

1

futhark

💥💻💥 A data-parallel functional programming language
Haskell
2,398
star
2

futhark-book

Parallel Programming in Futhark
Futhark
48
star
3

Open-Full-Jaw

A dataset and python-based pipeline for "An open-access dataset and nearly-automated pipeline for generating finite element models of human jaw".
Jupyter Notebook
39
star
4

futhark-benchmarks

Various Futhark benchmark programs
Futhark
38
star
5

bfast

GPU Implementation for BFAST
Python
37
star
6

ap-e2024-pub

Public repository for Advanced Programming
Haskell
36
star
7

diku-canvas

Simple canvas library for F# (2d-drawing, loading/saving of image files, using SDL2)
F#
25
star
8

Snapper-Orleans

Port of Snapper library on Orleans
C#
24
star
9

futhark-with-fangs

The web framework nobody asked for, wants, or needs.
Python
22
star
10

dpp-e2021-pub

Data Parallel Programming
Futhark
22
star
11

lys

Library for writing interactive and visual Futhark programs 💥 🎨 🎮 💥
C
22
star
12

howto

How do I DIKU? How indeed.
TeX
21
star
13

libhip

LibHip: An Open-Access Hip Joint Model Repository suitable for Finite Element Method Simulation
Jupyter Notebook
20
star
14

hpps-e2022-pub

Public repository for HPPS 2022
C
20
star
15

hpps-e2023-pub

Public repository for the 2023 edition of HPPS
C
19
star
16

hpps-e2021-pub

Public repository for the HPPS course
C
17
star
17

linalg

Linear algebra package for Futhark
Futhark
17
star
18

pmph-e2024-pub

Futhark
16
star
19

pfp-e2020-pub

Parallel Functional Programming, 2020
Futhark
15
star
20

pfp-e2019-pub

Public repository for the 2019 Parallel Functional Programming course at DIKU
Haskell
14
star
21

su-guides

Guides and guidelines for software development course
Python
14
star
22

DIKUArcade

C#
14
star
23

sigdoc

Signature documentation tool for Standard ML
Standard ML
14
star
24

sml-server

Web server infrastructure for Standard ML
Standard ML
13
star
25

staffeli

DIKU Support Tools for Canvas LMS
Python
13
star
26

sml-parse

Standard ML Parser Combinator Library
Standard ML
13
star
27

hpps-e2020-pub

C
12
star
28

dpp-e2022-pub

Data Parallel Programming, the 2022 edition
C++
12
star
29

futhark-vscode

VS Code extension for Futhark
TypeScript
12
star
30

dpp-e2023-pub

Repository for the DPP'23 course
Cuda
11
star
31

pmph-e2020-pub

PMPH course 2020 public repo
C++
11
star
32

futhark-ad

Notes, examples, and general work on automatic differentiation and probabilistic programming
Jupyter Notebook
11
star
33

sml-http

HTTP utility library for Standard ML
Standard ML
11
star
34

RefractiveSfM

This repository contains code for refractive structure-from-motion
MATLAB
10
star
35

smlfut

Call Futhark programs from Standard ML
Standard ML
10
star
36

futhark-website

Git repository containing the Futhark website.
Futhark
10
star
37

rnn-tutorial

Signal Processing with Recurrent Neural Networks in TensorFlow
Python
9
star
38

credanno

Code for reducing annotation need in self-explanatory models
Python
9
star
39

img-util-fs

Image Utilities for F# (2d-drawing, loading/saving of image files, simple Gtk apps)
F#
9
star
40

sparse

Futhark sparse matrix operations
Futhark
8
star
41

AutoJawSegment

Python
8
star
42

futhark-playground

Futhark playground
JavaScript
8
star
43

statistics

Statistics Library for Futhark
Futhark
8
star
44

futhark-server-sml

Implementation of the Futhark server protocol in Standard ML
Standard ML
8
star
45

RAINBOW

Software modules for modelling and simulation
Python
8
star
46

pmph-e2023-pub

Futhark
7
star
47

fshark

Futhark performance in F# projects
F#
7
star
48

sml-sobol

Standard ML library for Sobol sequences
Standard ML
7
star
49

CombSemiBandits

Source code for "Beating Stochastic and Adversarial Semi-bandits Optimally and Simultaneously"
Python
7
star
50

sorts

Sorting implementations in Futhark
Futhark
7
star
51

futhark-data-python

Python implementation of the Futhark data format.
Python
7
star
52

futhark-pldi17

Benchmark suite for our PLDI'17 paper.
C
7
star
53

fft

Fast Fourier Transforms in Futhark
Futhark
7
star
54

pmph-e2022-pub

This is the repository for the course PMPH, edition 2022-2023
Futhark
6
star
55

sml-json

Standard ML package for JSON parsing and printing
Standard ML
6
star
56

pltc-infoscreen

Slides for the PLTC infoscreen
JavaScript
6
star
57

smlfmt.el

Emacs minor mode for running smlfmt
Emacs Lisp
6
star
58

alpacc

Haskell
6
star
59

futhark-mode

Emacs major mode for editing Futhark programs
Emacs Lisp
6
star
60

MarketplaceOnOrleans

Marketplace on Orleans
C#
6
star
61

wiki

Shell
6
star
62

sml-regexp

Standard ML package for regular expressions
Standard ML
6
star
63

futhark-sc20

Artifact for the SC20 paper.
C++
6
star
64

RenalVesselSeg

Python
6
star
65

ComputerGrafikProjektStudents

Student version of framework for solving assignments on the computer graphics course offered by department of computer science university of copenhagen. Copyright Knud & Kenny, 2019
C++
5
star
66

sml-cstring

Standard ML library for catenable strings
Standard ML
5
star
67

sml-getopt

Command line option parsing for Standard ML
Standard ML
5
star
68

optimise

Futhark optimisation package
Futhark
5
star
69

caddie

Standard ML
5
star
70

futhark-ci

CI tool for Futhark
Python
5
star
71

sml-pretty

Prettyprinter based on KFL's SML port of Wadler's printer
Standard ML
5
star
72

edda

Experimenting with Futhark programming style
Futhark
5
star
73

install-mlkit

Action for installing MLKit
Standard ML
5
star
74

EventBenchmark

Driver for Online Marketplace Microservice Benchmark
C#
5
star
75

pmph-e2021-pub

This is the public repository for the PMPH course hold in the academic year 2021-22 at DIKU, KU.
Futhark
5
star
76

containers

A Futhark library with data structures.
Futhark
4
star
77

segmented

Irregular segmented operations implemented in Futhark
Futhark
4
star
78

futhark-docbot

Maintains documentation archives for Futhark packages
Go
4
star
79

futhark-server-haskell

Haskell implementation of the Futhark server protocol
Haskell
4
star
80

futhark-ppopp19

Experimental infrastructure for the paper "Incremental Flattening for Nested Data Parallelism" at PPOPP'19.
C
4
star
81

ad-spatial-search

Futhark
4
star
82

install-futhark

Action for installing Futhark
4
star
83

sml-pickle

Standard ML package for serialisation and deserialisation
Standard ML
4
star
84

pltc

Unofficial website
4
star
85

futhark-repl

Online Futhark REPL
Python
4
star
86

dpp-e2024-pub

Course website for Data Parallel Programming at DIKU
4
star
87

sml-random

Standard ML library for generating random numbers
Standard ML
4
star
88

futhark-benchmark-dashboard

Visualisation of Futhark benchmark runtimes over time
JavaScript
4
star
89

futhark-icfp18

Public artifact for ICFP'18 paper on Futhark modules
Coq
4
star
90

sml-unicode

SML Unicode Library
Standard ML
4
star
91

cmis-online

Online public teaching material for courses on computational methods in simulation
4
star
92

futhark-presents

Futhark presents!
Futhark
3
star
93

RenalArterialRecon

Python
3
star
94

liv

Crude cellular automaton visualiser that runs in the terminal
Futhark
3
star
95

sobol

Sobol library for Futhark
Futhark
3
star
96

hpps-course-notes

Course notes for the High Performance Programming and Systems course at DIKU
C
3
star
97

complex

Complex number library for Futhark
Futhark
3
star
98

su18-guides

Guides for CSharp, NUnit, report writing, and anything otherwise related to su18.
Python
3
star
99

sml-aplparse

Standard ML APL Parser Library
Standard ML
3
star
100

su21-guides

Python
3
star