Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ANN: The Falcon Programming Language 0.8.14.2

0 views
Skip to first unread message

Giancarlo Niccolai

unread,
Dec 22, 2008, 1:17:38 PM12/22/08
to
We have recently released The Falcon Programming Language 0.8.14-2, a
small bugfix release for Falcon 0.8.14 (Vulture).

Falcon is an Open Source, simple, fast and powerful programming
language, easy to learn and to feel comfortable with, and a scripting
engine ready to empower mission-critical multithreaded applications.

Falcon provides six integrated programming paradigms: procedural, object
oriented, prototype oriented, functional, tabular and message oriented.
And you don't have to master all of them; you just need to pick the
ingredients you prefer, and let the code to follow your inspiration.

If you are interested to know more, or to get involved in developing
"The Falcon Programming Language", please visit our home site at:

http://www.falconpl.org

Thanks for your attention,

Giancarlo Niccolai.

Mensanator

unread,
Dec 22, 2008, 4:26:30 PM12/22/08
to
On Dec 22, 12:17 pm, Giancarlo Niccolai <gc-remov...@removeme-

Do you support unlimited precision math?

Nowadays, any language that doesn't is worthless,
i.e., of no value to me.

>
> Giancarlo Niccolai.

user923005

unread,
Dec 23, 2008, 6:09:09 AM12/23/08
to
On Dec 22, 10:17 am, Giancarlo Niccolai <gc-remov...@removeme-

What is the primary purpose for your language?
Is it compiled or interpreted or does it use pcode like Java or .NET?
Do you have a formal grammar for the language?

Giancarlo Niccolai

unread,
Dec 26, 2008, 8:54:19 AM12/26/08
to
Mensanator ha scritto:

Ehm... you know, there some language who doesn't (namely, C, C++, C#,
Java, Lua etc. to name few).

It's performance vs. usability.

We're working at integrating unlimited precision math without degrading
int64 math speed (i.e. only when needed, with automatic
transformations), and it's a quite urgent target, so I think we'll
support it soon. The idea is that of maintaining performance for those
application not willing to use unlimited precision math while adding
usability for those that needs it.

G.N.

Giancarlo Niccolai

unread,
Dec 26, 2008, 9:03:32 AM12/26/08
to
user923005 ha scritto:

> On Dec 22, 10:17 am, Giancarlo Niccolai <gc-remov...@removeme-
> niccolai.cc> wrote:
>> We have recently released The Falcon Programming Language 0.8.14-2, a
>> small bugfix release for Falcon 0.8.14 (Vulture).
>>
>> Falcon is an Open Source, simple, fast and powerful programming
>> language, easy to learn and to feel comfortable with, and a scripting
>> engine ready to empower mission-critical multithreaded applications.
>>
>> Falcon provides six integrated programming paradigms: procedural, object
>> oriented, prototype oriented, functional, tabular and message oriented.
>> And you don't have to master all of them; you just need to pick the
>> ingredients you prefer, and let the code to follow your inspiration.
>>
>> If you are interested to know more, or to get involved in developing
>> "The Falcon Programming Language", please visit our home site at:
>>
>> http://www.falconpl.org
>
> What is the primary purpose for your language?

At engine level, standalone applications with very fast integration with
third party library (i.e. SDL/GD) and embedding in application for high
throughput data processing (i.e. tenth thousands invocations per
second). At language level, more "natural" and "complete" programming
style.

> Is it compiled or interpreted or does it use pcode like Java or .NET?

Pcode. Modules are self-closed entity much like .class files, but
compilation doesn't require foreign modules. In other words, compilation
can be done locally without having a copy of the whole runtime
environment, and the compiled (possibly encrypted) code can be sent
elsewhere for remote execution. Symbol resolution is performed at link
time after compilation, and before execution.

As the compiler can be plugged-in with different generators, we're
studying the possibility to have C, ASM or direct target-machine object
code outputs.

> Do you have a formal grammar for the language?

Sort of; we have bisonized it, so we could create a formal document
quite easily if needed. Up to date, we just used our "Survival guide" as
a reference.

GN.

Mensanator

unread,
Dec 26, 2008, 3:20:48 PM12/26/08
to
On Dec 26, 7:54�am, Giancarlo Niccolai <gc-remov...@removeme-

