Skip to content

Instantly share code, notes, and snippets.

@selvan
selvan / domain_socket.dart
Created June 9, 2020 16:31
Dart - Unix Domain Socket
// Based on https://dart-review.googlesource.com/c/sdk/+/125932/34/tests/standalone_2/io/unix_socket_test.dart
import 'dart:async';
import 'dart:io';
Future<void> main() async {
var address = InternetAddress('/tmp/socket', type: InternetAddressType.unix);
var server = await ServerSocket.bind(address, 0, shared: true);
server.listen((client) async {
client.listen((data) {
-- Server code
libsocket = require "socket"
libunix = require "socket.unix"
socket = assert(libunix())
SOCKET="/tmp/socket"
assert(socket:bind(SOCKET))
assert(socket:listen())
conn = assert(socket:accept())
while 1 do
data=assert(conn:receive())
@selvan
selvan / gist:0b95c2803acfac532f83f4c2fd223434
Created March 3, 2019 06:35
Install pkg from terminal osx
sudo installer -pkg ~/Downloads/node-v10.15.2.pkg -target /
// Copied from typescript playground - https://www.typescriptlang.org/play/
class Vector {
constructor(public x: number, public y: number, public z: number) { }
static times(k: number, v: Vector) {
return new Vector(k * v.x, k * v.y, k * v.z);
}
var StellarSdk = require('stellar-sdk');
StellarSdk.Network.useTestNetwork();
var server = new StellarSdk.Server('https://horizon-testnet.stellar.org');
var sourceAccountPair = StellarSdk.Keypair.random();
var destAccountPair = StellarSdk.Keypair.random();
var astroDollar1 = new StellarSdk.Asset('AstroDollar1', sourceAccountPair.publicKey());
import 'dart:async';
import 'dart:isolate';
var mainReceivePort = new ReceivePort();
main() async {
await Isolate.spawn(hello, null);
await for (var msg in mainReceivePort) {
print(msg);
return;
@selvan
selvan / BUCK
Created December 17, 2016 08:14
BUCK Build Script - HelloWorld - Yoga Layout Engine
java_binary(
name = 'hello',
main_class = 'HelloWorld',
deps = [':hello_lib'],
)
java_library(
name = 'hello_lib',
srcs = ['HelloWorld.java'],
resources = [],
@selvan
selvan / HelloWorld.java
Created December 17, 2016 08:13
Yoga Layout engine - HelloWorld
import com.facebook.yoga.*;
public class HelloWorld {
public static void main(String s[]) {
YogaNode root = new YogaNode();
root.setWidth(500);
root.setHeight(300);
root.setAlignItems(YogaAlign.CENTER);
root.setJustifyContent(YogaJustify.CENTER);
root.setPadding(YogaEdge.ALL, 20);
@selvan
selvan / Docker
Created March 26, 2015 10:16
Docker
##[https://github.com/docker/docker/issues/9697#issuecomment-67232206 Install specific version of docker (Ubuntu)]##
echo deb http://get.docker.com/ubuntu docker main > /etc/apt/sources.list.d/docker.list
apt-key adv --keyserver pgp.mit.edu --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
apt-get update
apt-get install -y lxc-docker-1.3.3
@selvan
selvan / gist:332548ea8c1389100bdf
Created November 21, 2014 11:32
Random Alpha Numeric String Generator
module RandomAlphaNumeric
@deck = [(0..9), ('a'..'z'), ('A'..'Z')].map { |i| i.to_a }.flatten
def self.generate(length)
@deck.shuffle[0, length].join
end
end