Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
VisualWorks
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Benefits and drawbacks == VisualWorks allows for very fast application development, as individual methods can be compiled even while the program to be developed is running. Compiling a Smalltalk method typically takes significantly less than a second, while doing the same for a [[C++]] project often takes a minute or more, and cannot be done easily without restarting the process. The various code browsers of VisualWorks help the developer to quickly locate a class or method of interest. The performance and throughput of Smalltalk programs can approach the performance of static languages such as [[C++]], [[Fortran]], [[Pascal (programming language)|Pascal]], or [[Ada (programming language)|Ada]] using a [[Just-in-time compilation|just-in-time compiler]] by generating machine code that is specialised for frequently used types, but numeric processing and programs that benefit from precise memory layout may still run slower. The generational [[Garbage collection (computer science)|garbage collector]] minimises most collection pauses, but may not be suitable for hard real-time and determinism requirements, as long full collections may occur, which may stop the world for tens to hundreds of milliseconds, proportional to heap size. However, garbage collection is preferable over manual memory management in an object-oriented language, and the programmer can take various actions to control when and for how long garbage collection occurs; so under most circumstances, garbage collection is not a concern.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)