niccolai.cc> wrote:
> Mensanator ha scritto:
>
>
>
>
>
> > On Dec 22, 12:17 pm, Giancarlo Niccolai <gc-remov...@removeme-
> > niccolai.cc> wrote:
> >> We have recently released The Falcon Programming Language 0.8.14-2, a
> >> small bugfix release for Falcon 0.8.14 (Vulture).
>
> >> Falcon is an Open Source, simple, fast and powerful programming
> >> language, easy to learn and to feel comfortable with, and a scripting
> >> engine ready to empower mission-critical multithreaded applications.
>
> >> Falcon provides six integrated programming paradigms: procedural, object
> >> oriented, prototype oriented, functional, tabular and message oriented.
> >> And you don't have to master all of them; you just need to pick the
> >> ingredients you prefer, and let the code to follow your inspiration.
>
> >> If you are interested to know more, or to get involved in developing
> >> "The Falcon Programming Language", please visit our home site at:
>
> >> � �http://www.falconpl.org
>
> >> Thanks for your attention,
>
> > Do you support unlimited precision math?
>
> > Nowadays, any language that doesn't is worthless,
> > i.e., of no value to me.
>
> Ehm... you know, there some language who doesn't (namely, C, C++, C#,
> Java, Lua etc. to name few).

Not quite true. Java has its BigInteger Class
and C/C++ have libraries available such as
MIRACL and GMP. Even Python, which natively
supports unlimited precision inteers has a wrapper
for the GMP library that adds such things as
unlimited precision rationals and floats, not to
mention support for number theoretic functions
such as GCD, LCM, MODULAR INVERSE, IS_PRIME,
NEXT_PRIME, LEGENDRE_SYMBOL amongst others.

Besides, this is the 21st century. There is
simply no excuse for such omission in NEWLY
created languages.

>
> It's performance vs. usability.

Where usability should have preference. I could
care less how fast your language CAN'T solve my
problems.

>
> We're working at integrating unlimited precision math without degrading
> int64 math speed (i.e. only when needed, with automatic
> transformations),

Ok, let us know when you reach that point. Until then,
I have research to do and won't even look at a language
that can't support my work.

> and it's a quite urgent target, so I think we'll
> support it soon. The idea is that of maintaining performance for those
> application not willing to use unlimited precision math while adding
> usability for those that needs it.

Python with the GMP library is a very good example.
High-level language support coupled with a compiled
C library to do the heavy lifting. An excellent
combination. Sure, a C program coupled with GMP
would perform better - at the cost of losing the
high-level of Python. 99.999% of my work is in
Python and in only two cases did I work directly
in C for performance reasons and regretted every
minute of it.

Oh, and even though Java is supposedly faster than
Python, GMP outperforms Java's BigIntegers enough
to more than make up for Python's byte code interpreter.

>
> G.N.

Giancarlo Niccolai

unread,
Dec 26, 2008, 3:29:47 PM12/26/08
to
Mensanator ha scritto:
> On Dec 26, 7:54�am, Giancarlo Niccolai <gc-remov...@removeme-
> niccolai.cc> wrote:
>> Mensanator ha scritto:
>>
>>
>>
>>

>> Ehm... you know, there some language who doesn't (namely, C, C++, C#,


>> Java, Lua etc. to name few).
>
> Not quite true. Java has its BigInteger Class
> and C/C++ have libraries available such as
> MIRACL and GMP.

I thought you were talking of integrated support. Every language can
bind external libraries. So, if this is the answer you're searching,
then yes, it does. It will do in an even more integrated way in a near
future.

GN.

Mensanator

unread,
Dec 26, 2008, 8:31:53 PM12/26/08
to
On Dec 26, 2:29 pm, Giancarlo Niccolai <gc-remov...@removeme-

niccolai.cc> wrote:
> Mensanator ha scritto:
>
> > On Dec 26, 7:54 am, Giancarlo Niccolai <gc-remov...@removeme-
> > niccolai.cc> wrote:
> >> Mensanator ha scritto:
>
> >> Ehm... you know, there some language who doesn't (namely, C, C++, C#,
> >> Java, Lua etc. to name few).
>
> > Not quite true. Java has its BigInteger Class
> > and C/C++ have libraries available such as
> > MIRACL and GMP.
>
> I thought you were talking of integrated support. Every language can
> bind external libraries.

