Skip to content

Instantly share code, notes, and snippets.

View master-q's full-sized avatar
🌴
On vacation

Kiwamu Okabe master-q

🌴
On vacation
View GitHub Profile
@master-q
master-q / gist:3353689
Created August 14, 2012 22:52
Gyo.hs
import qualified Data.ByteString.Lazy.Char8 as BS
import System.Environment
main :: IO ()
main = do
args <- getArgs
case args of
[] -> printCount
["-"] -> printCount
("-f":as) -> fmode as
static void A_STD
ftheMain(gc_t gc)
{
fPrelude_IO_putStr(gc,PROMOTE(c375));
saved_gc = gc;
(void)jhc_utf8_putchar((int)10);
fR$__fControl_Monad_forever__57:;
{ wptr_t v9;
fPrelude_IO_putStr(gc,PROMOTE(c377));
v9 = fPrelude_IO_getLine(gc);
@master-q
master-q / try_chicken.log
Created February 11, 2013 10:26
Try CHICKEN.
$ csc -version
(c)2008-2012 The Chicken Team
(c)2000-2007 Felix L. Winkelmann
Version 4.8.0 (rev 0db1908)
linux-unix-gnu-x86-64 [ 64bit manyargs dload ptables ]
compiled 2012-09-24 on debian (Linux)
Enter `chicken -help' for information on how to use the compiler,
or try `csc' for a more convenient interface.
@master-q
master-q / Main.hs
Created February 21, 2013 02:21
なぜかjhc+stm32でサンクヒープを使うとクラッシュする。。。Main.hs=>hs_main.cに変換するんだけど、二回目?のeval()で停止する。。。 https://gist.github.com/master-q/5001451#file-hs_main-c-L112
import Data.Word
import Data.Bits
import Control.Monad
import Foreign.Ptr
import Foreign.Storable
foreign import ccall "c_extern.h Delay" c_delay :: Word32 -> IO ()
gpioPtr :: Ptr Word32
gpioPtr = odr
@master-q
master-q / Main_infloop.hs
Created February 21, 2013 11:32
このプログラムをjhcにかけると無限ループする気がする
import Data.Word
import Data.Bits
import Control.Monad
import Foreign.Ptr
import Foreign.Storable
foreign import ccall "c_extern.h Delay" c_delay :: Word32 -> IO ()
gpioPtr :: Ptr Word32
gpioPtr = odr
@master-q
master-q / Main.hs
Last active December 14, 2015 06:59
jhcコンパイルパイプラインの内どれぐらいが型推論にかかってるか調べたよ
import Data.Word
import Data.Bits
import Control.Monad
import Foreign.Ptr
import Foreign.Storable
foreign import ccall "c_extern.h Delay" c_delay :: Word32 -> IO ()
gpioPin8, gpioPin9, gpioPin10, gpioPin11, gpioPin12, gpioPin13, gpioPin14, gpioPin15, led3, led4, led5, led6, led7, led8, led9, led10 :: Word16
gpioPin8 = 0x0100
@master-q
master-q / make.log
Created March 5, 2013 10:45
John、関数に型つけないからghcが7.6.2にあがったら難解なエラーが出るじゃないか。。。
make all-am
make[1]: ディレクトリ `/home/kiwamu/src/ajhc' に入ります
/usr/bin/ghc -XBangPatterns -O -hide-all-packages -package base -package syb -package old-time -package pretty -package editline -DUSE_EDITLINE -W -fno-warn-unused-matches -fwarn-type-defaults -i -i./compat/haskell98 -i./drift_processed -i./src -i./src -odir ./src -hidir ./src -I./src -I./src -hide-all-packages -package base -package fgl -package regex-compat -package random -package array -package directory -package bytestring -package binary -package mtl -package containers -package unix -package utf8-string -package zlib -package HsSyck -package filepath -package process -XTypeFamilies -XViewPatterns -XUndecidableInstances -XOverlappingInstances -XRecordWildCards -XRecursiveDo -XTupleSections -XParallelListComp -XGeneralizedNewtypeDeriving -XScopedTypeVariables -XFlexibleInstances -XTypeSynonymInstances -XMultiParamTypeClasses -XDeriveDataTypeable -XNoMonoLocalBinds -XNamedFieldPuns -XForeignFunctionInterface -XUnliftedFFITypes -XImplicitParams
@master-q
master-q / Makefile.am.diff
Created March 5, 2013 13:30
ghci使わなくても関数の型簡単に調べる方法を見つけた #ghc #haskell
diff --git a/Makefile.am b/Makefile.am
index 2838240..967a174 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -64,7 +64,7 @@ GHCLANG= -XTypeFamilies -XViewPatterns -XUndecidableInstances -XOverlappingInsta
-XPatternGuards -XLiberalTypeSynonyms -XRankNTypes -XTypeOperators \
-XEmptyDataDecls -XKindSignatures
-GHCOPTS= $(HSOPTS) -XBangPatterns -O @GHCFLAGS@ $(GHCDEBUGOPTS) $(GHCINC) $(PACKAGES) $(GHCLANG)
+GHCOPTS= $(HSOPTS) -XBangPatterns -O @GHCFLAGS@ $(GHCDEBUGOPTS) $(GHCINC) $(PACKAGES) $(GHCLANG) -ddump-types
@master-q
master-q / log
Last active December 14, 2015 13:08
regress test failed on Ajhc.
$ git log|head -5
commit a6f971f39d89b2d6ebf44bfb6f9b0d1591dd6161
Author: Kiwamu Okabe <[email protected]>
Date: Wed Apr 3 05:12:41 2013 +0900
Bump up version 0.8.0.4.
$ travis logs | grep "^ Category" -A 10000 | grep -v " pass "
Category Name Compile Run Out CTime RTime
-------------------------------------------------------------------------
typecheck pass.ghc.T3409 256 - - 0s -
@master-q
master-q / Main.hs
Created March 12, 2013 15:37
s_cacheのプロファイル。簡単なアプリの場合
import Data.Word
import Data.Bits
import Control.Monad
import Foreign.Ptr
import Foreign.Storable
foreign import ccall "c_extern.h Delay" c_delay :: Word32 -> IO ()
foreign import ccall "c_extern.h &jhc_zeroAddress" c_jhc_zeroAddress16 :: Ptr Word16
gpioPin8, gpioPin9, gpioPin10, gpioPin11, gpioPin12, gpioPin13, gpioPin14, gpioPin15, led3, led4, led5, led6, led7, led8, led9, led10 :: Word16