Answers.Body: <p>I had the same error and I solved by removing <code>defined</code> and writing only <code>if (%$rref)</code> in the mummerplot code. You have to do this for all the lines that you have it. There should be six lines to correct in this way .</p>
  <p>You can find an explanation of why <a href="https://perldoc.perl.org/functions/defined" rel="nofollow noreferrer">here</a>, that tells that the function <code>defined</code>:</p>
  <blockquote>
  <p>Returns a Boolean value telling whether EXPR has a value other than the undefined value undef. If EXPR is not present, $_ is checked.</p>
  </blockquote>
  <p>And then:</p>
  <blockquote>
  <p>Use of <code>defined</code> on aggregates (hashes and arrays) is no longer supported. It used to report whether memory for that aggregate had ever been allocated. You should instead use a simple test for size:
  <code>if (%a_hash)   { print &quot;has hash members\n&quot;   } </code></p>
  </blockquote>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-06-03T12:16:34.040Z
Answers.Text: @KamilSJaron thank you but to be honest the code is written in C and I am not really expert on this. Anyway, I tried to add more details that is what has helped to me .
Answers.UserDisplayName: HelpNeederStudent
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-06-03T12:21:26.293Z
Answers.Text: This is totally enough for people to get the idea that it's just an outdated part of the code, good job in figuring it out!
Answers.UserDisplayName: Kamil S Jaron
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-06-03T06:50:14.753Z
Answers.LastActivityDate: 2021-06-03T12:13:50.243Z
Answers.LastEditDate: 2021-06-03T12:13:50.243Z
Answers.UserDisplayName: HelpNeederStudent
Body: <p>My third year comp sci friend got me this far, I hope you guys can help me with the last inch! For the record, I have practically no coding experience. I am using the 3.9.4 alpha version of MUMmer.</p>
  <p>Here is the manual I have been following: <a href="http://mummer.sourceforge.net/examples/" rel="nofollow noreferrer">http://mummer.sourceforge.net/examples/</a></p>
  <p>I am at part 2.2.2 Running the Mummer plot, and I type in the final line to generate the plot.</p>
  <p>I type:</p>
  <p><code>mummerplot -x &quot;[0,8666124]&quot; -y &quot;[0,9025688]&quot; -postscript -p mummer mummer.mums</code></p>
  <p>And the error is:</p>
  <pre><code>Can't use 'defined(%hash)' (Maybe you should omit the defined ()?) at /usr/bin/mummerplot line 884
  </code></pre>
  <p>Line at 884:</p>
  <pre><code>if ( defined (%<span class="math-container">$rref) ) {                                                                                                            #-- skip reference sequence or set atts from hash
          if ( !exists ($rref-&gt;{$idR}) ) { next; }
          else { ($refoff, $reflen, $refdir) = @{$rref-&gt;{$</span>idR}}; }
  </code></pre>
  <p>Its perl</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-12-03T08:26:24.360Z
Comments.Text: Hi could you please present your code inline, e.g. copy and paste? It is hard to read as an image. This looks like Perl, could you confirm this?
Comments.UserDisplayName: M__
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-12-03T16:36:01.817Z
Comments.Text: Cross-posted on biostars: https://www.biostars.org/p/476874/
Comments.UserDisplayName: Ram RS
Tags: <errors>
Title: MUMmer plot error. Line 884. What to do?
ThreadText: # MUMmer plot error. Line 884. What to do?
  
  (Asked by: username_0 on 2020-12-03)
  
  My third year comp sci friend got me this far, I hope you guys can help me with the last inch! For the record, I have practically no coding experience. I am using the 3.9.4 alpha version of MUMmer.
  
  Here is the manual I have been following: <http://mummer.sourceforge.net/examples/>
  
  I am at part 2.2.2 Running the Mummer plot, and I type in the final line to generate the plot.
  
  I type:
  
  `mummerplot -x "[0,8666124]" -y "[0,9025688]" -postscript -p mummer mummer.mums`
  
  And the error is:
  
  ```
  Can't use 'defined(%hash)' (Maybe you should omit the defined ()?) at /usr/bin/mummerplot line 884
  
  ```
  
  Line at 884:
  
  ```
  if ( defined (%$rref) ) {                                                                                                            #-- skip reference sequence or set atts from hash
          if ( !exists ($rref->{$idR}) ) { next; }
          else { ($refoff, $reflen, $refdir) = @{$rref->{$idR}}; }
  
  ```
  
  Its perl
  
  **Tags:** errors
  
  > **Comments:**
  > **username_1**: Hi could you please present your code inline, e.g. copy and paste? It is hard to read as an image. This looks like Perl, could you confirm this?  
  > **username_2**: Cross-posted on biostars: https://www.biostars.org/p/476874/  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_3 on 2021-06-03. Score: 2
  
  I had the same error and I solved by removing `defined` and writing only `if (%$rref)` in the mummerplot code. You have to do this for all the lines that you have it. There should be six lines to correct in this way .
  
  You can find an explanation of why [here](https://perldoc.perl.org/functions/defined), that tells that the function `defined`:
  
  > Returns a Boolean value telling whether EXPR has a value other than the undefined value undef. If EXPR is not present, $\_ is checked.
  
  And then:
  
  > Use of `defined` on aggregates (hashes and arrays) is no longer supported. It used to report whether memory for that aggregate had ever been allocated. You should instead use a simple test for size:
  > `if (%a_hash) { print "has hash members\n" }`
  
  > **Comments:**
  > **username_3**: @username_4 thank you but to be honest the code is written in C and I am not really expert on this. Anyway, I tried to add more details that is what has helped to me .  
  > **username_4**: This is totally enough for people to get the idea that it's just an outdated part of the code, good job in figuring it out!  
  
  ---
  
  