P1076 February 18, 2016 Meeting Minutes

Attendees:

  • Brent Hayhoe, Rob Gaddi, Patrick Lehmann, Jim Lewis, Peter Flake, Ernst Christen, Jing Pang

Agenda:

Meeting Discussion

  • What's Next - see PrivateDocuments file: _summary_vhdl_requirements_priority.xlsx
  • Garbage Collection (item 31)
    • What stops a simulator from doing this now? Nothing
      • The language allows this (9.3.7 note 2), however, we cannot count on it happening
    • Cannot be handled at the user level
    • implied deallocate
    • Use model: to_string using write(buf, ...)
    • Allow user to suggest deallocation with deallocate
    • Good upside and little downside (simulator speed issue?)
    • Reference count (issues with a ring), Mark & sweep
  • Path_name, Shared Variables, and Subprograms
    • path_name and instance_name follow where the protected type is declared
    • We need an attribute that follows where the shared variable is declared
      • Exposes instance to implementation
    • within a protected type, use of this'instance_name makes sense (see Rob's notes)
    • within a regular subprogram, intent is to go back to the line that called the subprogram.
      • Intelligent call stack
      • Information model is already in VHPI
      • Maybe this type of information should be gathered via std.env
    • May require 2 separate solutions one for PT and one for regular subprograms
  • Composition of protected types
    • Deriving capability from existing objects and layering rather than recreating
    • Look at Suave tagged types for additional ideas (ADA has tagged types)
  • Generics for Protected Types
    • Look also at ADA discriminants as an alternative - discriminant is more like a subtype constraint
    • Coordinate with interfaces and bundles
    • Each generic instance of a type is a unique type (and likely needs to be for PT type applications)
  • Vector Literal Introspection
    • For single dimensional array objects, look at the object itself to help disambiguate subprogram calls
    • Compile time issue.
    • Is it a valuable enough change to justify the effort in implementing it?
    • Need someone who is really interested in this to take it further
  • Conditional Expression or Operator
    • Addresses issues with initializing constants, signals, and variables
    • Straight forward add implementation 2 and justify that it makes the language symmetric with assignment capability
    • Implementation 1 would require some analysis when it is mixed with a conditional assignment.
    • It seems to be a no-brainer to do it for initializers - leverage variable assignment capability
    • For a general expression it only makes sense if it generalizes many different things.
      • Complication is in signal assignments, as when allows waveform elements
  • Stopped at line 37

Review and Approve Meeting Minutes:

Rob, Ernst

Next Meeting: Thursday February 25, 2016 11 am Pacific

Previous Meeting: Thursday February 11, 2016

Topic revision: r3 - 2020-02-17 - 15:36:16 - JimLewis
 
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback