Re: [sv-bc] Function call without parenthesis

From: Brad Pierce <Brad.Pierce_at_.....>
Date: Wed Dec 14 2005 - 09:21:27 PST
As explained in

   http://eda.org/svdb/bug_view_page.php?bug_id=93

requiring a () in subroutine calls of no arguments would violate the
"Uniform Access Principle", which requires that syntax not distinguish
whether a property is stored or is computed on demand.

-- Brad

-----Original Message-----
From: Paul Graham [mailto:pgraham@cadence.com] 
Sent: Wednesday, December 14, 2005 8:45 AM
To: mcnamara@cadence.com
Cc: Brad.Pierce@synopsys.COM; sv-bc@eda.org
Subject: Re: [sv-bc] Function call without parenthesis

> So, I am trying to parse this.  Brad, you believe that the attribute
> inquiry methods may be invoked without the parenthesis?
> 
> Specifically, that "x = str.len;" is legal?

So why exactly do we want to allow vhdl-like syntax for
functions of no arguments?  It's a pain for the vhdl guys to
implement (or at least it was for me).  I understand that
for backwards compatibility we allow this for system
functions:

    x = $random;

but system functions and tasks are easy to recognize and 
don't pose the same problems.

I think verilog and its descendants should stick to the C
philosophy of "no cute syntax".

Paul
Received on Wed Dec 14 09:21:36 2005

This archive was generated by hypermail 2.1.8 : Wed Dec 14 2005 - 09:22:07 PST