From 3f0471b314fa2792207b3116aa7491f5f353b31e Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Wed, 27 Mar 2019 12:50:33 -0700 Subject: notes and stuff --- README.md | 15 ++++++--------- lore/Alpha.hs | 9 ++++++--- lore/Language/Bs/Primitives.hs | 6 ++++++ lore/core.scm | 1 - 4 files changed, 18 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index cac5b98..96ad750 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,11 @@ This isn't totally in place yet, but it's something to work toward. -The two special locations are 'soar' and 'bild'. The former is for images and -other assets and is synced to digital ocean's object storage. The latter's +The main source directory is `lore`. Stuff in `aero` and `apex` should be small +functions specific to the server/client. + +The two special locations are `soar` and `bild`. The former is for images and +other assets to be synced to digital ocean's object storage. The latter's contents are gitignore'd and can be deleted at any time because they will just be rebuilt later. @@ -24,13 +27,7 @@ be rebuilt later. To get a development shell, for example to work on ibb, you can do: $ nix-shell -A pack.ibb - $ ghci - GHCi, version 8.4.4: http://www.haskell.org/ghc/ :? for help - Loaded GHCi configuration from /home/ben/src/biz/.ghci - λ :load apex/Ibb.hs - [1 of 2] Compiling Influencers ( apex/Influencers.hs, interpreted ) - [2 of 2] Compiling Ibb ( apex/Ibb.hs, interpreted ) - Ok, two modules loaded. + $ chip/make ibb The build system topology is defined in `./default.nix`, so follow the import paths there to see what's available for building and installing locally. For diff --git a/lore/Alpha.hs b/lore/Alpha.hs index b126241..67bfa35 100644 --- a/lore/Alpha.hs +++ b/lore/Alpha.hs @@ -1,12 +1,15 @@ {-# LANGUAGE NoImplicitPrelude #-} +-- | Commonly useful functions, a Prelude replacement. module Alpha ( + -- * Re-export Protolude + module X -- * General functions - (/@) + , (/@) -- * Debugging tools , say ) where -import Protolude +import Protolude as X import Data.String -- | Debugging printf @@ -15,4 +18,4 @@ say msg = putStrLn msg -- | Alias for map, fmap, <$> (/@) :: Functor f => (a -> b) -> f a -> f b -(/@) = Protolude.fmap +(/@) = fmap diff --git a/lore/Language/Bs/Primitives.hs b/lore/Language/Bs/Primitives.hs index a2de7bb..2c90164 100644 --- a/lore/Language/Bs/Primitives.hs +++ b/lore/Language/Bs/Primitives.hs @@ -1,4 +1,10 @@ {-# LANGUAGE OverloadedStrings #-} +-- | bs primitives +-- +-- I would like to reduce the number of primitives in the language to some +-- minimal number, like SKI combinator or Nock instructions. I'm not sure what +-- the minimal number is. The idea is to move primitives from here into core.scm +-- over time. module Language.Bs.Primitives where import Control.Exception hiding (handle) diff --git a/lore/core.scm b/lore/core.scm index 4cb8100..9760318 100644 --- a/lore/core.scm +++ b/lore/core.scm @@ -25,7 +25,6 @@ (foldl f (f acc (car lst)) (cdr lst)))) (define fold foldl) -(define reduce foldr) (define (unfold f init pred) (if (pred init) -- cgit v1.2.3