about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* new macro: retKartik K. Agaram2021-06-201-6/+7
| | | | http://arclanguage.org/item?id=11068
* start dropping parens everywhereKartik K. Agaram2021-06-201-96/+98
|
* start guessing parentheses based on indentationKartik K. Agaram2021-06-203-77/+66
|
* snapshotKartik K. Agaram2021-06-208-22/+591
| | | | | This is going better than expected; just 3 failing tests among the new ones.
* start emitting indent tokensKartik K. Agaram2021-06-185-31/+227
|
* redo next-token in more high-level termsKartik K. Agaram2021-06-182-73/+95
|
* .Kartik K. Agaram2021-06-181-30/+30
|
* .Kartik K. Agaram2021-06-181-49/+49
|
* start emitting token for newlineKartik K. Agaram2021-06-181-5/+12
|
* newlines are now a tokenKartik K. Agaram2021-06-182-4/+12
|
* start implementing indent-sensitivityKartik K. Agaram2021-06-181-2/+26
| | | | | | | General plan: stop skipping newlines during tokenization introduce a new indent token, initially skip it transparently start doing cleverer things
* .Kartik K. Agaram2021-06-181-6/+2
|
* .Kartik K. Agaram2021-06-181-8/+6
|
* make code in Readme easier to copyKartik K. Agaram2021-06-182-14/+14
| | | | Thanks Sumeet Agarwal for the suggestion.
* fix emulated buildKartik K. Agaram2021-06-181-2/+2
| | | | | | | | Embarrassingly broken since May 15 (commit ff8ec9bcff). Thanks Jack Rusher for reporting this. (fixes #48)
* shell: stop punning tokens as cellsKartik K. Agaram2021-06-183-89/+116
|
* Merge pull request #47 from akkartik/fix-precisionKartik Agaram2021-06-172-2/+5
|\ | | | | Fix precision
| * create .gitignoreSumeet Agarwal2021-06-171-0/+3
| |
| * change precision when loading sandbox codeSumeet Agarwal2021-06-171-2/+2
|/
* .Kartik Agaram2021-06-1556-44831/+46598
|
* .Kartik K. Agaram2021-06-151-0/+150
|
* .Kartik K. Agaram2021-06-152-1/+3
|
* .Kartik Agaram2021-06-153-73/+103
|
* .Kartik Agaram2021-06-152-0/+32
|
* .Kartik Agaram2021-06-151-0/+85
|
* .Kartik K. Agaram2021-06-151-1/+3
| | | | | Support newlines. Looks like we pasted the input from the browser window during the pairing session.
* example program by Sumeet AgarwalKartik K. Agaram2021-06-151-0/+48
| | | | | https://adventofcode.com/2017/day/1 https://archive.org/details/2021-06-02-akkartik-sumeet
* shell: better screenshotKartik Agaram2021-06-154-2/+2
|
* always print black pixels when rendering screensKartik K. Agaram2021-06-151-2/+0
| | | | This is an old 'optimization' that turns out to not actually matter.
* .Kartik Agaram2021-06-151-0/+7
|
* shell: improve docsKartik Agaram2021-06-152-5/+14
|
* .Kartik Agaram2021-06-151-33/+34
|
* document responsiveness trade-offKartik K. Agaram2021-06-152-35/+28
|
* do more work per fake-screen refreshKartik K. Agaram2021-06-151-1/+1
| | | | | | Refreshing the fake screen is still a heavyweight operation. Double-buffering makes it less obvious but doesn't actually reduce the amount of work. We need to ensure that we do enough work between refreshes to make them economic.
* more precisely track count of calls to evalKartik K. Agaram2021-06-152-20/+13
| | | | | Before I only separately counted calls at each stack depth. I don't remember if that seemed good enough or was just an oversight.
* flickerlessly render fake screens in environmentKartik K. Agaram2021-06-155-35/+100
| | | | | | | | Font rendering now happens off the real screen, which provides the effect of double-buffering. Apps can now also use convert-graphemes-to-pixels for more traditional double-buffering.
* .Kartik K. Agaram2021-06-151-3/+4
|
* periodic run of misc_checksKartik K. Agaram2021-06-123-4/+5
| | | | | I should really stop using /disp8 jumps at the top-level given how inconvenient it is to check for overly large offsets.
* helper to render fonts outside video RAM, take 2Kartik K. Agaram2021-06-122-28/+56
|
* fix a bounds checkKartik K. Agaram2021-06-121-4/+5
| | | | This should have gotten cleaned up during commit e0f6dd5240 (Mar 23).
* roll back previous commitKartik K. Agaram2021-06-122-48/+22
| | | | | These helpers don't actually help render to buffers with geometries different from video RAM.
* extract a helper to render fonts outside video RAMKartik K. Agaram2021-06-122-22/+48
|
* .Kartik K. Agaram2021-06-129-208/+140
| | | | | Roll back to commit 70919b45f0. Recent commits add lots of extra function args for dubious benefit.
* snapshotKartik K. Agaram2021-06-123-14/+71
| | | | Looks like what's slowing down screen rendering is in fact _font_ rendering.
* .Kartik K. Agaram2021-06-121-16/+14
|
* trying to eliminate flicker when rendering screenKartik K. Agaram2021-06-121-13/+26
| | | | | | | | | | | | | | | | | | | Two interesting things: - We don't really need double-buffering for rendering the screen on the sandbox as a progress indicator. Everything else is untouched, and render-screen should be doing that as well. - Rendering just pixels of the fake screen is buttery smooth. It's the _graphemes_ that are slowing things down. Even though there's so many fewer of them! As a result, drawing the fake screen less frequently in `evaluate` doesn't actually help with flicker. Even though it'll make the debug cycle shorter. So my current plan is to attack flicker in isolation before I mess with the render frequency. In this commit I optimized away the cursor handling. Still doesn't seem to be helping. In fact it actually seems _worse_.
* eliminate some implicit writes to real screenKartik K. Agaram2021-06-127-120/+120
|
* .Kartik K. Agaram2021-06-125-66/+69
| | | | | | Rename cells containing screens to screen vars because of the ambiguity that each grapheme in fake screens is represented by a type screen-cell. While we're at it, we also analogously rename keyboard vars.
* shell: larger fake screenKartik K. Agaram2021-06-124-37/+41
|
* .Kartik Agaram2021-06-111-3/+3
|