What is exactly Smalltalk language used for? [closed] - smalltalk

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
What is exactly Smalltalk used for? Creating websites? Trying to understand what can be built using this language.
Also,what are the tools that are used to code in Smalltalk? I google and see Pharo as one such tool.

What is exactly small talk used for ?
Everything.
Creating websites ?
Yes.
Trying to understand what can be built using this language.
Everything. Smalltalk is Turing-complete and "Tetris-complete". It can be used for anything and everything any other language can be used for.
Things that have been built in Smalltalk:
Operating Systems
VMs (including Smalltalk VMs)
Compilers (including Smalltalk compilers)
Smalltalk IDEs (in fact, Smalltalk invented the concept of the IDE)
GUI Frameworks
Desktop systems (in fact, Smalltalk invented the concept of the desktop with overlapping windows as we know it today)
Embedded Systems (for example, the famous Tektronix oscilloscopes)
Office suites
CPU layout tools
Websites
Webservices
Games
Virtual Worlds
Simulations
AI
…
Also,what are the tools that are used to code in small talk ?
Smalltalk Systems are typically all-encompassing systems that provide everything, from the VM, compiler, debugger, IDE, version control, GUI, widgets, frameworks, tools, and libraries in one. In other words, you don't use "tools" to code in Smalltalk, you use Smalltalk to code in Smalltalk.

Related

