Showing posts with label programming languages. Show all posts
Showing posts with label programming languages. Show all posts

Mastering Mathematica, Second Edition: Programming Methods and Applications Review

Mastering Mathematica, Second Edition: Programming Methods and Applications
Average Reviews:

(More customer reviews)
Are you looking to buy Mastering Mathematica, Second Edition: Programming Methods and Applications? Here is the right place to find the great deals. we can offer discounts of up to 90% on Mastering Mathematica, Second Edition: Programming Methods and Applications. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Mastering Mathematica, Second Edition: Programming Methods and Applications Review7.24.99 SJW*****
This is something of a book review, but also a commentary on the Mathematica package. My background is a recent MS in Computer Science. My interest in Mathematica is as a thinking tool for Programmer/Analysts or R&D Prototypers.
John Gray's book comes with a CD-ROM including the entire text of the book (the book was produced using Mathematica) as well as help files which can easily be integrated into the resources of the Mathematica Help Browser.
The book is well laid out (see the Table of Contents at amazon.com) topically, starting with very basic usage of the math abilities, and the user interface, then moving on to programming styles using Mathematica and methods of representing information in Mathematica. (All major commands in the Mathematica package are searchable, topical resources are available via documentation chapters on that topic, and explanatory text is hyperlinked in html format.)
The book's style is absolutely functional, and is targeted at users who have at least a threshhold knowledge of modern programming. Much of the material somewhat assumes that the reader has read enough using the Help Browswer with its on-line manual to be able to operate the notebook interface. Examples are given for almost every topic (the examples are executable in Mathematica, as the text of the book is in the form of a Mathematica notebook), although the specifics of each example are not necessarily explained.
As a programmer, the most amazing revelation of Gray's book is the degree to which the Mathematica package is programmable. Of course, procedural commands are built in to allow the coding of procedural algorithms (these commands have the form of generic pseudocode commands, or "near-C"). But Gray gives examples of programming using functions (recursion is allowed), as well as instructions re o-o and constraint (rule-based) styles of programming. (Note that Mathematica has built in pattern matching notations--especially useful for rule-based programming.)
In short, not only is Mathematica a completely integrated symbolic/numeric advanced math utility with integrated graphics and statistical packages, but it also has its own virtual operating system (full file i/o controls), and it allows the user to write rule-based programs (such as LISP or Prolog interpreters) which have full access to all of the built in Mathematica abilities, and to custom compiled components which the user has written.
Because all Mathematica's abilities are integrated, data can easily be displayed graphically, allowing visual debugging of difficult algorithms, or analysis (or reports). Gray provides a few examples of the visual display of algorithms.
The bottom line is that Mathematica is an astounding prototyping tool, as well as being the best graduate CS math utility I have used. And John Gray's book opens up these possibilities to the reader. Savor the possibilities!Mastering Mathematica, Second Edition: Programming Methods and Applications OverviewThis new edition of Mastering Mathematica focuses on using Mathematica as a programming language, because programming in Mathematica is the best way to use the software to its fullest capacity. The book covers functional programming, imperative programming, rewrite programming, and object-oriented programming. It also addresses the use of Mathematica as a symbolic manipulator and a general tool for knowledge representation.* Focus on four different types of programmingstyles with Mathematica: functional programming, rewrite (or rule-based) programmng, imperative (or procedural) programming, and object-orientedprogramming, with many examples of each style* Compatible with Mathematica 3.0 and its programming language* Chapters on graphics programming show how to make the most of the considerable graphics capabilities of Mathematica* Includes coverage of programming needed for creation of Mathematica packages that allow a user to extend the language as needed for particular uses* Applications include:* Polya pattern analysis*Critical points of functions*Object-oriented graph theory*Minimal surfaces* Mathematica-Enhanced CD-ROM Enclosed* Complete text in active Mathematica Notebook files, enhanced for v3.0; Allows you to evaluatecomplex examples without retyping; Extensiveuse of the v3.0 math typesetting system* Hyperlink index and table of contents * Instant access to any chapter or topic* Index is automatically merged with the main Mathematica help system forming a master index of all the user's Mathematica related information; Quickly see listings on a given topic from The Mathematica Book, Mastering Mathematica, the Guide to Standard Packages, or any other Help Browswer aware books you have installed

