Skip to content

Instantly share code, notes, and snippets.

View gmlewis's full-sized avatar

Glenn Lewis gmlewis

  • Orlando, FL
View GitHub Profile
@vigoo
vigoo / MoonBit feedback.md
Created March 5, 2026 10:20
MoonBit Feedback based on creating the Golem SDK

I've spent the last weekend making the first version of the MoonBit Golem SDK, a library and tool for writing "code-first" agents on the Golem platform.

While doing so I've ran into various problems / had some general thoughts that I'm trying to summarize in this document, with the intention of giving a constructive feedback.

(Note I'm not actively using MoonBit yet, just taking a look every few months)

Derivation

The new Golem SDKs are fully code-driven, which means we need to capture some information (such as schema and interface) compile time for it to work. In the TS SDK it's done with a ts-morph based preprocessing step, and in the Rust SDK it's based on proc macros.

Based on help I received on Discord, I've created a separate preprocessor step in MoonBit using the moonbitlang/parser and moonbitlang/formatter packages. In this section I've collected some feedback about this part of the experience.

package main
import (
"log"
"sort"
)
// Interface type used for vars
type Sortable[T comparable] interface {
Less(member T) bool
@yogthos
yogthos / clojure-beginner.md
Last active February 27, 2026 19:12
Clojure beginner resources

Introductory resources

@tomaszpolanski
tomaszpolanski / performance-test.dart
Created February 9, 2019 09:38
Elements, Keys and Flutter's performance
import 'package:flutter/material.dart';
void main() {
// Displays build timeline
debugProfileBuildsEnabled = true;
runApp(GlobalKeyWidget());
}
class WidgetsWithKeysAreJustUpdated extends StatefulWidget {
@gpeal
gpeal / build.gradle
Created May 22, 2018 02:01
Airbnb Gradle Flavors
...
apply from: './flavors.gradle'
...
android {
buildTypes {
productFlavors {
project.flavors.each { flavor, config ->
"$flavor" {
dimension 'scope'
if (flavor != 'full') {
@patriciogonzalezvivo
patriciogonzalezvivo / GLSL-Noise.md
Last active March 9, 2026 13:09
GLSL Noise Algorithms

Please consider using http://lygia.xyz instead of copy/pasting this functions. It expand suport for voronoi, voronoise, fbm, noise, worley, noise, derivatives and much more, through simple file dependencies. Take a look to https://github.com/patriciogonzalezvivo/lygia/tree/main/generative

Generic 1,2,3 Noise

float rand(float n){return fract(sin(n) * 43758.5453123);}

float noise(float p){
	float fl = floor(p);
  float fc = fract(p);