!pYVedTwEYiMdCdysAu:catircservices.org

Amaranth HDL

3177 Members
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.org12 Servers

Load older messages


SenderMessageTime
26 Jul 2024
@_discord_129000890760822784:catircservices.orgmr.martin changed their display name from mr.martin to mr.martin#0.13:55:26
@_discord_129000890760822784:catircservices.orgmr.martin changed their display name from mr.martin#0 to mr.martin.13:55:28
@libera_mindw0rk:catircservices.orgmindw0rk joined the room.14:29:23
@libera_jn:catircservices.org@libera_jn:catircservices.org left the room.14:31:02
@libera_jn:catircservices.org@libera_jn:catircservices.org joined the room.15:21:51
@libera_jn:catircservices.org@libera_jn:catircservices.org left the room.15:21:52
@_discord_689340796679487543:catircservices.orgmickey_0001 joined the room.17:09:56
@rob_chipflow:matrix.orgRob Taylor

Catherine: i hacked up a patch last night to allow the use of Annotated[] in data.Flow members, for those users who wish to have full type checking available for their codebase. Would it be of interest if I finish that up properly, and would that require an RFC? Thanks!

e.g.

  class Command(data.Struct):
      class Kind(enum.Enum):
          SET_ADDR = 0
          SEND_DATA = 1

      valid: Annotated[Value, unsigned(1)]
      kind: Kind
      #
      params: Annotated[Value, data.UnionLayout({
          "set_addr": data.StructLayout({
              "addr": unsigned(32)
          }),
          "send_data": data.StructLayout({
              "byte": unsigned(8)
          })
      })]
18:00:56
@libera_frgo:catircservices.orgfrgo joined the room.19:09:53
@rob_chipflow:matrix.orgRob Taylora different option for these users would be a docs addition where to use @no_type_check, but I think that doesn't work with classes in mypy still (works with pyright>1.1.347 though)19:49:24
@rob_chipflow:matrix.orgRob Taylor
In reply to @rob_chipflow:matrix.org
a different option for these users would be a docs addition where to use @no_type_check, but I think that doesn't work with classes in mypy still (works with pyright>1.1.347 though)
oh no. pyright also doesnt honour @no_type_check on classes
20:25:31
@_discord_104960828368793600:catircservices.orgstormwoodpecker changed their display name from stormwoodpecker to stormwoodpecker#0.22:05:15
@_discord_104960828368793600:catircservices.orgstormwoodpecker changed their display name from stormwoodpecker#0 to stormwoodpecker.22:05:16
@libera_frgo:catircservices.orgfrgo left the room.22:18:23
@libera_frgo:catircservices.orgfrgo joined the room.22:19:52
@whitequark:matrix.orgCatherine
In reply to @rob_chipflow:matrix.org

Catherine: i hacked up a patch last night to allow the use of Annotated[] in data.Flow members, for those users who wish to have full type checking available for their codebase. Would it be of interest if I finish that up properly, and would that require an RFC? Thanks!

e.g.

  class Command(data.Struct):
      class Kind(enum.Enum):
          SET_ADDR = 0
          SEND_DATA = 1

      valid: Annotated[Value, unsigned(1)]
      kind: Kind
      #
      params: Annotated[Value, data.UnionLayout({
          "set_addr": data.StructLayout({
              "addr": unsigned(32)
          }),
          "send_data": data.StructLayout({
              "byte": unsigned(8)
          })
      })]
that would require an RFC and the RFC would have to comprehensively cover the use cases for typing rather than just address one papercut
22:46:51
@rob_chipflow:matrix.orgRob Taylor
In reply to @whitequark:matrix.org
that would require an RFC and the RFC would have to comprehensively cover the use cases for typing rather than just address one papercut
hmm, its more about users actually being able to write code with a type checker enabled
22:47:35
@rob_chipflow:matrix.orgRob Taylorrather than typing for amaranth overall22:47:47
@rob_chipflow:matrix.orgRob Taylorits only view/struct/union that breaks22:48:03
@rob_chipflow:matrix.orgRob Taylorhappy to write that up though22:48:09
@rob_chipflow:matrix.orgRob Taylorcurrently even switching to basic doesnt work with pyright :(22:48:55
@rob_chipflow:matrix.orgRob Taylor(i.e. the only solution i have right now is to # type ignore)22:50:17
@whitequark:matrix.orgCatherine @rob_chipflow:matrix.org: please read all of https://github.com/amaranth-lang/rfcs/pull/11 first, as the reasons that RFC was closed would have to be addressed first 23:06:19
@rob_chipflow:matrix.orgRob Taylor
In reply to @whitequark:matrix.org
@rob_chipflow:matrix.org: please read all of https://github.com/amaranth-lang/rfcs/pull/11 first, as the reasons that RFC was closed would have to be addressed first
will do!
23:06:35
@_discord_295736408688033792:catircservices.org@_discord_295736408688033792:catircservices.org left the room.23:09:07
@rob_chipflow:matrix.orgRob TaylorYep, think i can answer all that, went through PEP 649 and PEP 563 a few times yesterday (both accepted now)23:11:49
@rob_chipflow:matrix.orgRob TaylorI'll see what I can pull together23:11:59
@whitequark:matrix.orgCatherineoh, they are accepted? that's actually kind of disappointing23:21:05
@whitequark:matrix.orgCatherinewait no 649 is fine23:21:58
@whitequark:matrix.orgCatherineokay, I re-read 649, this is in fact a good way to implement them and should not have negative effects on us23:25:31

There are no newer messages yet.


Back to Room ListRoom Version: 10