473,326 Members | 2,813 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,326 software developers and data experts.

help! [please]

Where can i find a free web- based VC++ course? (also i've to dowanload it)

I'm interested also in VB and C++

thanks, Robert
Jul 23 '05 #1
10 2029
Robert wrote:
Where can i find a free web- based VC++ course? (also i've to dowanload it)

www.google.com ?
www.microsoft.com ?

There are other sites (such as www.codeproject.com ), but most are infested
with popup ads and crap to exploit newbs.
I'm interested also in VB and C++


Don't use VB. Try Ruby - it's free, has copious online tutorials with no
popup ads, and it can do in 1,000 lines what VB requires 20,000 for.

--
Phlip
http://industrialxp.org/community/bi...UserInterfaces
Jul 23 '05 #2
thanks Philip.
Do you think that Ruby will have the success of VB?
Robert

Phlip wrote:
Robert wrote:

Where can i find a free web- based VC++ course? (also i've to dowanload


it)

www.google.com ?
www.microsoft.com ?

There are other sites (such as www.codeproject.com ), but most are infested
with popup ads and crap to exploit newbs.

I'm interested also in VB and C++

Don't use VB. Try Ruby - it's free, has copious online tutorials with no
popup ads, and it can do in 1,000 lines what VB requires 20,000 for.

Jul 23 '05 #3
Robert wrote:
Do you think that Ruby will have the success of VB?


Define "success".

Ruby has a huge, rabid community of users, pushing technology like Gem,
Rails, and YAML that VB users can only dream of, despite VB's corporate
backing.

However, Ruby will never be marketed as relentlessly and nauseatingly as a
Disney teen starlet...

--
Phlip
http://industrialxp.org/community/bi...UserInterfaces

Jul 23 '05 #4
Phlip wrote:
Define "success".

Ruby has a huge, rabid community of users, pushing technology like Gem,
Rails, and YAML that VB users can only dream of, despite VB's corporate
backing.

However, Ruby will never be marketed as relentlessly and nauseatingly as a
Disney teen starlet...

What is the benefit for Ruby being interpreted? Also does "scripting" imply that it is for
special purposes?


--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 23 '05 #5
Ioannis Vranos wrote:
What is the benefit for Ruby being interpreted? Also does "scripting"
imply that it is for special purposes?

Also what exactly is dynamic typing? Something like

int i= 1;

string s= i.ToString();
--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 23 '05 #6
Ioannis Vranos wrote:
Ioannis Vranos wrote:
What is the benefit for Ruby being interpreted? Also does "scripting"
imply that it is for special purposes?

Also what exactly is dynamic typing? Something like

int i= 1;

string s= i.ToString();


Could we please discuss <someotherlanguage> elsewhere? Please?
Jul 23 '05 #7
Ioannis Vranos wrote:
However, Ruby will never be marketed as relentlessly and nauseatingly as a Disney teen starlet...
What is the benefit for Ruby being interpreted?


That allows Matz to add features to Ruby without slowing down to figure out
how to compile them to machine opcodes.
Also does "scripting" imply that it is for
special purposes?
That means it has a few tweaks (such as no main()), that make writing little
tiny extremely useful programs very easy.

Put another way, any special purpose you can think of...
Also what exactly is dynamic typing? Something like

int i= 1;

string s= i.ToString();


That is "weak typing". Perl does that. Don't get me started.

C++ is weakly, statically typed. (The weakness comes from issues like void*
or bool, not from automagic string conversion.)

Ruby, like Smalltalk, Pascal, or Python, is strongly typed. Unlike Pascal,
and like the others, it is dynamically typed.

In C++, static typing means this:

void Foo(Bar &);

That function Foo() will only accept objects whose type is known at compile
time to inherit from Bar. Foo() can only call methods known to exist in Bar
or higher, but not lower. Methods bind at runtime, but types bind at compile
time.

In a dynamic typing system, all objects inherit from a magic thing called
Object. So, in Ruby...

def Foo(aBar)
aBar.baz()
end

At compile time, all the compiler did was hash 'baz'. At runtime, aBar.baz()
uses Object's magic methods to fetch the target method, by hash. This magic
trades just a little execution overhead for a lot of cognitive freedom. We
can control exactly how typed Foo() is. We can assert that it only take Bar
objects, or we can leave it free to take anything that has a baz().

Further, in Ruby everything is an object, including classes. So you can pass
a class, by name, into a method. This is what C++ tries to give us with
templates. But C++ refuses to change C's type system beyond our simple
vtable, so C++ cannot truly treat classes as objects, and each instance of a
template is a different entity.

--
Phlip
http://industrialxp.org/community/bi...UserInterfaces
Jul 23 '05 #8
Phlip wrote:
That is "weak typing". Perl does that. Don't get me started.

C++ is weakly, statically typed. (The weakness comes from issues like void*
or bool, not from automagic string conversion.)

Ruby, like Smalltalk, Pascal, or Python, is strongly typed. Unlike Pascal,
and like the others, it is dynamically typed.

In C++, static typing means this:

void Foo(Bar &);

That function Foo() will only accept objects whose type is known at compile
time to inherit from Bar. Foo() can only call methods known to exist in Bar
or higher, but not lower. Methods bind at runtime, but types bind at compile
time.

ISO C++ has run-time type identification and it provides virtual methods, but the latest
is not for built-in types. But it provides templates for generic programming. I am not
comparing languages, since such a comparison would be unfair for Ruby in terms for
paradigm support and run-time/space efficiency, but Ruby is OK for non-demanding
applications I suppose.

In a dynamic typing system, all objects inherit from a magic thing called
Object. So, in Ruby...

def Foo(aBar)
aBar.baz()
end

OK, however this method for generic programming is a bit outdated. This is what .NET does
so far. Upcoming .NET 2 maintains this, however it introduces *run-time* generics for
generic programming (which are very limited BTW in comparison to compile-time templates,
but are still better than inheriting all objects from Object - .NET inherits everything
from Object too).

http://msdn.microsoft.com/library/de...classtopic.asp
I think a good suggestion to Matz would be to proceed in this way too. It is cleaner.
At compile time, all the compiler did was hash 'baz'. At runtime, aBar.baz()
uses Object's magic methods to fetch the target method, by hash.

OK, .NET doesn't use hashing for this as far as I know, but virtual methods.
This magic
trades just a little execution overhead for a lot of cognitive freedom. We
can control exactly how typed Foo() is. We can assert that it only take Bar
objects, or we can leave it free to take anything that has a baz().

Further, in Ruby everything is an object, including classes. So you can pass
a class, by name, into a method. This is what C++ tries to give us with
templates. But C++ refuses to change C's type system beyond our simple
vtable, so C++ cannot truly treat classes as objects, and each instance of a
template is a different entity.

I am not sure treating classes as objects having any real benefits. Yes in C++ one can use
templates to pass various types (actually to create function instances for the type),
which I think is sufficient (and vtables are not used in this template approach).
I suppose that Ruby provides types as objects and stuff, because it has not the
run-time/space efficiency concerns that C++ has. Which is not bad for application
programming in nowadays PCs, they just have different design ideals, and thus it is not
fair to compare them on such things, but we can compare them on terms of paradigm coverage
(in OO for example whether everything provided in UML can be modelled in each language).
Under this view, in OO paradigm Ruby looks like not supporting many things, complete
multiple inheritance, comes to mind first.

Also from generic programming it supports the Object base approach and I suppose it uses
some type of reflection as .NET 1.x does, to determine which exact type an object belongs
to. This is a somewhat improved approach to the void * generic programming that C uses.

(in C if you want to write a generic function you write one that accepts a void * and an
additional parameter that helps you determine the exact type).
I am not trying to enforce C++ for everything, however I am demanding and pass any
language under scrutiny (for my chosen language ideals of course). :-) So far two other
languages have gained my interest.

Objective-C and Ada. However both of them do not support my platform so far (Ada has a
..NET implementation, however no one could tell me how to set it up and run). So my
considerations are primarily my platform and second provide the ability for compilation.
An interesting message about another language that I sent in another thread.
[The name of the creator of Python was corrected to Guido van Rossum in a subsequent
mailing of the newsletter]
From WinInfo Daily Update:
Python Expands To IronPython

You might have heard of Python, a popular and powerful cross-
platform open-source programming language. Python, which is the
creation of Jim Hugunin, is described as "an interpreted, interactive,
object-oriented programming language ... often compared to Java, Perl,
Scheme, or Tcl." The basic description says a lot (for more information
about Python, see the URL below). Even behemoths such as Google rely
heavily on Python to develop their solutions. Microsoft has also
recently gotten into the act.
http://list.windowsitpro.com/t?ctl=6431:275FF
Last year, Hugunin decide to expand on Python by creating IronPython
(see the first URL below), a new implementation that works within the
Microsoft .NET Framework and the cross-platform Mono environment, which
Novell sponsors (see the second URL below). Version 0.6 was released to
the public in July, when Hugunin also announced that he was joining
Microsoft to continue working on IronPython's evolution. Last week
(some 8 months after Hugunin joined the company), Microsoft released
IronPython pre-alpha version 0.7 to the public. Incidentally, Microsoft
stresses on its download page that IronPython is a codename, so
undoubtedly the company plans to come up with another name for the
final release.
http://list.windowsitpro.com/t?ctl=6430:275FF
http://list.windowsitpro.com/t?ctl=642F:275FF
IronPython is faster than the original Python and lets programmers
handle diverse sets of styles, interfaces, and subsystems. You can also
use the language to communicate with hardware and to develop the same
functionality as programs written in other languages--but with far
fewer lines of code. With IronPython, you can also produce static
runtime executables (.exe files) and DLLs.
The main thrust of IronPython seems to be that it supports
Microsoft's Common Language Runtime (CLR) environment (see the first
URL below), which allows seamless integration of code written in
numerous languages, such as C++, C#, Java, and Visual Basic (VB). If
you want a flexible cross-platform language, be sure to check out
Python, and if you're developing for .NET Framework, you should
certainly check out IronPython 0.7 (see the second URL below).
IronPython also has a message board, documentation, and a bug-tracking
facility (see the third URL below) and a mailing list you can join (see
the fourth URL below), although Hugunin implied in a message to the
list that it might eventually be closed in favor of the message board.
http://list.windowsitpro.com/t?ctl=642A:275FF
http://list.windowsitpro.com/t?ctl=6423:275FF
http://list.windowsitpro.com/t?ctl=6426:275FF
http://list.windowsitpro.com/t?ctl=6427:275FF

--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 23 '05 #9
Ioannis Vranos wrote:
I am not sure treating classes as objects having any real benefits.
The Prototype Pattern is built into each class, for free.
Yes in C++ one can use
templates to pass various types (actually to create function instances for the type), which I think is sufficient (and vtables are not used in this template approach).

You are looking too narrowly at each detail of my post. The big picture:
Dynamic typing is orthogonal to execution efficiency, and it provides better
cognitive efficiency. So do block closures, continuations, reflection, and
interpreted evaluation.

The last one means the function eval() can run a string of Ruby, and that
string can see local and global variables, and can change an part of their
context. You can eval() a string that changes or adds a method to Object,
for example.
...when Hugunin also announced that he was joining
Microsoft to continue working on IronPython's evolution.


I thought Microsoft forbade open source projects. (Except like WTL...)

--
Phlip
http://industrialxp.org/community/bi...UserInterfaces
Jul 23 '05 #10
Phlip wrote:
the type),
which I think is sufficient (and vtables are not used in this template


approach).

You are looking too narrowly at each detail of my post. The big picture:
Dynamic typing is orthogonal to execution efficiency, and it provides better
cognitive efficiency. So do block closures, continuations, reflection, and
interpreted evaluation.

The last one means the function eval() can run a string of Ruby, and that
string can see local and global variables, and can change an part of their
context. You can eval() a string that changes or adds a method to Object,
for example.