Want to learn more information about Mastering Mathematica, Second Edition: Programming Methods and Applications?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Engineering a Compiler, Second Edition Review

Engineering a Compiler, Second Edition
Average Reviews:

(More customer reviews)
Are you looking to buy Engineering a Compiler, Second Edition? Here is the right place to find the great deals. we can offer discounts of up to 90% on Engineering a Compiler, Second Edition. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Engineering a Compiler, Second Edition ReviewThis is really a super compiler text. It is also one of the most recent compiler books you can buy.
First of all this is a theoretical book. If you read the title 'Engineering a compiler' as 'Coding/Building a compiler' you would be disappointed! So, if you're looking for a learing-by-coding book, this is not for you (but I have some recommendations at the end of this review in the latest paragraph). The difference with most of the other theoretical books is that this book is not a dry text. It has also a nice layout. It gives plenty of examples, and all topics are well connected to each other. It's a pleasure to read for not native English people, so native English people can read it pretty fast.
This book read like a novel.. It does contain enough diagrams, tables, etc. but not too much (crowded), and everything is well explained.
You can read this book as a compiler introduction book. But I can only recommend this to B.Sc/M.Sc Computer Science students (like me). You don't need to have a M.Sc in Mathematics to understand this text, (all the math, eg. liveness graphs are well explained), but you will understand everything better if you have some background in algorithms (design), pseudocode, etc. like you gained during your B.Sc program. People without formal computer science education I would recommend to read a practical book first (see at the end of this review), because you may find else this text too theoretical.
This book focus on code optimizations. According to the authors (and me) compiler front ends (scanning/parsing/etc) are commodities today, and the backend (codegeneration) is where the difference is made nowadays. So if you're looking for a introduction text into compiler optimization this book is for you!
If you're looking for a more practical book I advice you to read 'Programming Language Processors in Java' from Watt & Brown. In that book you learn to build a nice stack virtual machine in Java with 'advanced features' like records (structs), procedures/functions, arrays and so on. That book is a good companion for 'Engineering a Compiler' to give you some practical insight. If you're looking for a Language Design book I advice you to look at 'Programming Language Pragmatics'. Both books are worth the money...Engineering a Compiler, Second Edition Overview

Want to learn more information about Engineering a Compiler, Second Edition?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Concepts, Techniques, and Models of Computer Programming Review

Concepts, Techniques, and Models of Computer Programming
Average Reviews:

(More customer reviews)
Are you looking to buy Concepts, Techniques, and Models of Computer Programming? Here is the right place to find the great deals. we can offer discounts of up to 90% on Concepts, Techniques, and Models of Computer Programming. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Concepts, Techniques, and Models of Computer Programming ReviewThis book is a real mind-bender that illuminates paths for computer design at both the conceptual and practical levels I'd never travelled down before.
The notion that one language can be so flexible as to accomodate both the syntax and semantics of so many different computational models, or paradigms, took some unlearning of bad programming practice before its power, elegance and potential began to sink in.
It also explodes the myth that "pure" languages -- i.e., pure OO, or pure functional, etc., languages--have some kind of innate advantage over so-called "hybrid" languages. In fact, "hybrid" (or as the authors would prefer to call them, "multi-paradigm") languages come out of this book looking even more powerful than the "pure" ones, insofar as they allow the programmer to use the right model for each task, instead of trying to make OO fit, for instance, in places where it doesn't fit so well.
The idea here is that each computational model represents a completely different way of approaching a domain problem. Used by themselves, each has its niche. For instance, everybody knows OO is good for domain modelling and busines objects. Prolog-type languages are good for applications that need to apply rules over a set of data. Functional languages are great in mathematical applications. And so on. What is new here is that one can program in an environment in which all of these tools are available in a single core semantics that seamlessly weaves these computational models into a complementary whole. Used together judiciously, with an eye toward program correctness, they make things possible that have long been considered very hard -- for instance, constraint programming.
Mozart-Oz, the underlying technology, is a strange language when you first look at it. It's hard at first to get used to concepts like "higher-order programming" or "by need execution" or "lazy execution" if you are the programming grunt in the field of most modern IT shops, forced by bosses to code in your standard fare -- Java, C#, VB, etc. If OO in Java is like the hammer that makes everything look like a nail, in Mozart-Oz you have a language that is like walking into Ace hardware store, a swiss army knife of a language (conceptually speaking) that challenges you to become a highly skill code craftsman, not just a programmer.
But, if only for the personal growth you will experience grappling with the concepts in this book, I recommend it very highly even to "non academic" programmers (like myself) as well as to any advanced student of computer science. It may be painful, you may scratch your head in places where the concepts just seemed to leap over your cranium, but if you are patient, do the exercises (and at least think about what it would take to tackle some of the research projects), you will grow.
Unfortunately, you may find the languages you work on to be rather confining, and maybe even boring, after you get a whiff of what multi-paradigm programming can do. More likely, however, is that you will grasp very clearly how the language you code in today works, and that can only make you a better software engineer. So do it-buy this book!Concepts, Techniques, and Models of Computer Programming OverviewThis innovative text presents computer programming as a unifieddiscipline in a way that is both practical and scientifically sound. The bookfocuses on techniques of lasting value and explains them precisely in terms of asimple abstract machine. The book presents all major programming paradigms in auniform framework that shows their deep relationships and how and where to use themtogether.After an introduction to programming concepts, the book presents bothwell-known and lesser-known computation models ("programming paradigms"). Each modelhas its own set of techniques and each is included on the basis of its usefulness inpractice. The general models include declarative programming, declarativeconcurrency, message-passing concurrency, explicit state, object-orientedprogramming, shared-state concurrency, and relational programming. Specializedmodels include graphical user interface programming, distributed programming, andconstraint programming. Each model is based on its kernel language -- a simple corelanguage that consists of a small number of programmer- significant elements. Thekernel languages are introduced progressively, adding concepts one by one, thusshowing the deep relationships between different models. The kernel languages aredefined precisely in terms of a simple abstract machine. Because a wide variety oflanguages and programming paradigms can be modeled by a small set of closely relatedkernel languages, this approach allows programmer and student to grasp theunderlying unity of programming. The book has many program fragments and exercises,all of which can be run on the Mozart Programming System, an Open Source softwarepackage that features an interactive incremental development environment.

Want to learn more information about Concepts, Techniques, and Models of Computer Programming?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Decompiling Java Review

Decompiling Java
Average Reviews:

(More customer reviews)
Are you looking to buy Decompiling Java? Here is the right place to find the great deals. we can offer discounts of up to 90% on Decompiling Java. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Decompiling Java ReviewWhat I hoped to learn from the book was an understanding of modern Java decompilation techniques. With respect to this expectation, Nolan's book is a disappointment.
His implementation, though simple, will decompile only the most simple of byte code. Nolan points out that it is difficult to recover all legal control structures offered by Java, but is not so clear about the fact that this will never be possible with his approach (i.e. using syntactical analysis).
A stable decompiler which is able to produce clean code must do some control flow and structural analysis. The book gives no account here.
Regarding the other topics of the book such as obfuscation, legal issues, tool selection and case studies, there are more concise and cheaper books. Simply refer to Amazon's "Customers who bought this book also bought ...".Decompiling Java OverviewBoth Java and .NET use the idea of a "virtual machine" (VM) rather than a true executable. While very useful for some purposes, VMs make your source code and hence your intellectual property (IP) inherently less secure because the process can be reversed or "decompiled". This book is useful because you must understand how decompilation works in order to properly protect your IP. Anyone interested in protecting Java code from prying eyes will want to buy this one of a kind book as it separates fact from fiction about just how ineffective obfuscators are at protecting your corporate secrets.While it is very easy for anyone to decompile Java code and almost as easy to run it through an obfuscation protection tool, there is very little information on just what happens when you do this. How secure is your code after you run an obfuscator, for example? To answer these questions requires a greater understanding of the Java bytecodes and the Java Virtual Machine (JVM) than in any book yet published. This book redresses the imbalance by providing insights into the features and limitations of today's decompilers and obfuscators, as well as offering a detailed look at what JVM's actually do.Virtual machine is the computer science term used when (most often in an attempt to gain greater portability) you create an abstract "virtual processor" and write code for it instead of having your compiler generate actual machine language for a chip like the Pentium 4. You then write a relatively small piece of code for each real processor you want the code to run. This translates the virtual machine language to the real machine language of your processor. The intermediary code for the virtual machine is what can more easily be decompiled, although with a loss of security, since in order for the code to be converted to real machine language it must be relatively transparent and not just a sequence of 0's and 1's!

