Better way to initialize parameters

Hi

I have the following parameters declared in a package:

package param_pkg;
parameter int A[N] = {6,5,4,3,2,1,0}; //Where N is 7;
parameter int B = 7;
parameter int C = 8;
parameter int D[M] = {12,11,10,9}; //M=4;

endpackage

and so on the parameters are declared in incremental fashion. Is there a better way to do this, like use a index i and do i++ or use for loop?

You can use constant functions to enable procedural assignments.

function int some_function( input int some_args /*, other args...*/ );
  int return_val;
  return_val = some_args;
  if( some_args )
    return_val = something_else;
  else if( foo )
  begin
     for( some_iterative_method )
     begin : some_iterative_block
     end
     return_val = blah;//...
  end
//...
  return( return_val );
endfunction

localparam N = 8;
localparam MY_PARM = some_function( N );