Keyword here is CAN.

When I asked the author of Seed7 this very question, he agrees
to bind GMP and then asks me what functions I need.

Uh,...ALL of them, but no, that's apparently too much trouble,
so CAN isn't good enough.

> So, if this is the answer you're searching,
> then yes, it does.

That's what I was asking, I certainly didn't expect you
to write code better than GMP.

> It will do in an even more integrated way in a near
> future.

Let's hope so. And a good idea is to not repeat the same
mistakes that Python has made in the past: "Sure, you can
write C extensions and bind them to Python. But if you're
using Windows you have to use the same compiler used to
create Python, which is obsolete and no longer available
from Microsoft." That kind of integration I don't need.

>
> GN.

Keith Thompson

unread,
Dec 26, 2008, 10:03:19 PM12/26/08
to
Mensanator <mensa...@aol.com> writes:
[...]

> Do you support unlimited precision math?
>
> Nowadays, any language that doesn't is worthless,
> i.e., of no value to me.

You should understand that the terms "worthless" and "of no value to
you" are not synonymous. I accept at face value your statement that
any language that doesn't support unlimited precision math is of no
value *to you*. Such language might be quite useful for others who
don't happen to need that particular feature.

--
Keith Thompson (The_Other_Keith) ks...@mib.org <http://www.ghoti.net/~kst>
Nokia
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"

thomas...@gmx.at

unread,
Dec 27, 2008, 5:31:27 AM12/27/08
to
On 27 Dez., 02:31, Mensanator <mensana...@aol.com> wrote:
> On Dec 26, 2:29 pm, Giancarlo Niccolai <gc-remov...@removeme-
> niccolai.cc> wrote:
> > Mensanator ha scritto:
> > > On Dec 26, 7:54 am, Giancarlo Niccolai <gc-remov...@removeme-
> > > niccolai.cc> wrote:
> > >> Mensanator ha scritto:
> > >> Ehm... you know, there some language who doesn't (namely, C, C++, C#,
> > >> Java, Lua etc. to name few).
>
> > > Not quite true. Java has its BigInteger Class
> > > and C/C++ have libraries available such as
> > > MIRACL and GMP.
>
> > I thought you were talking of integrated support. Every language can
> > bind external libraries.
>
> Keyword here is CAN.
>
> When I asked the author of Seed7 this very question, he agrees
> to bind GMP and then asks me what functions I need.

BTW: Do you work on problems where you need support?
Now I have some time on my hands, so I could add features
you need. If you want to solve problems with the help of
Seed7 I would like to give you the support necessary.

Greetings Thomas Mertes

Seed7 Homepage: http://seed7.sourceforge.net
Seed7 - The extensible programming language: User defined statements
and operators, abstract data types, templates without special
syntax, OO with interfaces and multiple dispatch, statically typed,
interpreted or compiled, portable, runs under linux/unix/windows.

Giancarlo Niccolai

unread,
Dec 27, 2008, 11:08:00 AM12/27/08
to
Mensanator ha scritto:
> On Dec 26, 2:29 pm, Giancarlo Niccolai <gc-remov...@removeme-
> niccolai.cc> wrote:
>> Mensanator ha scritto:
>>
>>> On Dec 26, 7:54 am, Giancarlo Niccolai <gc-remov...@removeme-
>>> niccolai.cc> wrote:
>>>> Mensanator ha scritto:
>>>> Ehm... you know, there some language who doesn't (namely, C, C++, C#,
>>>> Java, Lua etc. to name few).
>>> Not quite true. Java has its BigInteger Class
>>> and C/C++ have libraries available such as
>>> MIRACL and GMP.
>> I thought you were talking of integrated support. Every language can
>> bind external libraries.

>

> Let's hope so. And a good idea is to not repeat the same
> mistakes that Python has made in the past: "Sure, you can
> write C extensions and bind them to Python. But if you're
> using Windows you have to use the same compiler used to
> create Python, which is obsolete and no longer available
> from Microsoft." That kind of integration I don't need.
>

Somehow it seems that your attitude is a bit critical on an a-priori
base. "I certainly didn't expect you to write code better than GMP" or
"Let's hope so" are not good bases for a talk on a technical board.
Please, concentrate on technical aspects and matters.