Want to learn more information about Decompiling Java?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Practical Common Lisp Review

Practical Common Lisp
Average Reviews:

(More customer reviews)
Are you looking to buy Practical Common Lisp? Here is the right place to find the great deals. we can offer discounts of up to 90% on Practical Common Lisp. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Practical Common Lisp ReviewI've been recommending this text to people who want to start learning Common Lisp since it was first available in draft form on the author's web site. Now that it's out in print I can enthusiastically recommend that anybody who is interested in learning Common Lisp - or even curious about how the language can improve your productivity - purchase it.
Peter has a very enjoyable and easy-to-understand writing style, and he starts early with practical examples that show how Common Lisp can be used to solved problems. Chapter 3, "A Simple Database", is a great explanation of how programs are grown from pieces in Common Lisp to solve large problems. It's presented early and draws people in to the problem solving techniques used when programming in Lisp.
Peter doesn't skimp on details, though: detailed chapters on FORMAT (for formatted output), LOOP (for general iteration / value collection), and CLOS (the Common Lisp Object System) provide a wonderful tutorial to these powerful but complex features.
The book ends with a long string of practical examples that synthesize multiple concepts into programs that are useful and show exactly why programming in Lisp is so cool. The last practical example, which builds a HTML generation library in Lisp, gives the reader a taste of why writing a Domain-Specific Language is so easy in Lisp and why it can integrate so well with the rest of the language.
Peter is very enthusiastic about Common Lisp and it shows in his writing. Unlike other authors (Paul Graham comes to mind) he gives every major feature of the language its due and shows how and where it should be used.
Practical Common Lisp may be one of the most fun books on programming you'll read all year. Even if you're just curious, check it out. It may change the way you program.Practical Common Lisp Overview...it has a fresh view on the language and the examples in the later chapters are usable in your day-to-day work as a programmer. — Frank Buss, Lisp Programmer and Slashdot ContributorIf you're interested in Lisp as it relates to Python or Perl, and want to learn through doing rather than watching, Practical Common Lisp is an excellent entry point. — Chris McAvoy, Chicago Python Users Group Lisp is often thought of as an academic language, but it need not be. This is the first book that introduces Lisp as a language for the real world.
Practical Common Lisp presents a thorough introduction to Common Lisp, providing you with an overall understanding of the language features and how they work. Over a third of the book is devoted to practical examples such as the core of a spam filter and a web application for browsing MP3s and streaming them via the Shoutcast protocol to any standard MP3 client software (e.g., iTunes, XMMS, or WinAmp). In other "practical" chapters, author Peter Seibel demonstrates how to build a simple but flexible in-memory database, how to parse binary files, and how to build a unit test framework in 26 lines of code.


Want to learn more information about Practical Common Lisp?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Design Concepts in Programming Languages Review

Design Concepts in Programming Languages
Average Reviews:

