Email or username:

Password:

Forgot your password?
2,453 posts total
Devine Lu Linvega

"Maude’s basic programming statements are very simple and easy to understand. "

Never, ever start your tutorials that way.

Show previous comments
R4_Unit

@neauoire Yeah this is one of the first things I learned when writing technical things. People write these things thinking it makes it more approachable (don’t worry, you’ll have an easy time) but all it does is alienate anyone for whom it is not easy. I actually wrote a quick plugin for my text editor that highlighted any instance of “simple”, “easy”, “trivial”, “straightforward”, and about a dozen other similar words. Deleting them always made my writing better and more approachable.

nf

@neauoire when I first started doing technical writing in my work, @robpike taught me never to describe things as “simple” or “obvious” or to say “just do x”, all of which imply a facility in the reader that may not exist. It stuck with me.

Devine Lu Linvega

To find out where the forest forest fires are in Canada, you have two options:
- A twitter account, that requires you to sign in to access.
- A javascript heavy map that takes forever to load, and will 50/50 crash the pinebook

This is pretty great.

Show previous comments
Gabriel Pettier

@neauoire i know this shouldn't be needed, but is nitter (for example nitter.nl/) fine to access the twitter account unlogged?

Florian

@neauoire I've been in canada for only a year and half, so I'm definitely ignorant in that regard, but is the 2nd one you're mentioning firesmoke.ca/ ?

If not, their FAQ provide a technical description of their system and source; would that help? firesmoke.ca/resources/bsc-201

phisch

@neauoire this should (easily) made available via a stupid APIs that gives a json as response or better in an osm-like format.
I don't get why this isn't the main way of propagating this kind of information

Devine Lu Linvega

Implemented something like lambdas(fancy word to mean inline anonymous functions) in #Uxntal, it makes some types of code a bit more readable. Here's a little snippet that applies the body of a lambda to each pixels of a 256x256 texture. The body of the lambda is Viznut's code from the Permacomputing paper in the latest Computing Within Limits workshop.

Left, Dexe and the canvas showing the result of the program that looks a bit like birds.
WimⓂ️

@neauoire Yay, Uxntal just got a bit more functional ^_^
This is really handy for maps and folds.
As always I'm amazed by how quickly you inplemented this!

Devine Lu Linvega

I spoke too soon earlier, it turns out that forth-style lambdas are possible by adding only 31 bytes to the self-hosted assembler. It might be worth it, it adds a lot of expressiveness by allowing to play with a lot of joy-like things.

Show previous comments
max22-

@neauoire looks cool ! often I can't read uxntal code, but I immediately understood this one. where do you store the code of the lambda ? you just push the address of the first instruction after the first "{" ?

Nico Nico Belić

@neauoire you're making me come back to Factor and Joy :)

and try uxntal + varvara but that's for another day... maybe a port of Joy?

Devine Lu Linvega

Instead of an absolute address(a-la cdr) to the end of the lambda scope, I'm piggy-backing on the JSI opcode which stores a relative address, so this gives me the length of the lambda scope, and as a side effect, "free" Pascal-style strings. I've totally lost track of where I was going with this lambda project, but I LOVE IT

Devine Lu Linvega

A Hawk & A Hacksaw - You Have Already Gone to the Other World
#theStudio

nf

@neauoire ah man haven’t thought about this for a while!

Devine Lu Linvega

Spent all afternoon trying to implement closures in Uxntal, with an implementation budget of 0x20 bytes, and I couldn't get it done. I've tried both strategies, inline and jumping over, or collect and write at scope change. Both are more intricate than I'm willing to spend, but in different ways.

William D. Jones

@neauoire The ~~Kolmogorov~~ 100 Rabbits Complexity of closures is over 32 bytes. Noted.

Helge Rausch

@neauoire I played around with closures here, to get a *spec style DSL working: github.com/tsujigiri/uxpec#usa
I didn't check, but it's very likely much more than 32 bytes, though... 😅

Devine Lu Linvega

By the time we got back to the shore, the water had risen to waist high where we had anchored it, which was the beach at the time. When trying to board the dinghy from the water, I went for a very brisk and bracing swim as I tried to plop myself into it. I'm sure it must have been an absolute joy to watch for any observer from the anchorage.

Show previous comments
Paul Lalonde

@neauoire ...there is nothing – absolutely nothing – half so much worth doing as simply messing about in boats.

[DATA EXPUNGED]
Devine Lu Linvega