Integration is our first concern, and The Falcon Programming Language is
usually coming with binary compilations for a wide range of development
systems. Where prebuilt binaries are not available, we usually cooperate
with local distributions and system integrators. Currently we support
Mingw, MSVC6, 7, 8 and 9, Gcc 4.x, Sun C (for sparc and x86 platforms,
we're working on AMD) and XBase.

As for selective function support, you can call directly any external C
function via the dynlib interface, so you don't have to wait for any
particular binding (it's a slim and easy-to-use thing, not the terribly
massive python c-type). Native bindings are meant exactly for an higher
level of integration.

Bests,
GN.

Mensanator

unread,
Dec 27, 2008, 11:14:33 AM12/27/08
to
On Dec 26, 9:03 pm, Keith Thompson <ks...@mib.org> wrote:

> Mensanator <mensana...@aol.com> writes:
>
> [...]
>
> > Do you support unlimited precision math?
>
> > Nowadays, any language that doesn't is worthless,
> > i.e., of no value to me.
>
> You should understand that the terms "worthless" and "of no value to
> you" are not synonymous.  I accept at face value your statement that
> any language that doesn't support unlimited precision math is of no
> value *to you*.  

I thought it was quite clear from what I wrote that
it was strictly *my* opinion.

> Such language might be quite useful for others who
> don't happen to need that particular feature.

I did not say it couldn't be useful to others.

I thought the author would like to know that there
are some who won't even consider using a language
that can't be used to solve their problems.

It's not simply comparison, "I like C better because
it's faster" or "I prefer Python because it's easier
to program.". If I can't do my work, there's nothing
to compare.

The author is free to ignore such remarks if he feels
such issues are to small to be concerned about. That's
fine, I'll just use another language. I thought he was
soliciting opinions, so I gave him one.

Mensanator

unread,
Dec 27, 2008, 12:33:31 PM12/27/08
to
On Dec 27, 4:31 am, thomas.mer...@gmx.at wrote:
> On 27 Dez., 02:31, Mensanator <mensana...@aol.com> wrote:
>
>
>
>
>
> > On Dec 26, 2:29 pm, Giancarlo Niccolai <gc-remov...@removeme-
> > niccolai.cc> wrote:
> > > Mensanator ha scritto:
> > > > On Dec 26, 7:54 am, Giancarlo Niccolai <gc-remov...@removeme-
> > > > niccolai.cc> wrote:
> > > >> Mensanator ha scritto:
> > > >> Ehm... you know, there some language who doesn't (namely, C, C++, C#,
> > > >> Java, Lua etc. to name few).
>
> > > > Not quite true. Java has its BigInteger Class
> > > > and C/C++ have libraries available such as
> > > > MIRACL and GMP.
>
> > > I thought you were talking of integrated support. Every language can
> > > bind external libraries.
>
> > Keyword here is CAN.
>
> > When I asked the author of Seed7 this very question, he agrees
> > to bind GMP and then asks me what functions I need.
>
> BTW: Do you work on problems where you need support?

By "support" I mean I can't predict what math functions
I'll need, that depends on how the research goes. For
example, I eventually realized that a particular problem
I was having required the solution of a linear congruence.
So I did all kinds of research and learned how to do
the Extended Euclidean Algorithm. Only to find out the
Python GMP library had just such a function. In another
case, I found a use for the Legendre Symbol. So now, I
always review the list of GMP functions to see if there's
some function that previously caused my eyes to glaze over
that might now be appropriate to the problem at hand.
I would be very disappointed if I saw a useful function
that wasn't available.

> Now I have some time on my hands, so I could add features
> you need. If you want to solve problems with the help of
> Seed7 I would like to give you the support necessary.

Was I correct when I said you now use GMP but not all
it' functionality is available? (I haven't used the
latest versions.) Sorry if I was wrong, otherwise
that would be needed. I haven't used Seed7 since
that Ultimate Cycle program. I still do basic research
in Python and use C or Seed7 when I need brute force.

Most of my work doesn't reach that stage, but I've
got a project now that might benefit, so if I find
time I'll try downloading the latest version. Maybe
this time I'll get hooked as I don't see any end to
this project (although probably not solvable, it's
interesting to work on).

