Skip to content

mnikander/lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

405 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lab

This is a collection of coding exercises and experiments. Some basic configs such as the and git-related settings are shared across labs. Most labs use TypeScript and Deno, but other programming langauges and tools are used as well. Each lab has its own directory which is like a standalone mini-repository. There are no code dependencies between labs.

Each lab is phrased as a question. The tables below provide an overview of those questions. Open questions are sorted by priority (highest at the top). Resolved questions are sorted by their resolution date (most recent at the top). If a question is marked with strikethrough it was either aborted or done as part of a another lab.

Open

Num Parent Created Tags Question
0023 2026-05-15 memory Can ownership be modelled within functions and across function boundaries with a small DSL?
2026-0-

Resolved

Num Parent Created Tags Question
0022 2026-05-14 web How can the content and structure of an HTML page be edited in place?
0014 2026-02-20 ssa, graphs How can an iterative fixed-point solver compute the availabilty of SSA variables?
0021 2026-05-13 capability, io How can a side-effect capabilities be injected into modules?
0020 2026-05-06 ssa, memory Can a dataflow analysis check lifetimes of SSA variables in a function?
0019 2026-05-05 ssa, graphs How can a control flow graph be constructed from SSA code?
0018 2026-05-03 memory Can variable lifetimes be verified with a domain specific language (DSL)?
0017 2026-05-02 ast, grammar Can an ANF-inspired grammar be relaxed to support nested expressions like Scheme?
0015 2026-03-16 backend How can Hono be used to accept GET and POST requests?
0016 2026-03-21 types How can a simple type system be defined and checked?
0013 2026-01-03 graphs What is a lightweight way to implement reachability on directed graphs in Typescript?
0012 2026-01-02 datalog, ssa How can non-dominance of CFG nodes be expressed using positive Datalog?
0011 2025-12-28 datalog, types Can cons-cells be used to type-check multi-argument functions using Datalog?
0011 2025-12-27 datalog, types How can multi-argument functions be type-checked using Datalog?
0009 2025-12-22 datalog, types How can a basic type-checker be implemented in Datalog?
0010 2025-12-28 datalog How can the equality of lists, constructed of cons-cells, be tested in Datalog?
0008 2025-12-19 datalog How can I solve logic problems using Datalog?
0007 2025-12-18 datalog How can Datalog be used to verify properties on graphs?
0006 2025-10-15 memory How can cons cells be implemented?
0005 2025-10-25 vm How can an evaluator for 3-address code be implemented?
0005 2025-10-15 vm, lowering What is a simple set of linear instructions which can be used for programming?
0005 2025-10-15 vm, evaluation How can an evaluator using a program counter on simple instructions be implemented?
0005 2025-10-15 vm, evaluation How can stack frames be implemented?
0004 2025-10-15 ast, passes How can a function call node in an AST be split into two nodes, for currying?
0004 2025-10-15 typescript, deno How can a package be imported in a deno project?
0004 2025-10-15 syntax, ast How can currying be implemented for function application?
0004 2025-10-16 ast Which simple AST representations are useful for analysis, optimization, and lowering prototypes?
2025-10-18 control-flow How can recursion be implemented for anonymous functions, using 'fix'?
0003 2025-10-05 parsing How can the language of balanced parentheses be verified by a table-driven parser?
0002 2025-06-08 evaluation How can de Bruijn levels be used to evaluate unary lambda calculus?
0001 2025-10-15 typescript, deno How can Deno be used to prototype a function and a test in typescript?
0000 2025-10-15 learning Can a questions repo, with compact code snippets and notes, speed up learning and implementation?

Copyright (c) 2025 Marco Nikander

About

Questions, experiments, and prototypes for various topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors