• R/O
  • HTTP
  • SSH


No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

A categorical programming language

Rev. 时间 作者
baafff0 2023-03-03 04:02:50 Corbin

Enable the JIT during animations. 60 FPS!

1e59f44 2023-03-03 02:44:33 Corbin

Add single-channel greyscale rendering.

Easy enough. The stb writer supports 1-4 channels, with the
interpretation hardcoded for the number of channels:
1. K
2. KA
3. RGB

libcaca is more flexible. Each pixel takes up some number of bits. If
it's 8 bpp or less, then a palette is used; by default, it appears to be
either greyscale or 232 RGB. Above 8 bpp, explicit channel masks are

My API includes a number of channels as well as explicit masks. We could
compute libcaca masks in advance, if we wanted to make libcaca do
exactly the same mapping as stb.

31e3ce3 2023-03-02 14:30:15 Corbin

Isolate the ability to examine output types when sampling.

Since both samplers are hardcoded to RGB outputs, this doesn't do
anything new. But in a commit or two, we'll support RGBA or grayscale
or something along those lines.

f5ba4ac 2023-03-01 14:47:15 Corbin

Pipe animate/draw calls through jelly.

One animate call seems to stall, but there are many possible causes and
it's hard to know where to start. It's also not important at the moment.

e69bb0c 2023-03-01 12:31:15 Corbin

Show partially-dissolved expressions with dips.

This is something I've wanted for a while, and it required so much code
before... now, it seems almost free. Except for the code duplication, of
course! I think I can start hacking again now.

15f64ca 2023-03-01 06:14:29 Corbin

Fix compilation.

ad3ed28 2023-03-01 05:11:11 Corbin

Compare arrows for equality to reuse CAM subroutines.

This cuts down on the amount of generated code by 12% or so.

30ab0d2 2023-03-01 02:51:47 Corbin

Do some factoring in the CAM compiler.

Preparation for next commit.

daa7384 2023-02-28 15:12:12 Corbin

Fix recursion in fold.

We're back in business now, basically.

232b335 2023-02-28 13:13:23 Corbin

Write new dips and write new hives.

846d5dc 2023-02-27 06:10:48 Corbin

Try in vain to improve djinn.

The only thing worse than wasting your life for other people is wasting
your life for yourself.

81c6040 2023-02-27 04:50:54 Corbin

Append new expressions to the heap.

Not yet dipping or saving, but getting there.

5f6826a 2023-02-27 02:40:42 Corbin

Remove abandoned low-level approach.

We revived the RPython codebase instead.

00f0108 2023-02-26 16:43:31 Corbin

Force the principal branch for f-sqrt.

This halves the search space.

9a7286a 2023-02-26 14:53:49 Corbin

Make f-add work better relationally.

For some reason, (comp dup f-add) doesn't work. I don't know why not.

f98007b 2023-02-26 14:30:45 Corbin

Try to require a normal form during djinn.

c198653 2023-02-26 12:50:03 Corbin

Add a deterministic strategy-based element finder.

This is an alternative to the search-based finder.

457153d 2023-02-22 16:13:38 Corbin

Implement type-checking with holes.

The core logic, as you can see, is just one line. But I also had to
update all of the recursive calls, and I had to rewrite a caller, and
rewrite one of *its* callers, and yeah. It all works, though?

38b1a18 2023-02-22 05:06:18 Corbin

Implement list operations relationally.

I got it on the first try? Really? I'm skeptical.

8822254 2023-02-21 15:18:44 Corbin

Recursively expand templates.

50431ae 2023-02-21 03:33:29 Corbin

Fix n-add, basically.

bc7d82a 2023-02-21 01:58:38 Corbin

Make the relational interpreter well-typed.

I guess that that's ambiguous. The metatheory of the interpreter is
still quite fluid. However, we now put types onto every curried
function, so reverse search no longer returns ill-typed expressions
which happen to accidentally work in the relational domain.

I still can't analyze n-add or nat/add. I'm not sure if it's because the
search space is too large, or because of some non-obvious implementation
issue. n-add should work, right?

9ef4630 2023-02-20 11:14:26 Corbin

Allow example lists of two elements.

This could get overwhelming; let's not go overboard here.

ffc6ffd 2023-02-20 07:23:54 Corbin

More floating-point operations in Set.

b04691c 2023-02-18 07:56:51 Corbin

Add the ability to search the hive by name.

Honestly, it's almost better than Tab-completion. Almost.

0d71780 2023-02-18 04:48:54 Corbin

Take some benchmarks with the JIT.

a184ea8 2023-02-18 03:27:16 Corbin

Factor out calls to cammy-sample.

2a7f717 2023-02-18 03:06:19 Corbin

Finish refactoring RPython tools.

Now the new REPL calls RPython to go fast, but high-level manipulation
is now in CHICKEN Scheme. The resulting hive actions are much simpler
and more direct, while the speedy parts are JIT'd and the relational
parts are reversible.

8720f10 2023-02-17 09:06:56 Corbin

Disassemble from REPL.

Progress towards draw and animate.

2b92c2c 2023-02-17 06:37:27 Corbin

Remove old REPL functionality.

The REPL is still there, still useful, but no longer able to depend on