Skip to content

Instantly share code, notes, and snippets.

Amaan Cheval AmaanC

Block or report user

Report or block AmaanC

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@AmaanC
AmaanC / writeup.md
Created Aug 29, 2019 — forked from edmundsmith/writeup.md
Method for Emulating Higher-Kinded Types in Rust
View writeup.md

Method for Emulating Higher-Kinded Types in Rust

Intro

I've been fiddling about with an idea lately, looking at how higher-kinded types can be represented in such a way that we can reason with them in Rust here and now, without having to wait a couple years for what would be a significant change to the language and compiler.

There have been multiple discussions on introducing higher-ranked polymorphism into Rust, using Haskell-style Higher-Kinded Types (HKTs) or Scala-looking Generalised Associated Types (GATs). The benefit of higher-ranked polymorphism is to allow higher-level, richer abstractions and pattern expression than just the rank-1 polymorphism we have today.

As an example, currently we can express this type:

View plfa-naturals-exercise-01-binary-representation-to-from.agda
-- My solution to:
-- https://plfa.github.io/Naturals/#Bin
import Relation.Binary.PropositionalEquality as Eq
open Eq using (_≡_; refl)
open Eq.≡-Reasoning using (begin_; _≡⟨⟩_; _∎)
data ℕ : Set where
zero :
suc :
View podcasts.md

Entertainment:

  • Radiolab (the further back you go, the more science-y they get)
  • This American Life
  • Serial
  • Invisibilia
  • youarenotsosmart

Tech ones you may or may not be into:

@AmaanC
AmaanC / Makefile
Last active Nov 15, 2017
Adding support for WebAssembly's call_indirect operator directly in your C code by compiling LLVM IR with your C code through emscripten
View Makefile
main.wasm: main.c call-indirect.ll
emcc $^ -o $@ \
-O3 \
-s LEGALIZE_JS_FFI=0 \
-s WASM=1 -s SIDE_MODULE=1 \
-g4
.PHONY: serve
serve: main.wasm loader.js index.html
python3 -m http.server 8888
View how-to-oscp-final.md

How to pass the OSCP

  1. Recon
  2. Find vuln
  3. Exploit
  4. Document it

Recon

Unicornscans in cli, nmap in msfconsole to help store loot in database.

@AmaanC
AmaanC / textbooks.md
Created Dec 12, 2016 — forked from erikroyall/textbooks.md
Alex Stef's list of freely-available mathematics textbooks
View textbooks.md

Textbooks in Mathematics

A list of links to useful mathematical textbooks available for free on the Internet. They are all legal and maintained by their authors or by the legitimate publisher.

All the documents are in English. They are in a printable format - Postscript or Adobe Portable Document Format. You are free to download, read and print them. Here are some links to other sites offering lists of free mathematical textbooks.

For any comments, please, contact me: alex_stef@yahoo.com

@AmaanC
AmaanC / irccloud-colorize.js
Created Nov 18, 2015 — forked from blha303/irccloud-colorize.js
IRCCloud replace & with formatting characters | &b is bold, &r is reset, &<number from 0 to 15> is a color | I'm going to regret this.
View irccloud-colorize.js
var inputbox = $('#bufferInputView' + cb().bid());
var msg = inputbox.val();
inputbox.val("");
var cc = "\u0003";
var bold = "\u0002";
var reset = "\u000f";
var italic = "\u0016";
var underline = "\u001f";
cb().say(msg.replace(/&b/g,bold).replace(/&r/g,reset).replace(/&i/g,italic).replace(/&u/g,underline).replace(/&/g,cc));
You can’t perform that action at this time.