Skip to content

Instantly share code, notes, and snippets.

michaelt michaelt

View GitHub Profile
View gist:a9c25170640df075a77c82fd5da7ca43
# The Polemics About the Historicity of Jesus Christ in the Religious Studies of the Soviet Period
A. ANDREEV
*Abstract*
The article discusses the history of the controversy regarding the historicity of Jesus Christ in the academic literature of the Soviet period. It summarizes the position of the classics of Marxism-Leninism on the issue, which for many decades served for scientists as «starting point» in their studies. The article outlines the main work of Soviet religious scholars, historians and philologists, engaged in the research of the New Testament. It presents the basic arguments for and against a real earthly existence of Jesus Christ. It identifies the major milestones in the development of this issue throughout the Soviet period: the period from 20’s, which is characterized by the dominance of the ideas of the so-called «Mythological school» and tough anti-religious propaganda; the period from the late 50’s to early 80’s, when the mythological nature of Jesus was questioned; and the third peri
@michaelt
michaelt / freer_transformer.hs
Created Feb 12, 2017
some freer manipulations
View freer_transformer.hs
{-#LANGUAGE GADTs, TypeApplications, DataKinds, TypeOperators #-}
import Control.Monad.Freer
import qualified Control.Monad.Freer as F
import Control.Monad.Trans.Writer
import Control.Monad.IO.Class
type Loc = Int
type LogSource = Int
type LogLevel = Int
type LogStr = String
View race.hs
import Control.Concurrent (threadDelay)
import Control.Concurrent.Async (race)
import Control.Monad
marika = forever $ do
threadDelay (10^6)
putStrLn "Marika Boo!!!"
s = do
c <- getChar
@michaelt
michaelt / oneshot.hs
Created Oct 31, 2016
oneShot rule for `await`
View oneshot.hs
{-#LANGUAGE BangPatterns, MagicHash, UnboxedTuples #-}
import Pipes
import qualified Pipes.Prelude as P
import Control.Monad.Trans.State.Strict
import GHC.Magic
import qualified Pipes.Internal as I
import Data.IORef
import Control.Monad
import GHC.Types
import GHC.Prim
@michaelt
michaelt / IxFunctor.hs
Created Oct 23, 2016
little 'indexed' library
View IxFunctor.hs
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DefaultSignatures #-}
@michaelt
michaelt / streams.hs
Created Oct 8, 2016
little streaming library
View streams.hs
{-#LANGUAGE BangPatterns #-}
import GHC.Magic
import Data.IORef
import Control.Monad
import Control.Monad.Trans
data Stream a m r = Yield a (Stream a m r) | Done r | Delay (() -> m (Stream a m r))
instance Functor m => Functor (Stream a m) where
fmap f (Done r) = Done (f r)
View gist:c77399da99c0a4e2ffdc728deb9bdbfc
{-#LANGUAGE BangPatterns #-}
import GHC.Magic
import Data.IORef
import Control.Monad
import Control.Monad.Trans
data Stream a m r = Yield a (Stream a m r) | Done r | Delay (() -> m (Stream a m r))
instance Functor m => Functor (Stream a m) where
fmap f (Done r) = Done (f r)
@michaelt
michaelt / oneShot.hs
Created Oct 7, 2016
sink to run with the await oneshot rule
View oneShot.hs
{-#LANGUAGE BangPatterns #-}
import Pipes
import qualified Pipes.Prelude as P
import Control.Monad.Trans.State.Strict
import GHC.Magic
import qualified Pipes.Internal as I
import Data.IORef
import Control.Monad
emit :: Int -> Int -> IORef Int -> Producer Int IO ()
@michaelt
michaelt / pipes_oneshot.hs
Created Oct 7, 2016
oneShot rule for 'await >>= f'
View pipes_oneshot.hs
{-#LANGUAGE BangPatterns #-}
import Pipes
import qualified Pipes.Prelude as P
import Control.Monad.Trans.State.Strict
import GHC.Magic
import qualified Pipes.Internal as I
import Data.IORef
import Control.Monad
await' :: Monad m => Proxy () a y' y m a
@michaelt
michaelt / Sink.hs
Created Oct 5, 2016
oneShot + Sink
View Sink.hs
module Main (main) where
import System.IO.Error
import GHC.Magic
data Sink = Await (Maybe Char -> Sink) | Done Int
countFrom :: Int -> Sink
countFrom n = let k = countFrom $! n + 1
-- in Await $ \mi -> case mi of
You can’t perform that action at this time.