$ ghc temp.hs
Note
Don't use -O2 when build temp.hs, would stack overflow.
| function some_expensive_function() | |
| local tbl = {} | |
| for i=1,100 do | |
| table.insert(tbl, i) | |
| end | |
| local a = {} | |
| for i=1,100 do | |
| for idx,f in ipairs(tbl) do | |
| a[i] = idx / (1/24) | |
| end |
| import Control.Concurrent (forkIO, threadDelay) | |
| import Control.Concurrent.MVar (MVar, newEmptyMVar, putMVar, takeMVar) | |
| import System.Random (randomRIO) | |
| import System.Timeout (timeout) | |
| import Data.Time.Clock.POSIX (getPOSIXTime) | |
| -- 开一个线程执行 io ,返回等待结果的Action | |
| spawn :: IO a -> IO (IO a) | |
| spawn io = do | |
| mresult <- newEmptyMVar |
| from kivy.app import App | |
| from kivy.uix.widget import Widget | |
| from kivy.clock import Clock | |
| class PongGame(Widget): | |
| def __init__(self, **kwargs): | |
| super(PongGame, self).__init__(**kwargs) | |
| Clock.schedule_interval(self.move, 1 / 60.) |
| import pyximport; pyximport.install() | |
| class PurePlayer(object): | |
| def __init__(self): | |
| self.__age = 0 | |
| def set_age(self, value): | |
| self.__age = value | |
| def get_age(self): |
| import asyncio | |
| import hiredis | |
| d = {} | |
| def process(req): | |
| cmd = req[0].lower() | |
| if cmd==b'set': | |
| d[req[1]] = req[2] | |
| return b"+OK\r\n" |
| import System.IO.Unsafe (unsafePerformIO) | |
| import Prelude hiding (foldr, foldl, foldl') | |
| import System.Mem(performGC) | |
| import GHC.HeapView | |
| instance Monoid Integer where | |
| mappend = (+) | |
| mempty = 0 | |
| foldr f z l = result |
| $ echo 'sdf>sdf>' | ./a.out | |
| text|regex:1:1 'sdf>sdf> | |
| ' |