It's a hoot - factoring using the Collatz Conjecture!

>
> Greetings Thomas Mertes
>
> Seed7 Homepage:  http://seed7.sourceforge.net
> Seed7 - The extensible programming language: User defined statements
> and operators, abstract data types, templates without special
> syntax, OO with interfaces and multiple dispatch, statically typed,

> interpreted or compiled, portable, runs under linux/unix/windows.- Hide quoted text -
>
> - Show quoted text -

Mensanator

unread,
Dec 27, 2008, 1:26:33 PM12/27/08
to
On Dec 27, 10:08 am, Giancarlo Niccolai <gc-remov...@removeme-

niccolai.cc> wrote:
> Mensanator ha scritto:
>
>
>
>
>
> > On Dec 26, 2:29 pm, Giancarlo Niccolai <gc-remov...@removeme-
> > niccolai.cc> wrote:
> >> Mensanator ha scritto:
>
> >>> On Dec 26, 7:54 am, Giancarlo Niccolai <gc-remov...@removeme-
> >>> niccolai.cc> wrote:
> >>>> Mensanator ha scritto:
> >>>> Ehm... you know, there some language who doesn't (namely, C, C++, C#,
> >>>> Java, Lua etc. to name few).
> >>> Not quite true. Java has its BigInteger Class
> >>> and C/C++ have libraries available such as
> >>> MIRACL and GMP.
> >> I thought you were talking of integrated support. Every language can
> >> bind external libraries.
>
> > Let's hope so. And a good idea is to not repeat the same
> > mistakes that Python has made in the past: "Sure, you can
> > write C extensions and bind them to Python. But if you're
> > using Windows you have to use the same compiler used to
> > create Python, which is obsolete and no longer available
> > from Microsoft." That kind of integration I don't need.
>
> Somehow it seems that your attitude is a bit critical on an a-priori
> base.

Sorry, I apologize.

> "I certainly didn't expect you to write code better than GMP" or
> "Let's hope so" are not good bases for a talk on a technical board.
> Please, concentrate on technical aspects and matters.

Have you ever tried Microsoft's F#? That leaves a
REAL bad taste in your mouth with respect to language
developers.

>
> Integration is our first concern, and The Falcon Programming Language is
> usually coming with binary compilations for a wide range of development
> systems. Where prebuilt binaries are not available, we usually cooperate
> with local distributions and system integrators. Currently we support
> Mingw, MSVC6, 7, 8 and 9, Gcc 4.x, Sun C (for sparc and x86 platforms,
> we're working on AMD) and XBase.
>
> As for selective function support, you can call directly any external C
> function via the dynlib interface, so you don't have to wait for any
> particular binding (it's a slim and easy-to-use thing, not the terribly
> massive python c-type). Native bindings are meant exactly for an higher
> level of integration.

Good thing I brought it up, eh?

>
> Bests,
> GN.

Giancarlo Niccolai

unread,
Dec 27, 2008, 5:21:36 PM12/27/08
to
Mensanator ha scritto:
> On Dec 27, 10:08 am, Giancarlo Niccolai <gc-remov...@removeme-
> niccolai.cc> wrote:
>> Mensanator ha scritto:

>

> Have you ever tried Microsoft's F#? That leaves a
> REAL bad taste in your mouth with respect to language
> developers.

Even if I wanted to stay on the technical... I must admit that you have
a decisive point here :-)).

>
>> Integration is our first concern, and The Falcon Programming Language is
>> usually coming with binary compilations for a wide range of development
>> systems. Where prebuilt binaries are not available, we usually cooperate
>> with local distributions and system integrators. Currently we support
>> Mingw, MSVC6, 7, 8 and 9, Gcc 4.x, Sun C (for sparc and x86 platforms,
>> we're working on AMD) and XBase.
>>
>> As for selective function support, you can call directly any external C
>> function via the dynlib interface, so you don't have to wait for any
>> particular binding (it's a slim and easy-to-use thing, not the terribly
>> massive python c-type). Native bindings are meant exactly for an higher
>> level of integration.
>
> Good thing I brought it up, eh?

:-)

Yes. And since we're on that, let me state that if we didn't number our
language as 1.x, there are reasons for that. Of course, it's still an
early project and we're raising our user and developer base right now.
There are many things that are to be done, and we're fully willing to do
them, or we wouldn't have published our work as open source in the first
place.