(More customer reviews)
Are you looking to buy Design Concepts in Programming Languages? Here is the right place to find the great deals. we can offer discounts of up to 90% on Design Concepts in Programming Languages. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Design Concepts in Programming Languages ReviewThe book is about various concepts encountered in various kinds of programming languages: denotational and operational (BOS/SOS) semantics, issues of state and control, type systems, modules, modeling effects and compilation.
Every concept is introduced by defining the semantics of a language that has this concept and exploring the design dimensions and issues of this concept and language.
Concepts are gradually accumulated, and by the time you reach the chapter on modules you've got a CBV language with records, mutable state, polymorphic algebraic data types, a System F type system with type inference and a hint of dependent types, abstract data types and first-class dynamically loadable modules.
The tools used for description are of course the good old denotational and operational semantics and typing judgements and derivation trees; but each element of those is clearly and succintly described in text; it happens to me all the time that I am reading a type reconstruction algorithm and wondering, "why does this rule have that restriction?" and it immediately turns out that in the next paragraph, the authors focus attention on why this rule has that restriction; just like if they were reading my thoughts.
That's why this book feels very comfortable to me: I am absolutely sure that I won't encounter a point where I am lost and buried under the notation; but there is also not a single boring moment.
I've been interested in functional programming and PL theory for 2-3 years already, and here's a brief list of the *new* things that I have learned, at least:
- What do SOS and BOS mean, and why one should care, and what properties a SOS might posess (confluence and normalization, for instance)
- How many features of languages can be defined in terms of simply desugaring, and how in some cases they can't
- How one might use monadic style in the semantics metalanguage to greatly simplify the semantic rules for monadic concepts like state, control and error handling (the authors mention the word "monad" only once, but they use return- and bind-like operators in their semantics)
- How powerful records are, and of what use are operators like "conceal"
- What use is subtyping outside of OOP
- How does one define CPS-style semantics and how such a style allows to add state, control and errors with minimal changes
- How small yet powerful an OOP language core can be
- How algebraic datatypes can be very useful even in a language without static typing
- How pattern matching can be desugared into CPS-style deconstructors
- How many caveats are there in defining typing rules, and how a small change in them can lead to very big changes in language expressiveness
- How HM type inference actually works
- Why purity is important for certain polymorphism issues
- What let-polymorphism means
- What effect systems are
- How effect reconstruction works and how it is different from type reconstruction in nature
- How effect inference can prove the external purity of certain internally impure programs
That's where I finished my reading for now. The remaining looks even more intriguing; for example, I don't (yet) know how functional languages are compiled and how register allocation is done.
I'm afraid to sound like a salesman, but this is absolutely the best-written technical book I have ever seen in my life, and probably the most influential one for me, excluding maybe SICP.Design Concepts in Programming Languages OverviewKey ideas in programming language design and implementation explainedusing a simple and concise framework; a comprehensive introduction suitable for useas a textbook or a reference for researchers.

Want to learn more information about Design Concepts in Programming Languages?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Concepts in Programming Languages Review

Concepts in Programming Languages
Average Reviews:

(More customer reviews)
Are you looking to buy Concepts in Programming Languages? Here is the right place to find the great deals. we can offer discounts of up to 90% on Concepts in Programming Languages. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Concepts in Programming Languages ReviewI can't speak to John Mitchell's skill as a lecturer, but some of the complaints here seem to betray a misunderstanding of the purpose of the book: to serve as an introduction to programming language theory, such as can be found in Mitchell's other book *Foundations for Programming Languages*. Mitchell is taking you *out of* the marketable skills zone and into abstract computer science, and he's being pretty nice about it -- the book contains friendly precises of topics like lambda calculus and denotational semantics, which make up the formal core of programming languages. What you will learn has applications in all popular programming languages, even if it's not spelled out in the text.
ML was a good choice as an example language, because it includes many of the features a programming language might have (being both imperative and functional), and furthermore is a serious research language on account of its well-understood semantics and type system. Focusing on it to explain core concepts was not a mistake. Mitchell knows how to do it the other way, too: explanations of the basic elements of object-orientation are parceled out over several notable OO languages, providing a way to compare and contrast how the major OO concepts can be implemented. (I didn't find the final chapter, Apt's summary of Prolog, as helpful: the declarative paradigm is too far removed from what was developed in the rest of the book.)
On account of its relatively gentle explanations and the importance of its concepts for all aspects of CS, this would be a good book for a relative beginner in CS to pick up (provided they can comprehend more than just code). But if you find it too repellent, you're probably not going to be much happier with more advanced treatments: its character just reflects the nature of the field.Concepts in Programming Languages OverviewConcepts in Programming Languages elucidates the central concepts used in modern programming languages, such as functions, types, memory management, and control.The book is unique in its comprehensive presentation and comparison of major object-oriented programming languages.Separate chapters examine the history of objects, Simula and Smalltalk, and the prominent languages C++ and Java. The author presents foundational topics, such as lambda calculus and denotational semantics, in an easy-to-read, informal style, focusing on the main insights provided by these theories. Advanced topics include concurrency, concurrent object-oriented programming, program components, and inter-language interoperability.A chapter on logic programming illustrates the importance of specialized programming methods for certain kinds of problems.

Want to learn more information about Concepts in Programming Languages?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Types and Programming Languages Review

Types and Programming Languages
Average Reviews:

