Skip to content

Instantly share code, notes, and snippets.

View jnthn's full-sized avatar

Jonathan Worthington jnthn

View GitHub Profile
diff --git a/src/core/IO.pm b/src/core/IO.pm
index 5067ef5..01eb6b7 100644
--- a/src/core/IO.pm
+++ b/src/core/IO.pm
@@ -6,10 +6,17 @@ sub print(|) {
Bool::True
}
-sub say(|) {
+proto sub say(|) { * }
diff --git a/lib/Panda/Builder.pm b/lib/Panda/Builder.pm
index b09aa0f..bff2994 100644
--- a/lib/Panda/Builder.pm
+++ b/lib/Panda/Builder.pm
@@ -25,7 +25,7 @@ sub topo-sort(@modules, %dependencies) {
}
sub path-to-module-name($path) {
- $path.subst(/^'lib/'/, '').subst(/^'lib6/'/, '').subst(/\.pm6?$/, '').subst('/', '::', :g);
+ $path.subst(/^'lib'<[/\\]>/, '').subst(/^'lib6'<[/\\]>/, '').subst(/\.pm6?$/, '').subst(/<[/\\]>/, '::', :g);
diff --git a/src/spesh/facts.c b/src/spesh/facts.c
index 470d203..85b2fd8 100644
--- a/src/spesh/facts.c
+++ b/src/spesh/facts.c
@@ -134,7 +134,8 @@ static void log_facts(MVMThreadContext *tc, MVMSpeshGraph *g, MVMSpeshIns *ins)
if (!stable_value) {
stable_value = consider;
}
- else if (STABLE(stable_value) != STABLE(consider)) {
+ else if (STABLE(stable_value) != STABLE(consider)
--- a/src/spesh/candidate.c
+++ b/src/spesh/candidate.c
@@ -13,10 +13,13 @@ MVMSpeshCandidate * MVM_spesh_candidate_setup(MVMThreadContext *tc,
MVMint32 num_spesh_slots, num_log_slots, num_guards, *deopts, num_deopts;
MVMCollectable **spesh_slots, **log_slots;
char *before, *after;
+ MVMSpeshGraph *sg;
+
+ MVM_gc_allocate_gen2_default_set(tc);
diff --git a/src/core/nativecall.c b/src/core/nativecall.c
index eee6069..60c99ec 100644
--- a/src/core/nativecall.c
+++ b/src/core/nativecall.c
@@ -363,7 +363,7 @@ static void * unmarshal_callback(MVMThreadContext *tc, MVMObject *callback, MVMO
callback_data->target = callback;
callback_data->cb = dcbNewCallback(signature, &callback_handler, callback_data);
- MVM_HASH_BIND(tc, tc->native_callback_cache, cuid, callback_data);
+/* MVM_HASH_BIND(tc, tc->native_callback_cache, cuid, callback_data);*/
class ACrappyAsyncHTTPServer {
has $.host;
has $.port;
has $.log;
has %!handlers;
method BUILD(:$!host, :$!port) {
$!log = Supply.new;
IO::Socket::Async.listen($!host, $!port).tap(-> $connection {
sub crappy_async_lwp($host, $path) {
my $p = Promise.new;
my $v = $p.vow;
IO::Socket::Async.connect($host, 80).then(-> $sr {
if $sr.status == Kept {
my $socket = $sr.result;
$socket.send("GET $path\r\n\r\n").then(-> $wr {
if $wr.status == Broken {
$v.break($wr.cause);
$socket.close();
multi sub trait_mod:<is>( Mu:U $type, :$entity! ) {
role Entity {}
$type.HOW does Entity;
}
class LM::Model::User
is entity
{
}
diff --git a/src/core/frame.c b/src/core/frame.c
index 21d2309..9c8528b 100644
--- a/src/core/frame.c
+++ b/src/core/frame.c
@@ -961,10 +961,11 @@ static MVMObject * find_invokee_internal(MVMThreadContext *tc, MVMObject *code,
*tweak_cs = orig->with_invocant;
}
else {
- MVMCallsite *new = malloc(sizeof(MVMCallsite));
- new->arg_flags = malloc((orig->arg_count + 1) * sizeof(MVMCallsiteEntry));
@jnthn
jnthn / ESEventStore.cs
Created March 27, 2014 11:16
Edument.CQRS EventStore binding
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Xml.Serialization;
using EventStore.ClientAPI;