Skip to content

Instantly share code, notes, and snippets.

@acple
acple / SandS.ahk
Last active December 7, 2023 08:37
;; SandS for AutoHotkey
;; ===初期設定==========================================================
;; 多重起動の制御をforceに指定
#SingleInstance force
;; 環境変数を無視する
#NoEnv
@acple
acple / TailRecursion.cs
Created June 6, 2016 12:09
C#の末尾呼び出し最適化がいろいろおかしいって話
using System.Diagnostics;
using static System.Console;
class Program
{
static void Main(string[] args)
{
// 末尾再帰の検証 .NET framework 4.6.1 / Release_x64
//A(10000000); // -> StackOverflowException!!!!
module TypeClassTest where
import Prelude
import Unsafe.Coerce (unsafeCoerce)
class TwoParams a b where
func :: a -> b
instance equals :: TwoParams a a where
func = identity
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.2</TargetFramework>
<LangVersion>8.0</LangVersion>
<!-- for Visual Studio 16.2.x Preview -->
<Nullable>enable</Nullable>
@acple
acple / Memoize.cs
Last active March 18, 2019 10:35
メッメモリリークだあーーにげろーー
using System.Collections.Generic;
using ParsecSharp;
using ParsecSharp.Internal;
namespace ParsecSharp.Extensions
{
public static class Parser
{
public static Parser<TToken, T> Memoize<TToken, T>(Parser<TToken, T> parser)
{
using System;
using ParsecSharp;
namespace ParsecSharp.Utils
{
public class DebugOutputStream<TToken> : IParsecStateStream<TToken>
{
public enum MoveState { Backward, Stay, Forward }
private class Cursor
@acple
acple / Main.purs
Created January 16, 2019 04:15
purescript-halogen raise-problem
module Main where
import Prelude
import Data.Maybe (Maybe(..))
import Data.Symbol (SProxy(..))
import Effect (Effect)
import Effect.Class (class MonadEffect)
import Effect.Class.Console (log)
import Halogen (raise)
using System;
using System.Buffers.Binary;
using System.Runtime.CompilerServices;
namespace Base32
{
public class Base32Encoding
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public string Encode(ReadOnlySpan<byte> bytes)
@acple
acple / Program.cs
Last active September 19, 2018 15:54
コンパイル結果がやべーやつ
using System;
namespace Sandbox
{
class Program
{
static void Main(string[] args)
{
var x = 1;
{
@acple
acple / Nat.purs
Created September 12, 2018 13:55
module Data.Typelevel.Nat where
import Prelude
import Data.Symbol (SProxy(..))
import Prim.Symbol as Symbol
class IsNat nat where
reflectNat :: SProxy nat -> Int