Skip to content

Instantly share code, notes, and snippets.

View smarr's full-sized avatar
👨‍🏫
Researching and Lecturing

Stefan Marr smarr

👨‍🏫
Researching and Lecturing
View GitHub Profile
@smarr
smarr / MixinTests.ns
Created December 10, 2017 22:16
Mixin Issue Newspeak
class MyModule platform: platform = (
| private Transcript = platform squeak Transcript. |
) (
public class A new = () (
public mixinA = ( ^ #Amixin )
)
public class B new = () (
public mixinB = ( ^ #Bmixin )
)
@smarr
smarr / Makefile
Created February 15, 2018 13:49
Example Latex-MK
# This Makefile relies on LaTeX-Mk
# See: http://latex-mk.sourceforge.net/
NAME=paper
KNITR=$(wildcard sections/*.Rnw)
KNITR_TEX=$(KNITR:.Rnw=.tex)
KNITR_TEX=$(patsubst sections/%.Rnw,gen/%.tex,$(KNITR))
TEXSRCS=$(NAME).tex $(wildcard scripts/*.tex) $(wildcard sections/*.tex) $(KNITR_TEX)
USE_PDFLATEX=true
@smarr
smarr / reduce.sh
Created March 15, 2018 16:54
Reduce Eclipse Release for to Code Formatting
#!/bin/bash
# Manually remove the product setting from configuration/config.ini
echo Manually remove the product setting from configuration/config.ini
# delete sources jars and other things
find ../eclipse -name "*.source*.jar" -delete
find ../eclipse -name "*.html" -delete
find ../eclipse -name "*.bmp" -delete
rm ../eclipse/icon.xpm
@smarr
smarr / Race-in-object-model.patch
Created March 25, 2018 11:01
Debugging helpers code for race conditions in object model
From 0d1d5b9ebf01d65ecffc93c8425528be9e6d8e64 Mon Sep 17 00:00:00 2001
From: Stefan Marr <git@stefan-marr.de>
Date: Sat, 24 Mar 2018 16:24:23 +0000
Subject: [PATCH] Race condition in object model, further debugging needed
This debugging code helps debugging a race condition in the object model.
This seems to be observable rather reliably with accesses to cached class fields.
Specifically, we can see that in Parser.ns, we read the slot `R`, and retrieve an `A class` instead of `R class` rather reliably.
@smarr
smarr / note.md
Last active April 3, 2018 08:09
Specializations, Types, and subsumption

Truffle Specializations do not automatically have exclusive semantics. Instead, the rules of the Java type system apply.

Let's take the following node with three specializations as example. Note, I return an int here, usually you'd return a boolean, but the int allows me to get the point across more precisely in the later tests.

@NodeChild(value = "e", type = ExprNode.class)
public abstract class IsNumberNode extends Node {
@smarr
smarr / 01-run.sh
Last active September 2, 2018 21:50
Optimization issues with latest Graak
git clone https://github.com/smarr/SOMns.git
cd SOMns
ant compile -Dskip.graal=true
./debug -i -vv -t1 -EG core-lib/Benchmarks/AsyncHarness.ns Savina.TrapezoidalApproximation 25 0 100:1000000:1:5
@smarr
smarr / SOM.g4
Last active May 20, 2019 16:13
A Grammar for SOM
grammar SOM;
/* Not maintained here, but complete and accepts all SOM code in the core-lib and are-we-fast-yet benchmarks. */
/* This parser accepts valid programs adhering to the following grammar. Comments
and white space are not dealt with in the grammar. Names of non-terminals begin
with a lower-case letter; terminals, with an upper-case one. */
classdef:
Identifier Equal superclass
@smarr
smarr / somns-trace.tcl
Created August 12, 2019 12:06
SOMns Trace file Binary Template for Hex Fiend
## Binary Template for Hex Fiend
## https://github.com/ridiculousfish/HexFiend
## This gives a very basic way to navigate through a trace file
set event_types [dict create \
0 "ACTOR_CREATION" \
1 "ACTOR_CONTEXT" \
2 "MESSAGE" \
3 "PROMISE_MESSAGE" \
4 "SYSTEM_CALL" \
@smarr
smarr / MS To Do Delete All Tasks.html
Created February 17, 2020 21:40
Delete All Tasks from Microsoft To Do app
<html>
<head>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@microsoft/microsoft-graph-client/lib/graph-js-sdk.js"></script>
<script type="text/javascript" src="https://alcdn.msauth.net/lib/1.2.0/js/msal.js"></script>
<script
src="https://code.jquery.com/jquery-3.4.1.min.js"
integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
crossorigin="anonymous"></script>
<script>
@smarr
smarr / comment-on-github.ts
Created August 11, 2020 19:37
Using TypeScript and Octokit/rest.js to Comment on Pull Request or Commit
import { Octokit } from '@octokit/rest';
import { createAppAuth } from '@octokit/auth-app';
import { readFileSync } from 'fs';
// authorize on app level
const app = new Octokit({
authStrategy: createAppAuth,
auth: {
type: "app",
id: 12345,