Email or username:

Password:

Forgot your password?
2,452 posts total
Capital

@neauoire :: I always love seeing where people get Uxn running. Feels like the promises of the JVM and Electron made real.

R. L. Dane :debian: :openbsd:

@neauoire

That's a nostalgia double-whammy I wasn't quite ready for 😆

Devine Lu Linvega

My little book on the topic of soroban(japanese abacus) mentions offhandedly the vertical method of adding roman numerals, and so, I had to try it out.

I think I'll always visualize roman numbers this way from now on.

Devine Lu Linvega

Wrote a little program(200 bytes) to encode binary files into base64.

I've come across base64 often in the past, I knew it used some sort of ascii table for packing binary data into text, but it's the first time that I implement it myself.

doc: wiki.xxiivv.com/site/base64.ht
src: git.sr.ht/~rabbits/uxn-utils/t

Source code in left for base64 encoding. The entire codebase is just a few lines.
Lac Meod

@neauoire I don't see the handling of the padding and the alternate MME table for base64 url encoding (that has become a silent de facto norm because of sending binary other HTTP GET :D )

Devine Lu Linvega

@d6 I can't come on IRC at the moment, but I have a question, and I think you might be able to help.

It's probably very silly, but I need a second opinion, for a part of a routine that checks if two characters are whitespace ( char1 char2 -- f ):

Instead of:
#21 LTH SWP #21 LTH AND

Would it be safe to just do:
ORA #21 LTH

David JONES

@neauoire @d6 on a tangential note, I recommend.you implement WITHIN from Forth 2012. It encodes "is in" and "not in" range checks. I found it invaluable for tokenizing in my Forth.

⛧ esoterik ⛧

@neauoire best i can come up with for this is:

LTHk JMP SWP NIP #21 LTH

Kartik Agaram

@neauoire @d6 Neat idea, but here's a counter-example. If the stack countains a space (#20) and a tab (#09), their ORA would be #29, which would return false instead of true.

Devine Lu Linvega

Looking out the window this morning, and seeing another ship from a Merveilles community member anchored right next to us. The seapunk dream is real!

[DATA EXPUNGED]
calutron

@neauoire This makes me want Merveilles to have a "Percent Complete" progress bar as more users switch to boatlife

Devine Lu Linvega

I was reading about sliding wood puzzles recently, and I had some time to kill this afternoon, so I made an implementation of Dad's Puzzler. A puzzle where you must bring the top-left block(2x2), to the bottom-left by sliding things around.
git.sr.ht/~rabbits/uxn-utils/t

Show previous comments
benthor

@neauoire Ooh, very nice. I wonder what it would take to modify this to intuitively work with arrow keys instead. Unfortunately there are some states where it's ambiguous which block should move, e.g. to the right...

Screenshot of Dad's game in an ambiguous state
ティージェーグレェ

@neauoire if you enjoy things such as that, I'm guessing you might also dig 秘密箱 「himitsu boko 」aka puzzle boxes (though a more literal translation would be: "secret box") from Japan which have some wonderfully elaborate work crafting.

dimanech

@neauoire Why you graphic so amazing. It is simple, but it really timeless. Genius!

Show previous comments
Jack :arch: :vim: :suckless:

@neauoire Oh crap, apparently this will be the last strange loop conference. Shame, I love their talks on youtube

awwaiid (Brock Wilcox)

@neauoire I'm hoping to go! Though I haven't fully locked it in yet

Devine Lu Linvega

I've been reading Finkel's book and in Chapter 2, on Control structures(the part about Continuations) to demonstrate, it uses a language called Io, where instead of returning, procedures just invoke their continuations. I've never seen something like this before, and it's really hard to find anything about that language. Is there any sort of implementation of this left anywhere?

Show previous comments
[DATA EXPUNGED]
opfez

@neauoire one of the lambda papers describe a computing model based on returning by invoking continuations, i forget which one though... if you wanna learn more you should look up continuation passing style (cps)!~

Devine Lu Linvega

Kindda wanna build a little vector illustration program.

Dotgrid source in a text editor, with a canvas showing a few line styles and colors.
kelp

@neauoire does this imply a new vector graphics format or will this still export svg?

Tobias

@neauoire That font has extreme early Smalltalk vibes :D

Devine Lu Linvega

@bellinitte You wouldn't happen to have a bresenham arc drawing routine by any chance? I've been trying all morning and it's kicking my butt. In the form

@draw-arc ( x1* y1* x2* y2* clockwise -- )

charlie

@neauoire I don't, but we can join forces!

just so we're on the same page, do you mean something like this? do u have an example implementation in another language on hand maybe?

A diagram of two arcs, one clockwise and one counter-clockwise.
Devine Lu Linvega

We have some green coffee beans left over from @cathos, I will try to see if I can sun-roast them 🌻

Coffee beans bag
Beans in the vacuum tray
Show previous comments
kiwi

@neauoire @cathos do you have to stir/rotate them like when roasting over a flame? so interested to see how this goes

Devine Lu Linvega

Light roast
Hand ground
Moka pot

It turned out absolutely delicious. Next time, I will try a medium roast, I just couldn't wait to taste it. 🌻

Coffee beans, light roast, in the sun.
Devine Lu Linvega

After nearly two weeks of trying to fit a prism inside of a circle, I've managed to find a comfy balance for the uxntal arity checker. I can now get on with my life.

The validator is able to validate its own source code, which is as convoluted as I can stomach in regards to its own complexity.

Most of uxntal wasn't designed per say, it's more that programming patterns emerged from toying around with the primitives. ie: There never was a notion of "loop".

git.sr.ht/~rabbits/uxnbal

Devine Lu Linvega

Due to the absolute lack of planning in terms of programming language design, if you can even call Uxntal a programming language, means that there was never a census of Uxntal's capabilities.

Before putting this together, I don't think I had a good understanding of the actual hidden complexity of the thing.

Type inference was a game of whack a mole, until things started to come together in these past couple of days.

William D. Jones

@neauoire Uxnbal is to Uxntal as Old Gateau is to Old Chateau :).

charlie

@neauoire This is a *monumental* achievement for a language with so few constraints

Devine Lu Linvega

@lunabee just a little message to say how much I love the changes you've made to your website recently. 💜

Devine Lu Linvega

Gorgeous day on the water, we crossed path with a regatta going around Salt Spring.

Sails of all shapes and sizes around us.
Devine Lu Linvega

"a pure stack VM can only access the top element at any time (some instructions pop multiple elements). No practical language uses this; it is only suitable for use in a calculator, and has difficulty even dealing with variables efficiently."

:cooldog:

Devine Lu Linvega

Heading toward Galiano Island later today, while in Sidney, we picked up a part we need to replace next week. This is a cutless bearing, it's very pretty.
#theBoatyard

A brass covered bushing cyclinder that goes around the shaft.
[DATA EXPUNGED]
cathos

@neauoire I love a well-machined part. Beauty in form and function.

Avi Bryant

@neauoire I’m across the strait until Monday but once I’m back if you need any tools or access to my shop let me know.

Devine Lu Linvega

Still working on arity-checking, one simple type that has eluded me until now is when a function doesn't return at all, but falls into the next one.

Finally got around to validating for this one.

Devine Lu Linvega

I remember once explaining uxntal as "simple" language, well, needless to say you won't be catching me calling uxntal simple again.

Devine Lu Linvega

Pretty happy with symbol inspection in Left, being able to see my definition comments across the file is neat.

jakintosh

@neauoire oh this is awesome, is this still using structured editing?

Go Up