You are viewing archived messages.
Go here to search the history.

Ivan Reese 🕰️ 2020-07-02 05:17:47

In this update, I share.. some books I've been reading, to help me knock down a few barriers in my ongoing development of Hest. My current focus is on representing and rendering objects in space, so that includes things like: coordinate systems, affine transformations, cameras and perspective/ortho projection, vertex and fragment shaders on the GPU… and then carefully abstracting all of this so that the artist using Hest will have the right degree of control, and can (for instance) have objects that encode their graphics in various formats (eg: HTML, SVG, glTF) which all coexist in the same space, efficiently.

https://www.youtube.com/watch?v=LTNb-6uAcPg

Dan Cook 2020-07-19 22:52:26

3blue1browm is great. I now somehow have a spacial understanding of quaternions ... I think

Dan Cook 2020-07-19 22:53:14

Also, I think it's the face behind the raspberry pi(e)?

Dan Cook 2020-07-20 00:06:25

Ah, I stand corrected

nicolas decoster 🕰️ 2020-07-03 21:55:12

It is the end of my first "full time" week, and it is really cool (yet a bit weird for now) to have the "future of programming" as the main thing to think about. So some video watching, some chat, some reading, etc. And, some archeology on an old project with a bit of coding to refresh tiny parts and try new things.

It is what I then called zed, an editor highly inspired by PureData and Max/MSP but to mix visual programming with text programming for the web platform (and, sorry, no audio for now). The podcast episode with Miller Puckette (the father of PureData and Max/MSP) two month ago made me want to make a TMW video on this zed project, in echo of the discussions following the podcast (and didn't have time then): https://futureofcoding.slack.com/archives/C5T9GPWFL/p1589265827352600

So here is a quick (2 minutes is really short...) presentation of this old project of mine which I will kept some ideas for my future work: https://archive.org/details/ogadaki_foc_tmw_1

Dan Cook 2020-07-19 23:02:07

Using the tool to present about the tool - that was great!

nicolas decoster 2020-07-20 08:11:56

Yes, I wanted to do that as an exercice to see how far a tool can be used to explain things even present itself. And that's why I have tried to do the same with Scratch for my second video. It was very fun and insightful to do so.

Maikel van de Lisdonk 🕰️ 2020-07-17 15:04:49

Hi, I am working on a flow-based-programming editor and this is an update of some interactive debugging features that I am working on which help me to find bugs, fix peformance and memory leaks but also to understand some math formulas and algorithms better. https://youtu.be/ivzEnInAzt4

Daniel Garcia 2020-07-20 03:07:57

It's looking really cool Maikel van de Lisdonk!

Is the project open source?

Maikel van de Lisdonk 2020-07-20 06:48:34

Well, I am using open platforms to develop big parts of it but I am not yet communicating that openly. There's a few reasons: I need to write proper documentation and examples to make it useful and haven't got the time yet, also I still want to change some parts of it and don't want people/projects to dependent on it already. And furthermore I probably need some marketing around it to reach people. And then there's the business part I am thinking of (can I make a business out of my project so should I open source it at all). What are the thoughts here about open sourcing a project such as mine?

Chris Maughan 2020-07-25 14:25:26

A small update on the live coding tool. This shows an experiment I tried with generation of a musical pattern, in a similar way to Extempore.

Mariano Guerra 2020-07-25 16:48:09

what's the design behind stopping something that is playing?

Mariano Guerra 2020-07-25 16:48:36

in many places you keep a reference to the thing and ask it to stop or have a general function that stops everything, how does it work here?

Chris Maughan 2020-07-25 18:30:59

Yeah, both. I don't have it yet, but I was planning to add a way to stop all notes, and possibly individual synthesizers. In terms of pattern, what I've seen is that each pattern has a name, and can be individually stopped/started. I don't show it in the vid, but you can make different named patterns and play different synths at the same time.

In extempore you disable a pattern by using a different operator, I copied that by adding a ! after the pat command.

In the video I stop/start stuff because I haven't yet added the code to have the pattern wait for the next cycle before updating itself. I think I'll need to keep the last pattern around until beat 0 comes around and swap in the updated copy.

I will refresh my memory on Tidal Cycles, and have a look at FoxDot/Ixi lang to see what they do too.

Kartik Agaram 2020-07-26 04:36:08

Today's demo is a half-baked snapshot of what a spreadsheet for trees might look like:

https://archive.org/details/akkartik-2min-2020-07-25

Lately I'm most excited by two ideas:

This demo kinda engages with the first. I'm still noodling on how to whether there's a clean way to work in the second.

Ionuț G. Stan 2020-07-26 08:46:05

It reminds me of mind-mapping software or the Gingko app: https://gingkoapp.com/

Garth Goldwater 2020-07-26 11:38:12

awesome! i really like all these prototypes of like... alternate history of desktop applications. one thing that was a little confusing is that you’re always affecting the objects to the right of your highlighted box, so it took me a second to understand the “create a child” command. i think @Ionuț G. Stan ‘s ginkgo suggestion has an interface that’s slightly easier to understand in terms of what’s changing—i think the cursor moves to children when you create a child

Kartik Agaram 2020-07-26 14:23:26

Good idea! Thank you, I have no idea what I'm doing 🐶

nicolas decoster 2020-07-26 14:43:36

I like the idea of creating an horizontal hierarchy. And that it fills all the space (compared to mindmap nodes).

nicolas decoster 2020-07-26 14:44:39

And I also like that prototyping with text force you to go to essential things!

Dan Cook 2020-07-26 20:52:17

Kartik Agaram - If saving the instruction pointer includes saving the execution state at that point as well, then I think you're talking about continuations. There are multiple ways those can be modeled.

The options I'm aware of are:

  1. Store and recreate the machine (or VM) state (registers, call stack, etc.)
  1. Some abstract representation of execution state (apart from the actual underlying one) that everything you care about saving runs on top of / is evaluated in terms of. (In other words, something like the demo you referred to).
  1. Something using coroutines (I don't remember the details)
  1. In language where code can be serialized and later parsed and executed at runtime, and the execution context of each function call is reified into an object that can also be saved and restored in like manner, and the language itself (not just the code being written in it) is implemented in Continuation Passing Style (CPS), then the continuation itself can just be serialized and then deserialized and invoked as a function. ... I'm not sure to what a degree that necessarily just translates into "if you are programming in Scheme" (or at least a homoiconic language); but anyway, this is one way to do it.
Garth Goldwater 2020-07-26 20:59:42

if we’re talking continuations i’m going to insert my compulsive plug for concatenative programming: a continuation is just the state of the stack plus the rest of the tokens in the program. and you could absolutely implement it with a tree instead of a stack