8
21
Fork
You've already forked k
5
forked from ngn/k
No description
  • KCL 58.2%
  • C 33%
  • KFramework 4.1%
  • Vim script 1.5%
  • JavaScript 1.4%
  • Other 1.7%
Find a file
2026年07月10日 10:53:22 +09:00
aoc aoc 2023年12月30日 03:54:52 +02:00
dy whr 2023年04月27日 05:31:51 +03:00
e rm e/100.k 2023年12月03日 19:29:54 +02:00
g infer rank of mixed arrays 2026年05月14日 10:25:37 +09:00
l #! 2023年12月08日 03:42:01 +02:00
t single statement list is just a statement 2026年07月03日 13:33:32 +09:00
vim-c SN -> ZN 2023年12月16日 22:31:06 +02:00
vim-k Update vim-k/syntax/k.vim 2025年07月08日 08:19:04 +02:00
w support for portrait orientation 2026年06月26日 17:59:58 +10:00
x save pointer higher in stack 2026年03月10日 11:51:51 +09:00
.gitignore gitignore 2023年03月09日 20:32:21 +02:00
.ignore 2.c 2022年10月25日 23:17:58 +03:00
0.c implicit cast 2026年04月13日 14:51:08 +02:00
1.c squeeze on floor 2026年04月03日 16:32:24 +09:00
2.c explicitly vectorize mmmZZ_ 2026年06月24日 04:14:12 +02:00
3.c float arith should not go in the bit path 2026年06月24日 04:14:12 +02:00
4.c (c) 2024年01月02日 19:54:02 +02:00
a.c rework debug stabs 2026年06月24日 12:26:10 +09:00
a.h try to help the compiler (+missed refactoring) 2026年06月24日 14:21:44 +09:00
b.c globals are shy too 2026年07月08日 14:11:09 +09:00
c.c various map bugs 2026年01月19日 07:52:16 +09:00
Dockerfile smaller images 2025年08月15日 14:15:58 +09:00
e.c premature release 2026年01月16日 10:36:38 +09:00
f.c replace hash function in string interning with murmur 2026年02月12日 01:59:53 +01:00
g.h Use bit masks to test types 2026年06月24日 14:19:53 +09:00
g.k Use bit masks to test types 2026年06月24日 14:19:53 +09:00
h.c nitpick 2026年06月24日 14:21:47 +09:00
i.c Use bit masks to test types 2026年06月24日 14:19:53 +09:00
j.c stray write 2026年01月16日 10:26:35 +09:00
k.c void objects for ffi 2026年03月28日 12:18:06 +09:00
k.h void objects for ffi 2026年03月28日 12:18:06 +09:00
LICENSE agpl 2019年12月17日 02:19:05 +02:00
lopts Add example of registering foreign functions into the REPL. Make link options easier to modify. 2022年09月12日 09:11:44 +02:00
m.c rework debug stabs 2026年06月24日 12:26:10 +09:00
makefile add -march=native to libk.so makefile rule 2026年05月25日 13:17:05 +10:00
o.c handle booleans 2026年05月13日 18:22:07 +09:00
opts opts 2023年04月20日 14:51:26 +03:00
p.c single statement list is just a statement 2026年07月03日 13:33:32 +09:00
r.c deprecate macro 2026年01月16日 10:26:35 +09:00
readme.txt List the Docker build as canonical 2025年02月12日 09:48:08 +09:00
repl.k render singleton char lists properly 2026年03月05日 13:12:29 +09:00
s.c buffer underflow 2026年01月23日 10:27:55 +09:00
v.c try to help the compiler (+missed refactoring) 2026年06月24日 14:21:44 +09:00
w.c review special code for eachprior of arithmetic verbs 2026年06月24日 04:14:12 +02:00
x.c non-builtin verbs flat in TLP 2026年07月10日 10:53:22 +09:00

this k implementation is (lightly?) supported and is a fork of https://codeberg.org/ngn/k
for others, see https://k.miraheze.org/wiki/Running_K
ngn/k is a simple fast vector programming language
try: https://ngn.codeberg.page/k
build: make # Dockerfile uses latest gcc and should be considered canonical
use: rlfe -h ~/.k_history ./k repl.k
chat: https://matrix.to/#/#ngnk:matrix.org
license: GNU AGPLv3 (v3 only) - https://codeberg.org/ngn/k/raw/branch/master/LICENSE
community:
 learn:
 book (work in progress) https://xpqz.github.io/kbook/
 tutorial (work in progress) https://github.com/gitonthescene/ngnk-libs/tree/master/tutorial
 tutorial https://github.com/razetime/ngn-k-tutorial
 embedding example https://codeberg.org/suhr/kes
 searchable database of snippets https://github.com/secwang/ngnkcart
 edit:
 vim mode (in this repo) ./vim-k
 emacs mode https://github.com/gitonthescene/ngnk-mode
 fun:
 code golf https://code.golf/rankings/holes/all/k/bytes
 code golf https://codegolf.stackexchange.com/search?tab=newest&q=ngn
 aoc solutions by multiple people https://k.miraheze.org/wiki/Advent_of_Code
 analysis of ngn/k AoC solutions https://github.com/kidd/arraylangs-index
 dyalog competition solutions https://github.com/xpqz/dyalogk
 interop:
 windows port https://github.com/traws0/ngnk-windows
 rust bindings https://crates.io/crates/ngnk
 continuous integration for osx https://github.com/xpqz/ngnk_mirror
 nix package https://github.com/nathyong/ngnk-nix
 more:
 collection of libraries https://github.com/gitonthescene/ngnk-libs
 unparser https://github.com/chrispsn/ngn-k-unparser
 codemirror lezer parser https://github.com/SirBogman/codemirror-lang-k
 various utils http://arlyle.sdf.org/k/
 kpl, apl-like extensions for k https://codeberg.org/CptJimKirk/kpl
 bindings for a regex library https://github.com/x86y/onikuruma
 videos of solving aoc in ngn/k https://www.twitch.tv/fcopy
source:
0.c main() k.h embedding api
m.c memory manager and repl a.h common header
p.c parser g.h header generated by g.k
b.c bytecode compiler and vm t/ unit tests
a.c eval, apply, amend: . @ w/ web ui
h.c shape-related: x#y ,x x,y x/ example for using libk.so
o.c order and equivalence o/ build output
s.c to string: $x `k@x l/ k libraries
c.c type conversions g/ https://codegolf.stackexchange.com/
f.c find e/ https://projecteuler.net/
r.c random dy/ https://problems.tryapl.org/
1.c arithmetic monadic verbs aoc/ https://adventofcode.com/
2.c arithmetic dyadic verbs
3.c arithmetic adverbs
4.c prime sieve
i.c input/output
v.c other verbs
w.c other adverbs
j.c json: `j@x `j?x
e.c error handling
k.c embedding api