A thing that must be clear is that we went open source because we
thought we had achieved some interesting results to be shared with
others, and that we wanted other's ideas to be merged in as well. The
language has changed, at times radically, many times thanks to the ideas
coming from the community, for how small it has been up to date. And
we're certainly not done; when we'll think we are, we'll mark 1.0 (our
timeframe is about one year for that).

So, if anyone wants to lend a hand or has an idea to experiment in a
forming/evolving language, please come around. We're searching for help
and we're open to interesting ideas.

Thanks
GN.

thomas...@gmx.at

unread,
Dec 28, 2008, 4:37:14 AM12/28/08
to

Every function can be made available. How functions can be added to
the 'hi' interpreter and the 'comp' compiler is described here:

http://seed7.sourceforge.net/manual/actions.htm

For reasons of portability and performance adding functions is not
completely trivial and may take a little time (see below).

> > Now I have some time on my hands, so I could add features
> > you need. If you want to solve problems with the help of
> > Seed7 I would like to give you the support necessary.
>
> Was I correct when I said you now use GMP but not all
> it' functionality is available? (I haven't used the
> latest versions.) Sorry if I was wrong, otherwise
> that would be needed.

The Seed7 implementation is designed to be portable. Therefore it
should have as few preconditions as possible. This is the reason why
Seed7 provides the bigInteger functionality with and without the
GMP (how to link to the GMP instead of the build in bigInteger
library big_rtl.c is described in the file seed7/src/read_me.txt).
To keep this philosophy it is necessary to add required GMP
functions to the built in bigInteger library as well.

> I haven't used Seed7 since that Ultimate Cycle program.

A short summary of the changes in the last 6 months:

- Support for 44 codepages, Base64, Quoted-printable, Uuencode, gzip
uncompression, HTTP protocol, HTML and CGI was added.
- Several new example programs such as lunar landing and cellular
automata were added.
- Strings with capacity are used for some string functions, which
improves performance.
- Various scanner functions were added or improved (scanner
functions allow to read symbols such as HTML or XML symbols from a
file or string).
- Support for MSVC cl and BDS bcc32 C compilers was added.
- A chapter about the Seed7 structured syntax definition was added
to the manual.
- Various FAQs and manual chapters were improved.
- The reading of directorys, with unicode file names under all
operating systems, was improved.
- The bas7.sd7 (basic interpreter) example program was improved
- And much more ...

Details can be found in the file seed7/doc/chlog.txt .

> I still do basic research
> in Python and use C or Seed7 when I need brute force.

I would be interested to know what you wish to be added to make
Seed7 usable for other cases as well.

> Most of my work doesn't reach that stage, but I've
> got a project now that might benefit, so if I find
> time I'll try downloading the latest version. Maybe
> this time I'll get hooked as I don't see any end to
> this project (although probably not solvable, it's
> interesting to work on).
>
> It's a hoot - factoring using the Collatz Conjecture!

Just tell me what is missing...

Gerry Quinn

unread,
Dec 28, 2008, 1:50:26 PM12/28/08
to
In article <af2d7faa-3ec9-4221-9679-
0bb286...@v39g2000pro.googlegroups.com>, mensa...@aol.com says...
> On Dec 26, 7:54?am, Giancarlo Niccolai <gc-remov...@removeme-
> niccolai.cc> wrote:

> > Ehm... you know, there some language who doesn't (namely, C, C++, C#,
> > Java, Lua etc. to name few).
>
> Not quite true. Java has its BigInteger Class
> and C/C++ have libraries available such as
> MIRACL and GMP. Even Python, which natively
> supports unlimited precision inteers has a wrapper
> for the GMP library that adds such things as
> unlimited precision rationals and floats, not to
> mention support for number theoretic functions
> such as GCD, LCM, MODULAR INVERSE, IS_PRIME,
> NEXT_PRIME, LEGENDRE_SYMBOL amongst others.

Well, maybe Falcon will have a library sometime when the developers get
around to it.

> Besides, this is the 21st century. There is
> simply no excuse for such omission in NEWLY
> created languages.

I disagree - not everybody cares enough about the feature that it would
have to be in every language IMO. (I'd have thought people cared enough
about strings, but C got away with putting even those in a library.)