How to run Clipper Application [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I have a legacy code base written in CLIPPER. I don't have any idea of CLIPPER programming language.
How do I get started with it and deploy this application? Is it a scripting language OR some sort of OOPS language any study reference will be helpful
Thanks in Advance
Kaushik
Clipper is 16-bit compiler for character-based (not GUI) applications running on MS-DOS platform. There are, however, 3rd-party tools that will allow to produce 16-bit Windows GUI applications.
It's still owned by Computer Associates but all future development and support was delegated to GrafX long time ago.
The last released version was 5.3 but many developers stayed with 5.2e. The last update was around Y2K.
There are Harbour and xHarbour open source projects that developed their own compilers for this language (which in the beginning was similar to dBase III).
You can find information about the language and some 3-rd party libs in a Clipper section of this web-site.
Native Clipper compiles all its code into a single executable that runs on user desktops. Its data and index files are usually placed on a network share. Executable itself can also be placed on a share with user desktops having a short-cut to it.
Native Clipper applications (16-bit) will not run under 64-bit Windows. There are emulators (like DosBox) that allow to overcome such limitation.
Clipper related questions can be asked on comp.lang.clipper newsgroup.
If you have more questions add them as comments here.
Another good resource is Norton Guides for Windows, you can download it from a great site with lot of information about Clipper:
Download NGW from www.the-oasis.net.
I was unable to find the .NG files on that site, but you can see them online here if you want or try to found the files googling them.

Questions about GemStone/S [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 2 years ago.
Improve this question
I'm having a hard time understanding the big picture of GemStone for Smalltalk. I am aware of GLASS as an application server using Linux, Seaside and Apache. But I want to know if it is an usable environment for non-Seaside applications.
I'm also having trouble to finding some basic questions:
It is not clear to me if GLASS or GemStone/S is independent of the VM used. For example if I'm using a VM which supports black threads, does that mean that the GemStone/S will work transparently?
For what I've seen also it is not useful for 3D applications. For example, if my application developed in Pharo or VisualWorks uses OpenGL, may I consider GemStone/S for scaling up?
I've read that you may have objects in VisualWorks and objects in GemStone/S, but this confuses me a lot. How do I know if the object I've just created it is already persisted or in "client" side? In which case I need GemBuilder?
To get an understanding of the big picture of Gemstone/S, you can read Gemstone 101.
Many of your questions should be answered and some of them are also not applicable. For example, Gemstone/S is a complete Smalltalk implementation with its own VM. It also does not have a visual interface like Pharo, Squeak or Visualworks.
Suggestion: You need to split the question into several ones.
For example:
Is GLASS or GemStone/S independent of the VM used?
No, as far as I understand the question. GemStone needs its own VM. You cannot run GemStone on a VM of another Smalltalk.

history of programming in ... DOS times (not console) [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
first of all - thank you in advance for all answers.
Second - I'm not asking about writing console programs working on modern systems (like Ubuntu 11.10 or Windows 7) nor batch files.
Third - I'm not going to become DOS 6.22 nor Windows 3.1 programs developer. Maybe I will write small program only for educational purpose.
I am wondering how programmers works on early (I refer to 70's, 80's and begining of 90's) days of computer. On wikipedia there's many information about, let's caled it "ancient times", but there's not enough about "middle ages" (I'm referring to 70-90's) in programming definition. Although in DOS times programs higly depends on used machines (because they directly call hardware IRQ), I can't believe that there wasn't something like today Integrated Development Environment and that some of them were written in high level programming language. Is it possible that Prehistoric 2 has been written in Assembly? I don't think so, but I assume that early versions of BASIC can't receive such possibility.
Could you recommend any good article or source of information? I'm interested both MS (DOS, Windows 16-bit) and Unix platforms.
See also Borland Turbo C++ and Borland C++, commonly used in the early 90s.
If memory serves, Commander Keen was built using Borland tools. It's probable that other same-era Apogee/id games (like the original 2D Duke Nukem) were built under Borland as well.
Later on (early-to-mid 90s), id Software started using Watcom and the DOS/4GW DOS extender to build games like the original DOOM.
I was working in that period on Windows 16-bit and DOS (also DEC VAX and Alpha).
Mostly I used Turbo Pascal and Delphi 1 both of which provided IDE's. This was in the early 90's

Embedded device drivers development notes [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I want to develop some HAL (Hardware Abstraction Layers) to use in PIC32 and some ARM.
Basically I want to make some code that's usually available on a OS, like generic pin access, communication libraries, device I/O, etc.
Could you advise me with good books/websites?
I'll start with one that I've found a few weeks ago: http://www.kalinskyassociates.com/OnLineLearning.html
Thanks
Have you tried looking at some implementations?
eCos has a HAL, which has some documentation to go along with it.
eLua also has a HAL that has grown around it to support the platforms it runs on (ARM, AVR32, etc..), check the architecture information and the "Platform Interface" and "Generic Modules" menus. If you strip out the Lua, eLua is essentially a HAL.
There are likely other examples as well, but I'd recommend looking at living examples of cross-platform and non-cross-platform hardware APIs. Also, if/when you go and start putting together interfaces, make sure to examine individual platform peripheral implementations before nailing down the API. You will find that certain interaction models are commonly supported across many platforms, and others are very platform specific. If your API assumes functionality will always be available, it will be difficult to port to platforms that either have lacking or non-existent support for the functionality you want. Sometimes you may be able to work around this in software with simple solutions, other times you may find it is either impossible or horribly complicated to make behavior consistent across platforms.
You can try also looking at the OSEK interface documents. The standard does a good job of abstracting accesses to most commonly used peripherals. However, bear in mind that this is only a spec and you'd have to work out all implementation details.

Is there a program development environment similar to Visual studios? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
I'm getting really tired of working against click-once and I'm wondering if there's a better alternative. I'm looking for a programming environment that preferably does not depend on the .net framework. I'm not sure how much .net does for me exactly (though I have some idea) but I'd like to make my programs as independent of downloading a microsoft or other framework. I often think of professional programs like itunes, gimp or firefox that don't require someone to have a .net framwork. I'd also like to have these programs work on windows mac and linux. Any suggestions?
You might want to look at Qt and QtCreator. QtCreator supports integration with Visual Studio, so you can continue to use the environment you apparently already like, but still produce portable results.
C or C++.
If you're looking to make a program that is like gimp or Firefox, than you'll have no other good alternative. Java needs its virtual machine and web apps require an Internet connection. Though that's rarely a problem these days, it simply might not be applicable in your case. However, like the others have alluded, true platform-independence is tricky and that is certainly not less trivial in C or C++. That's pretty much why Java and .NET came to be in the first place.
You could always write your applications in Java, using the Eclipse or Netbeans IDE. Java is cross-platform so that takes care of Linux and Mac.
Alternatively, you could write your code in C or C++, and use a separate compiler for each platform. But that is more difficult because it will expose you to more (all?) of the differences in the three platforms.
What about a web app, should work on all devices. Otherwise you can use Java but then people need to have Java on their machine. Native code will be a pain in the neck sicne you then need to compile it for all different OS versions