<commit_before># Copyright (C) 2005-2006, The Perl Foundation.
# $Id$

=head1 Overview

This is an implementation of 'POSIX bc' for Parrot.
'bc' is an arbitrary precision calculator dating back from Unix stone age.
See http://en.wikipedia.org/wiki/Bc_%28Unix%29 for details.
This implementation is based on Python classes generated by ANTLR2 and
Java classes generated by ANTLR3.

=head1 Why Parrot bc

Self education. A fairly simple language but has symbols and subroutines.
Test for decimal bignum libraries.
A starting point for more interesting languages like R, GDL, JavaScript.

=head1 Parrot bc with ANTLR 2

Develoment has stalled.

The language grammar is in grammar/bc_python.g. ANTLR2 takes the grammar and
generates Python classes for lexer, parser and tree parser.
The driver program bc.py takes bc source and generates PIR.
The generated PIR sets up a PAST data structure, and from there on Allison Randalls 
TGE takes over.

=head2 Parrot bc with ANTLR 3

Under development.

Generate PIR that sets up a PAST data structure, that will be transformed to POST
which will be transformed to PIR, which will be  executed by Parrot.
For details set 'languages/punie/punie.pir' and
http://svn.lohutok.net/nam/trunk/parrot/docs/compiler_tools.pod

=head1 Vision

Use the Ruby code generation target of ANTLR3 and run with languages/ecmascript.
Add a tree transformation step that generates an common tree AST that translates directly
to PAST. 

=head1 SEE ALSO

  L<http://en.wikipedia.org/wiki/Bc_%28Unix%29>
  L<http://www.opengroup.org/onlinepubs/000095399/utilities/bc.html>
  L<http://www.funet.fi/pub/doc/posix/p1003.2/d11.2/4.3>
  L<http://directory.fsf.org/gnu/bc.html>
  L<http://www.gnu.org/software/bc/manual/html_mono/bc.html>
  L<http://svn.lohutok.net/nam/trunk/parrot/docs/compiler_tools.pod>

=cut<commit_msg>[Parrot bc] Note that development has stalled.<commit_after># Copyright (C) 2005-2006, The Perl Foundation.
# $Id$

=head1 Overview

This is an implementation of 'POSIX bc' for Parrot.
'bc' is an arbitrary precision calculator dating back from Unix stone age.
See http://en.wikipedia.org/wiki/Bc_%28Unix%29 for details.
This implementation is based on Python classes generated by ANTLR2 and
Java classes generated by ANTLR3.

=head1 Why Parrot bc

Self education. A fairly simple language but has symbols and subroutines.
Test for decimal bignum libraries.
A starting point for more interesting languages like R, GDL, JavaScript.

=head1 Parrot bc with ANTLR 2

Develoment has stalled.

The language grammar is in grammar/bc_python.g. ANTLR2 takes the grammar and
generates Python classes for lexer, parser and tree parser.
The driver program bc.py takes bc source and generates PIR.
The generated PIR sets up a PAST data structure, and from there on Allison Randalls 
TGE takes over.

=head2 Parrot bc with ANTLR 3

Development has stalled as well. Current devel takes place in 'languages/plumhead'.

Generate PIR that sets up a PAST data structure, that will be transformed to POST
which will be transformed to PIR, which will be  executed by Parrot.
For details set 'languages/punie/punie.pir' and
http://svn.lohutok.net/nam/trunk/parrot/docs/compiler_tools.pod

=head1 Vision

Use the Ruby code generation target of ANTLR3 and run with languages/ecmascript.
Add a tree transformation step that generates an common tree AST that translates directly
to PAST. 

=head1 SEE ALSO

  L<http://en.wikipedia.org/wiki/Bc_%28Unix%29>
  L<http://www.opengroup.org/onlinepubs/000095399/utilities/bc.html>
  L<http://www.funet.fi/pub/doc/posix/p1003.2/d11.2/4.3>
  L<http://directory.fsf.org/gnu/bc.html>
  L<http://www.gnu.org/software/bc/manual/html_mono/bc.html>
  L<http://svn.lohutok.net/nam/trunk/parrot/docs/compiler_tools.pod>

=cut
{'fraction_non_alphanumeric': 0.08156216790648246, 'fraction_numerical': 0.02497343251859724, 'mean_word_length': 4.280504908835905, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 6, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4488957', 'n_tokens_mistral': 1304, 'n_tokens_neox': 1209, 'n_words': 454}