> > and it's a quite urgent target, so I think we'll
> > support it soon. The idea is that of maintaining performance for those
> > application not willing to use unlimited precision math while adding
> > usability for those that needs it.
>
> Python with the GMP library is a very good example.
> High-level language support coupled with a compiled
> C library to do the heavy lifting. An excellent
> combination. Sure, a C program coupled with GMP
> would perform better - at the cost of losing the
> high-level of Python. 99.999% of my work is in
> Python and in only two cases did I work directly
> in C for performance reasons and regretted every
> minute of it.
>
> Oh, and even though Java is supposedly faster than
> Python, GMP outperforms Java's BigIntegers enough
> to more than make up for Python's byte code interpreter.

I think the word "supposedly" is somewhat redundant, even if in this
specific application Python was faster.

- Gerry Quinn

Gerry Quinn

unread,
Dec 28, 2008, 1:56:56 PM12/28/08
to
In article <2b9e503f-f849-490d-8d5b-bcc1086e4eb6
@s9g2000prm.googlegroups.com>, mensa...@aol.com says...

> I thought the author would like to know that there
> are some who won't even consider using a language
> that can't be used to solve their problems.
>
> It's not simply comparison, "I like C better because
> it's faster" or "I prefer Python because it's easier
> to program.". If I can't do my work, there's nothing
> to compare.

Similarly, an action game developer would not find Python usable because
it is so slow. If he were then to moan that there should be no
languages in the 21st century that cannot achieve C's level of hardware
efficiency, you would probably disagree...

- Gerry Quinn


Mensanator

unread,
Dec 28, 2008, 9:08:10 PM12/28/08
to
On Dec 28, 12:50 pm, Gerry Quinn <ger...@indigo.ie> wrote:
> In article <af2d7faa-3ec9-4221-9679-
> 0bb28643c...@v39g2000pro.googlegroups.com>, mensana...@aol.com says...

>
> > On Dec 26, 7:54?am, Giancarlo Niccolai <gc-remov...@removeme-
> > niccolai.cc> wrote:
> > > Ehm... you know, there some language who doesn't (namely, C, C++, C#,
> > > Java, Lua etc. to name few).
>
> > Not quite true. Java has its BigInteger Class
> > and C/C++ have libraries available such as
> > MIRACL and GMP. Even Python, which natively
> > supports unlimited precision inteers has a wrapper
> > for the GMP library that adds such things as
> > unlimited precision rationals and floats, not to
> > mention support for number theoretic functions
> > such as GCD, LCM, MODULAR INVERSE, IS_PRIME,
> > NEXT_PRIME, LEGENDRE_SYMBOL amongst others.
>
> Well, maybe Falcon will have a library sometime when the developers get
> around to it.
>
> > Besides, this is the 21st century. There is
> > simply no excuse for such omission in NEWLY
> > created languages.
>
> I disagree - not everybody cares enough about the feature that it would
> have to be in every language IMO.  (I'd have thought people cared enough
> about strings, but C got away with putting even those in a library.)

I got the impression that Falcon's target market wasn't
low level stuff like C but rather high-level languages.

And I don't have any problem with libraries - as long
as I don't have to be a professional software developer
to figure out how to use them.

Mensanator

unread,
Dec 28, 2008, 9:12:03 PM12/28/08
to
On Dec 28, 12:56 pm, Gerry Quinn <ger...@indigo.ie> wrote:
> In article <2b9e503f-f849-490d-8d5b-bcc1086e4eb6
> @s9g2000prm.googlegroups.com>, mensana...@aol.com says...

>
> > I thought the author would like to know that there
> > are some who won't even consider using a language
> > that can't be used to solve their problems.
>
> > It's not simply comparison, "I like C better because
> > it's faster" or "I prefer Python because it's easier
> > to program.". If I can't do my work, there's nothing
> > to compare.
>
> Similarly, an action game developer would not find Python usable because
> it is so slow.  If he were then to moan that there should be no
> languages in the 21st century that cannot achieve C's level of hardware
> efficiency, you would probably disagree...

I certainly didn't mean that C be thrown out. But it
appears that big number support is the standard being
set by recent languages and that anyone whose using
them will probably have no interest in giving them up.

>
> - Gerry Quinn

0 new messages