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

Andreas S. 2021-11-25 13:15:21

Hello everyone! I'm curious in the sense of "thinking together" regarding this happening in the rust community: https://twitter.com/etorreborre/status/1463422189080915969?s=20 what are you throughts in it? Why is it happening within the rust community and more general? How much are programming languages influenced in terms of communicating culture by things like the culture wars? Looking forward to your thoughts

๐Ÿฆ etorreborre: Every community seems to have their own difficulties: https://github.com/rust-lang/team/pull/671 #scala #haskell #rustlang

abeyer 2021-11-25 21:12:25

My 2ยข:

what are you throughts in it?

That's it's kind of pointless to conjecture any useful thoughts around it given that the actual details of what happened to prompt this haven't been shared publicly. Those who are seem to mostly be using it as a soapbox to espouse some pre-established opinion.

Why is it happening within the rust community and more general?

Because squabbles over governance and control happen in every community, always have and probably always will. We're a species with a deep seated desire/need to establish social hierarchies and that shows up in every group.

William Taysom 2021-11-26 01:53:48

As a professional Rubyist and taster of all others, I do feel feedback between culture and library design especially with language design lagging (since languages naturally change more slowly). For example, Ruby libraries consistently choose simplicity over completeness and soundness. Contrast with, say, Haskell where it may be hard to express what I want, but I always come away understanding what exactly is hard better.

Henning Sato von Rosen 2021-11-27 14:38:48

Hi all; I'd like to use Literate programming in Visual Studio Code for js. Anyone doing that? E.g Plug-in recommendations would be appreciated. Ideally I'm looking for something with a subset of similar features to what [Chris Granger] Chris Granger did for Eve [demo]; Free source code ordering, ability to add some interactivity using the code itself etc, mix markdown and js. That should be pretty doable, don't you think?

Thing is I've got a perfect use-case for literate programming in a current project; not much code, just a few hundred LOC, but conceptually heavy. So I'm not in need of any deep magic, it's enough if Literate Programming would: (1) help me understand my own underlying model. (2) Produce something useful to others wanting to understand the code/underlying model later (without extra work on my side ๐Ÿ™‚ ). That would be great!

Recommendations/ideas/experiences are super welcome!

Tom Larkworthy 2021-11-27 15:15:21

Observablehq.com is literate programming but not in VSCode. Its online in the browser, which for me is better (Chrome dev tools). There is an attempt at porting to vscode: https://marketplace.visualstudio.com/items?itemName=GordonSmith.observable-js but I do not know how well that works.

Henning Sato von Rosen 2021-11-27 15:18:53

Wow, thanks @Tom Larkworthy! That sounds great! I'll check it out; What are your experiences with LP; For what projects do you find it useful etc?

Tom Larkworthy 2021-11-27 15:22:04

everything

Tom Larkworthy 2021-11-27 15:22:05

๐Ÿฆ Tom Larkworthy: To my suprise, I have naturally drifted towards documentation-driven development [1] since adopting @observablehq full time w/o consciously deciding to.

Interleaving documenting and coding helps the coding a lot! It's the affordances that hold us back!

https://gist.github.com/zsup/9434452

Tom Larkworthy 2021-11-27 15:23:34

With documentation next to code, I spend a good chunk of time rewriting the documentation sort before every coding session. It improves my documentation a lot (many revisions), but keeps clarifying to myself what the purpose of the contained code is.

With LP, you can't help but read the opening paragraph every time. so you keep refining it and its gets better, and you code backs up that mission.

Kartik Agaram 2021-11-27 17:06:35

Probably not relevant to you, but I use an unconventional form of literate programming that includes tests and an explicit history of the project: http://akkartik.name/post/wart-layers. I think LP is awesome, and there's wide open spaces for making it even more awesome.

William Taysom 2021-11-28 02:32:26

All my comments are war stories.

William Taysom 2021-11-28 02:46:32

Only serious. Latest comments...

/** To preserve browser undo/redo stack, patch StreamActions.replace to modify DOM without moving input[type=text] elements. **/

And...

const missing = []; // collect since removing during iteration breaks iteration.

And...

// Reconnect unchanged controller, more direct than DOM manipulation.  For example, removing and adding the data-controller attribute will cause an animation artifact.
Kartik Agaram 2021-11-28 02:48:43

Reminds me of Notes on the Synthesis of Form, with its focus on "misfits." For every design choice, say what you don't want to happen.

Tom Larkworthy 2021-11-28 08:27:26

In literate programming, test cases can become part of documentation.

"When you do X, Y will happen, e.g. <ACTUAL EXECUTED CODE WITH ASSERTION AND THE ABILITY FOR THE READER TO EDIT>"

I have a reactive unit testing library for Observablehq (@tomlarkworthy/testing). Observable has in built version history so you don;t get to add "commit description", but for things like major releases I write a change log entry in prose as part of the notebook text.

๐Ÿ“ท image.png

Tom Larkworthy 2021-11-28 08:28:47

This application notebook has some tests in it. When you say LP I think linear programming because of this notebook, lol. Its LP LP

https://observablehq.com/@tomlarkworthy/mip