...when Hugunin also announced that he was joining
Microsoft to continue working on IronPython's evolution.

I thought Microsoft forbade open source projects. (Except like WTL...)

Actually I have read that they are thinking of opening the source of .NET 2, however they
have not reached a decision, since they provide the Rotor source (Rotor is an experimental
Microsoft CLI VM for Windows XP, FreeBSD, and Mac OS X 10.2.

http://www.microsoft.com/downloads/d...displaylang=en

http://www.ondotnet.com/pub/a/dotnet.../archtour.html
I think they have started to appreciate source code availability, under "shared source".

--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 23 '05 #11

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: Tom | last post by:
A question for gui application programmers. . . I 've got some GUI programs, written in Python/wxPython, and I've got a help button and a help menu item. Also, I've got a compiled file made with...
4
by: Sarir Khamsi | last post by:
Is there a way to get help the way you get it from the Python interpreter (eg, 'help(dir)' gives help on the 'dir' command) in the module cmd.Cmd? I know how to add commands and help text to...
6
by: wukexin | last post by:
Help me, good men. I find mang books that introduce bit "mang header files",they talk too bit,in fact it is my too fool, I don't learn it, I have do a test program, but I have no correct doing...
0
by: tbatwork828 | last post by:
If you were like me trying to figure out how to launch context sensitive help topic by the context id, here is the link: http://weblogs.asp.net/kencox/archive/2004/09/12/228349.aspx and if...
3
by: Colin J. Williams | last post by:
Python advertises some basic service: C:\Python24>python Python 2.4.1 (#65, Mar 30 2005, 09:13:57) on win32 Type "help", "copyright", "credits" or "license" for more information. >>> With...
5
by: Steve | last post by:
I have written a help file (chm) for a DLL and referenced it using Help.ShowHelp My expectation is that a developer using my DLL would be able to access this help file during his development time...
8
by: Mark | last post by:
I have loaded Visual Studio .net on my home computer and my laptop, but my home computer has an abbreviated help screen not 2% of the help on my laptop. All the settings look the same on both...
10
by: JonathanOrlev | last post by:
Hello everybody, I wrote this comment in another message of mine, but decided to post it again as a standalone message. I think that Microsoft's Office 2003 help system is horrible, probably...
1
by: trunxnirvana007 | last post by:
'UPGRADE_WARNING: Array has a new behavior. Click for more: 'ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?keyword="9B7D5ADD-D8FE-4819-A36C-6DEDAF088CC7"' 'UPGRADE_WARNING: Couldn't resolve...
0
by: hitencontractor | last post by:
I am working on .NET Version 2003 making an SDI application that calls MS Excel 2003. I added a menu item called "MyApp Help" in the end of the menu bar to show Help-> About. The application...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.