whitequark[cis] changed the topic of #amaranth-lang to: Amaranth hardware definition language · weekly meetings: Amaranth each Mon 1700 UTC, Amaranth SoC each Fri 1700 UTC · play https://amaranth-lang.org/play/ · code https://github.com/amaranth-lang · logs https://libera.irclog.whitequark.org/amaranth-lang · Matrix #amaranth-lang:matrix.org
lf has quit [Ping timeout: 246 seconds]
lf has joined #amaranth-lang
<_whitenotifier-5> [amaranth-lang/playground] whitequark pushed 1 commit to main [+0/-0/±2] https://github.com/amaranth-lang/playground/compare/3af780b5a88f...9ba7b1ca7797
<_whitenotifier-7> [amaranth-lang/playground] whitequark 9ba7b1c - Fix all remaining issues with scrolling.
<_whitenotifier-5> [amaranth-lang/playground] whitequark 68fb2a0 - Fix stale waveforms remaining after clicking "Run" with the tab selected.
<_whitenotifier-7> [amaranth-lang/playground] whitequark pushed 1 commit to main [+0/-0/±1] https://github.com/amaranth-lang/playground/compare/9ba7b1ca7797...68fb2a0c360c
<_whitenotifier-5> [amaranth-lang/amaranth-lang.github.io] whitequark ea2dedd - Deploying to main from @ amaranth-lang/playground@68fb2a0c360ca4d84c0749e188601c7bce7b690d 🚀
<_whitenotifier-7> [amaranth-lang/amaranth-lang.github.io] whitequark pushed 1 commit to main [+0/-0/±4] https://github.com/amaranth-lang/amaranth-lang.github.io/compare/04122934474a...ea2deddcab9c
Degi_ has joined #amaranth-lang
Degi has quit [Ping timeout: 268 seconds]
Degi_ is now known as Degi
Lord_Nightmare has quit [Quit: ZNC - http://znc.in]
Lord_Nightmare has joined #amaranth-lang
sugarbee1 is now known as sugarbeet
notgull has quit [Ping timeout: 255 seconds]
notgull has joined #amaranth-lang
notgull has quit [Ping timeout: 255 seconds]
notgull has joined #amaranth-lang
notgull has quit [Ping timeout: 260 seconds]
peepsalot has quit [Remote host closed the connection]
peepsalot has joined #amaranth-lang
cr1901_ has joined #amaranth-lang
cr1901 has quit [Ping timeout: 255 seconds]
<_whitenotifier-5> [amaranth] tilk commented on pull request #1129: Remember origins of a fragment during elaboration - https://github.com/amaranth-lang/amaranth/pull/1129#issuecomment-1959192125
notgull has joined #amaranth-lang
cr1901_ is now known as cr1901
galibert[m] has joined #amaranth-lang
<galibert[m]> There's a difference between amaranth rtlil and yosys rtlil?
<galibert[m]> I thought rtlil was rtlil :-)
<galibert[m]> (just read issue #1100)
<galibert[m]> That's a beautiful comment you have there: https://github.com/amaranth-lang/amaranth/blob/main/amaranth/back/rtlil.py#L332
<whitequark[cis]> <galibert[m]> "That's a beautiful comment you..." <- I was... unhappy
<galibert[m]> You seemed... opiniated at that point in time
<whitequark[cis]> I wrote that a few days ago lol
<galibert[m]> heh, didn't check the timing
Wanda[cis] has joined #amaranth-lang
<Wanda[cis]> heh
<Wanda[cis]> I stand by this, by the way
<Wanda[cis]> (that comment in large part came from my frustration too)
<galibert[m]> shared frustatration then
<Wanda[cis]> you have no idea how much time I have wasted on dealing specifically with the init attribute
<galibert[m]> I believe you
<galibert[m]> is that one of the differences between yosys rtlil and amaranth rtlil?
<Wanda[cis]> wtf is amaranth rtlil
<galibert[m]> Errr no, I meant IR, duh
<Wanda[cis]> oh. well, yes.
<galibert[m]> Somehow I equated IR and rtlil
<Wanda[cis]> oh gods no
<galibert[m]> In fpga land the gods have left in disgust a long time ago
<galibert[m]> Isn't the interface between amaranth and yosys rtlil though?
<Wanda[cis]> hm?
<Wanda[cis]> well
<Wanda[cis]> this is the file that converts amaranth NIR into RTLIL, yes
<galibert[m]> amaranth is talking ascii rtlil to yosys, right?
<Wanda[cis]> yes
<galibert[m]> so #1100 is about creating some abstract rtlil-representing objects with ascii conversion in them, and generate those from nir and not directly?
<Wanda[cis]> something like that, yes
<galibert[m]> makes sense
<Wanda[cis]> basically we want to do scene graph rendering of RTLIL, instead of immediate mode rendering
<galibert[m]> hehe yeah
<Wanda[cis]> the current code has several places with horrible hacks because basically what we wanted to do was add some attributes to a wire after the fact
<Wanda[cis]> s/wanted/_wanted_/, s/the/it/, s/fact/was first emitted/
<Wanda[cis]> which is of course not possible in immediate mode
<galibert[m]> yeah, that's kind of problematic
<_whitenotifier-7> [amaranth] lekcyjna123 commented on pull request #1129: Remember origins of a fragment during elaboration - https://github.com/amaranth-lang/amaranth/pull/1129#issuecomment-1959806906
<_whitenotifier-7> [amaranth] github-merge-queue[bot] created branch gh-readonly-queue/main/pr-1129-c40cfc9fb56e51d3b3fd96e3ccfb296d57e75456 - https://github.com/amaranth-lang/amaranth
<_whitenotifier-5> [amaranth-lang/amaranth] whitequark 09029cd - hdl._ir: remember origins of a fragment during elaboration.
<_whitenotifier-7> [amaranth-lang/amaranth] github-merge-queue[bot] pushed 1 commit to main [+0/-0/±2] https://github.com/amaranth-lang/amaranth/compare/c40cfc9fb56e...09029cdd914d
<_whitenotifier-7> [amaranth] whitequark closed pull request #1129: Remember origins of a fragment during elaboration - https://github.com/amaranth-lang/amaranth/pull/1129
<_whitenotifier-7> [amaranth] github-merge-queue[bot] deleted branch gh-readonly-queue/main/pr-1129-c40cfc9fb56e51d3b3fd96e3ccfb296d57e75456 - https://github.com/amaranth-lang/amaranth
<_whitenotifier-5> [amaranth-lang/amaranth-lang.github.io] whitequark pushed 1 commit to main [+0/-0/±34] https://github.com/amaranth-lang/amaranth-lang.github.io/compare/ea2deddcab9c...3d437df743b5
<_whitenotifier-7> [amaranth-lang/amaranth-lang.github.io] github-merge-queue[bot] 3d437df - Deploying to main from @ amaranth-lang/amaranth@09029cdd914d550e924cecfb9aa1692a536b4161 🚀
<cr1901> https://github.com/amaranth-lang/amaranth/blob/main/amaranth/hdl/_ast.py#L1733 Is it deliberate that this docstring isn't in the online docs (AFAICT, from a basic search)?
<cr1901> I've been trying to document an Amaranth class, and cross-ref to Amaranth docs, and have been wondering why even w/ intersphinx, I can't get :class:`amaranth:Signal` to work
<whitequark[cis]> theoretically it would be after this https://amaranth-lang.org/docs/amaranth/latest/reference.html#values
<whitequark[cis]> in practice, the docs are a work in progress
<cr1901> Must be something else, I can't get ":class:`amaranth:Value`" to work within a docstring inside a class either
<cr1901> intersphinx_mapping = {'amaranth': ('https://amaranth-lang.org/docs/amaranth/latest', None)}
<whitequark[cis]> :class:amaranth.hdl.Value
<cr1901> Your code works. I also have python in my intersphinx_mapping, and "{class}`python:zipfile.ZipFile`" works while "{class}`amaranth:Value`" doesn't. Do you have any idea why?
<cr1901> shit... ignore that
<cr1901> :class:`python:zipfile.ZipFile`* works, :class:`amaranth:Value`* does not
<cr1901> Answer appears to be, looking at "python -m sphinx.ext.intersphinx https://amaranth-lang.org/docs/amaranth/latest/objects.inv", that "amaranth doesn't supply shortcuts like the top level as part of its inventory".
<cr1901> The correct cross ref is :class:`amaranth:amaranth.hdl.Value` (marked up differently than :class:`amaranth.hdl.Value`, though they resolve to the same place)
<whitequark[cis]> yep
<whitequark[cis]> I don't think I even can supply shortcuts like that?
<cr1901> Ahhh
<cr1901> Is there a way to express a Signal with specific shape as part of docs (e.g. as part of the Attributes)? I know a particular attribute "foo" is of type Signal, but the user might want to know that foo is "a Signal with shape Bar".
<whitequark[cis]> we should figure out a proper format for this eventually
<cr1901> the :py:class: role has provisions for type hints/generics, but it's not clear to me that there's a standardized way to represent "type with instantiated generic parameters" or "in/out". The docs for crc.Processor look okay, but it's obvious that napoleon/sphinx didn't do any special markup w/ the bespoke format :P https://amaranth-lang.org/docs/amaranth/latest/stdlib/crc.html#amaranth.lib.crc.Processor