Okay, I can't keep the urge of making my own spreadsheet program at bay any longer.

Let's get started.

Tiny 58 bytes csv parser, now it's time to implement spreadsheet formulae.

Starting selection, gosh, I love doing gui apps in postfix programming languages.

@neauoire This has been on my mind for a while. "I wonder if... uxn... spreadsheet..."

@neauoire You probably get this question a lot but what window manager is that? cwm? hikari? sway with floating windows? I can't tell if the chunky borders are uxn or the wm but either way it looks like a fun & cozy workspace.

@neauoire holy smokes, I didn't have any clue that uxn functioned like a desktop...I need to dig deeper clearly!

@h Sorry no, my answer was unclear. The border are from uxn, there are two instances of the uxn emulator in the screenshot.

I use i3, but you can't see any elements of i3 in the screenshot.

@neauoire oh I see, thanks for the clarification! Well it looks awesome and very fun.

@cassvs I have already
- Left(text editor)
- Adelie(slideshow)
- Nebu(spreadsheet, in progress)

@neauoire @cassvs Ooooh, what will the spreadsheet be able to do? OwO
Like, could someone maybe enter near arbitrary uxntal into a cell to do weird possibly unsafe calculation? Will uxntal be the next visual basic?

@csepp @cassvs well so far my plan looks something like postfix meets Excel


@mcc Okay. If I have bytes left, Ima going to make a Clippy.

@neauoire @mcc "It looks like you're writing a... wait, where am I !?"

@mcc @neauoire i played this game with my brothers so long ago. to solve the final anagram i remember writing a program to scour /usr/dict/words.

we still never beat it

@neauoire I guess now you just need an email client and you'll have RabbitOffice!

@neauoire I am here for this. I am very excited to see how you handle calculations.

@neauoire this is gonna be fun and I don't wanna discourage you or ruin future surprises.

@neauoire assuming your spreadsheet-based sequencer comes next? :)

@neauoire true true. which reminds me i need to see if there is recent work to port orca to monome teletype.

@exquisitecorp there's an incomplete uxn implementation for the teletype, might be better off completing that

@neauoire That's almost suspiciously small. Does it handle escapes? (Or quotes I guess, since that's what CSV does. Which is why linear TSV rules.)

@neauoire I meant whether it chokes on strings that include commas.
Linear TSV link just in case:
A parser took about 10 minutes to write and test in kenC and it doesn't have the pitfalls of CSV.
Of course if you know you won't have this problem, then 58 bytes is probably enough.

@csepp the IDE doesn't let you type in commas at the moment. I don't think I'll bother adding support for that. If I do, I'll add escapes.

@neauoire Ohh, it's just a save format. I though you wanted to import stuff from other places too. Yeah, then it makes sense.

@csepp I thought so at first, but sadly, most spreadsheet apps don't really output formulae, they raster the results when generating CSVs. So I figured, might as well make something that's formulae-first to keep things dynamic, at the cost of cross compatibility.

@neauoire Heh, I never heard "raster" used like that. Language is 😎

@neauoire Yeah, that I heard a bunch, although it doesn't have much to do with baking. 😄
Might start calling cooking things by graphics terms, to mix things up.

@neauoire will you be able to put equations in cells that are just a sequence of uxn instructions? 😈

@neauoire hehehe

Have you thought about how an act of applying instructions over a sequence of cells will work? e.g. the classic "=SUM(A1:A22)"

@neauoire Is the underlying logic that whatever instructions are in the cell get applied like..

A1 A2 ADD A3 ADD A4 ADD A5...


@tty exactly, it's like uxntal but as an array language, the product is A5:B6*

@tty yeah, I don't think things like JMP/LDR/etc would be useful in this case, since it's not stack based.

Sign in to participate in the conversation

Revel in the marvels of the universe. We are a collective of forward-thinking individuals who strive to better ourselves and our surroundings through constant creation. We express ourselves through music, art, games, and writing. We also put great value in play. A warm welcome to any like-minded people who feel these ideals resonate with them.