(More customer reviews)
Are you looking to buy Types and Programming Languages? Here is the right place to find the great deals. we can offer discounts of up to 90% on Types and Programming Languages. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Types and Programming Languages ReviewThis text is perhaps the most accessible yet thorough introduction to type systems I've encountered.
On the one hand, it offers excellent grounding: practical motivation is provided, numerous examples illustrate the concepts, and implementations are provided which can be used to typecheck and evaluate these examples. At various points, extended demonstrations of the type systems under consideration are given (e.g. showing how objects may be encoded). The exercises are well constructed and in many cases, accompanied with answers and detailed explanations in the appendix.
On the other hand, it offers an excellent exposition of the material: Pierce provides a lucid account of the static and dynamic semantics (primarily small-step operational) for various lambda calculi. He proceeds in a stepwise fashion via the gradual accretion of features: from first order (simply typed) systems to higher order systems incorporating bounded subtyping and recursion. He also gives attention to the metatheory of these systems (focusing on proofs of progress and preservation, and for systems with subtyping, of decideability). Internally, the text is well organized, with clear dependencies among the chapters, and the bibliography is extensive.
It should be noted that, while reasonably comprehensive, the text is necessarily limited in scope. For example, aside from the discussion on Featherweight Java, systems other than typed lambda calculus variants are not considered. In my opinion, the focus on these (in some sense "low-level") calculi makes foundational issues more apparent, and the linear progression from simple to complex variants lends a pleasant cohesiveness that would have been lost in a more general survey. However, as object/class encodings were discussed at various points, it would have been nice to see a more integrated presentation, in the spirit of the paper Comparing Object Encodings [BCP97].Types and Programming Languages OverviewA type system is a syntactic method for automatically checking theabsence of certain erroneous behaviors by classifying program phrases according tothe kinds of values they compute. The study of type systems--and of programminglanguages from a type-theoretic perspective -- -has important applications insoftware engineering, language design, high-performance compilers, and security.Thistext provides a comprehensive introduction both to type systems in computer scienceand to the basic theory of programming languages. The approach is pragmatic andoperational; each new concept is motivated by programming examples and the moretheoretical sections are driven by the needs of implementations. Each chapter isaccompanied by numerous exercises and solutions, as well as a runningimplementation, available via the Web. Dependencies between chapters are explicitlyidentified, allowing readers to choose a variety of paths through the material.Thecore topics include the untyped lambda-calculus, simple type systems, typereconstruction, universal and existential polymorphism, subtyping, boundedquantification, recursive types, kinds, and type operators. Extended case studiesdevelop a variety of approaches to modeling the features of object-orientedlanguages.

Want to learn more information about Types and Programming Languages?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Domain-Specific Languages (Addison-Wesley Signature Series (Fowler)) Review

Domain-Specific Languages (Addison-Wesley Signature Series (Fowler))
Average Reviews:

(More customer reviews)
Are you looking to buy Domain-Specific Languages (Addison-Wesley Signature Series (Fowler))? Here is the right place to find the great deals. we can offer discounts of up to 90% on Domain-Specific Languages (Addison-Wesley Signature Series (Fowler)). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Domain-Specific Languages (Addison-Wesley Signature Series (Fowler)) ReviewI no longer write programs, I help people design systems, through sensible design and architecture, but I have never forgotten my assembler roots. The author has produced an important book, as significant as when he created the refactoring book and analysis patterns, and for the same reason.
Fowler took concepts that good professionals understand almost implicitly by working through these difficult ideas and places them in context that can be used as a communication tool. He has put a name and a face to a set of memes.
Fowlers critical examination of the importance of the semantic model and the way it needs to be constructed apart from syntax, the separation of the state machine model, and the illustrative programming ideas as exemplified by spreadsheets, provide PERSPECTIVE that is so sorely needed. He links these concepts together in a way that is vital for architects and programmers.Domain-Specific Languages (Addison-Wesley Signature Series (Fowler)) OverviewWhen carefully selected and used, Domain-Specific Languages (DSLs) may simplify complex code, promote effective communication with customers, improve productivity, and unclog development bottlenecks. In Domain-Specific Languages, noted software development expert Martin Fowler first provides the information software professionals need to decide if and when to utilize DSLs. Then, where DSLs prove suitable, Fowler presents effective techniques for building them, and guides software engineers in choosing the right approaches for their applications.

Want to learn more information about Domain-Specific Languages (Addison-Wesley Signature Series (Fowler))?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...