These instructions have moved to https://github.com/emporia-vue-local/esphome
The guide will hopefully help you quickly graps the basics of LLVM. Links to useful self-learning article, video and tools will be listed below.
- http://www.aosabook.org/en/llvm.html
- What goes behind LLVM Compiler Infrastructure : Tanmay Bakshi https://youtu.be/IR_L1xf4PrU
- https://proglangdesign.net/wiki/llvm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import JavaScriptCore | |
extension JSContext { | |
subscript(key: String) -> Any { | |
get { | |
return self.objectForKeyedSubscript(key) | |
} | |
set{ | |
self.setObject(newValue, forKeyedSubscript: key as NSCopying & NSObjectProtocol) | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
if [ -f /usr/lib/jsc ]; then | |
/usr/lib/jsc "$@" | |
elif [ -f /System/Library/Frameworks/JavaScriptCore.framework/Resources/jsc ]; then | |
/System/Library/Frameworks/JavaScriptCore.framework/Resources/jsc "$@" | |
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var str = 'class ಠ_ಠ extends Array {constructor(j = "a", ...c) {const q = (({u: e}) => {return { [`s${c}`]: Symbol(j) };})({});super(j, q, ...c);}}' + | |
'new Promise((f) => {const a = function* (){return "\u{20BB7}".match(/./u)[0].length === 2 || true;};for (let vre of a()) {' + | |
'const [uw, as, he, re] = [new Set(), new WeakSet(), new Map(), new WeakMap()];break;}f(new Proxy({}, {get: (han, h) => h in han ? han[h] ' + | |
': "42".repeat(0o10)}));}).then(bi => new ಠ_ಠ(bi.rd));'; | |
try { | |
eval(str); | |
} catch(e) { | |
alert('Your browser does not support ES6!') | |
} |
Some of the major topics covered in this section include:
These notes were update for 10.15 (Catalina)
I use Brew to install libraries and software.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
by Keith Rosenberg (netpoetica)
Note: do this in some sort of project/ directory that makes sense. depot_tools are going to need to be in your path, so you may want to install them somewhere you are comfortable with.
git clone https://github.com/v8/v8.git
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html> | |
<head> | |
<title>Event Hub</title> | |
<script src="hub.js"></script> | |
<script> | |
var subscription = hub.subscribe('/go', function(params) { | |
console.log('one', params); | |
}); | |
var subscription2 = hub.subscribe('/go', function(params) { | |
console.log('two', params); |
NewerOlder