@wim_v12e I'd like to have you thoughts on this idea, if you have the time, it doesn't have to be right away. But for a little while now I've been thinking of adding something to uxntal, or maybe make it its own language, but basically uxntal with inline definitions. You could anonymous segments of code, and the assembler would write those in memory someplace, and just put their address as a LIT2 at the definition. Any thoughts on this? That's your department.

David JONES

@neauoire @wim_v12e i've always felt that these should be like strings. the anon def is compiled right into the word, with a skip-over put before it, and a literal after (or similar mechanism). The classic FORTH word DOES> does something a little bit like that.

Devine Lu Linvega

<screen capture of code displayed in a proportional font>
me: *swoons*

Thomas Jespersen

@neauoire maybe late to the party, but does this do anything for you?

Devine Lu Linvega

"providing all those features in 64KB sent me down a very, very deep rabbit hole, and I'm still not entirely out of it."
scholar.social/@wim_v12e/11066

Funktal Hello World in Adelie
Devine Lu Linvega

In more ornate but still realistic cases, things become worse:

int *(*pfp)();

bell-labs.com/usr/dmr/www/chis

Panicz Maciej Godek

@neauoire i don't think it's bad at all (especially if you have typedef)

What I think is bad about C is, for example, this:

char c = 0x80;
printf("%d", c==0x80);

Devine Lu Linvega

Went for dinner, came back and had to scroll through two pages of new followers notifications from almost exclusively the hachyderm instance. Could one of you care to explain?

Devine Lu Linvega

Does anyone know what happened to Su Hang?

Devine Lu Linvega

Every evening, Rek does readings to me from Sylvie & Bruno, we're almost done. We fall asleep laughing at Bruno's delightful and totally absurd humour and.. the demented illustrations.

Mein Heir from Syvlie &amp; Bruno, the character has a certain Totoro je-ne-sais-quoi
rezmason

@neauoire "Crabbed age" sounds like the distant future era the protagonist visits in HG Wells's Time Machine

ggtr1138

@neauoire Thanks, I don't know this book! For those who are wondering who is the illustrator : it's Harry Furniss. commons.wikimedia.org/wiki/Fil

Devine Lu Linvega

It turns out that I spend way more time editing 80-columns text files than I expected, so I added a way in Left to add some words in the body of a paragraph, and reformat it to fit. A tiny addition, that'll save me a ton of time.
wiki.xxiivv.com/site/left.html

DHeadshot's Alt

@neauoire
Didn't the Amstrad PCW have this in it's editor?

Devine Lu Linvega

I get my best ideas walking in the woods, but then, I'm in the woods.. So, I gotta run back

Devine Lu Linvega

There has been a tiny change to Varvara(#uxn) where the #00 Screen/sprite value will, from now on, only clear the pixels that are present in the sprite data at Screen/addr*. I've ported all the 100r roms to support the change, and updated the docs.

updated documentation: wiki.xxiivv.com/site/varvara.h
mailing list: lists.sr.ht/~rabbits/uxn/%3CCA
discussion: lists.sr.ht/~rabbits/uxn/%3C69
example file: git.sr.ht/~rabbits/uxn/tree/ma

There has been a tiny change to Varvara(#uxn) where the #00 Screen/sprite value will, from now on, only clear the pixels that are present in the sprite data at Screen/addr*. I've ported all the 100r roms to support the change, and updated the docs.

updated documentation: wiki.xxiivv.com/site/varvara.h
mailing list: lists.sr.ht/~rabbits/uxn/%3CCA
discussion: lists.sr.ht/~rabbits/uxn/%3C69

The blending modes in Varvara, with the example source code in Left behind.
mirth

@neauoire What hardware and OS do you host Varvara on now?

tbsp

@neauoire I believe the launcher uses /projects/library/load-rom.tal which uses an old screen clearing routine (instead of pixel fill) which fails to properly clear the screen after this change.

Devine Lu Linvega

We're always gathering notes for projects we'll try to tackle in the upcoming winter, but one that I've been particularly looking forward is to take out the household water tank we put under the v-bert, and build one from scratch that follows the curves of the bow, built into the hull itself.

Avi Bryant

@neauoire it will be far from a perfect fit but I do have the water tank from under the v-berth of my Albin that you are welcome to.

Ethan Rosenthal

@neauoire Not a water tank, but my dad built a holding tank out of fiberglass that follows the curve of the hull, if you're looking for ideas: sltf.com/boat/system/plumbing/

Devine Lu Linvega

As the forecasts for next summer are rolling in, we're making plans to prepare Pino over the winter so we can ride the heat wave out in the damp and foggy Broughtons next year.

Go Up