How Microsoft rewrote the C # compiler in C # and made it open

 3r3176. 3r3-31.
The author of the article is Mads Torgersen, lead architect of C # at Microsoft
3r3162.  3r3176. 3r3162.  3r3176. 3r3154. Project Roslyn [/b] 3r3162.  3r3176. 3r3162.  3r3176. 3r3154. Roslyn [/b] - this is the code name that was assigned to the open-source compiler for C # and Visual Basic .NET. The project began in the deepest darkness of the last decade of Microsoft's corporate life - and ended as an open source project, a cross-platform, public universal C # engine (and VB, which I will take for granted in the rest of the article). 3r3162.  3r3176. 3r3162.  3r3176. The first talk ...
+ 0 -

Development of React-applications using ReasonReact

You are using React to create user interfaces? The author of the material, the translation of which we publish, says that he also works with React. Here he wants to talk about why it is worth using to write React-applications. ReasonML .
 
 
Development of React-applications using ReasonReact
 
 
React is a very good tool for developing interfaces. Can I make it even better? In order to improve the work with React, you first need to understand its main problems. In particular, the problem, the origins of which lies in the fact that React is a jаvascript library.
 

 


React and jаvascript


 
If you look closely at React, you ...[/h]
+ 0 -

Why did the compiler turn my cycle with a condition into infinite?

One of the users of the Visual C ++ compiler presented the following code sample and asked why its loop with the condition is executed infinitely, although at some point the condition should stop executing and the cycle should end:
 
 
#include
int x = ? y = 1;
int * ptr;
DWORD CALLBACK ThreadProc (void *)
{
Sleep (1000);
ptr = & y;
return 0;
}
int main (int, char **)
{
ptr = & x; //start out pointing to x
DWORD id;
HANDLE hThread = CreateThread (nullptr, ? ThreadProc, ? & id);
//Wait for another thread to change the value by pointer ptr
//to some nonzero number
while (* ptr == 0) {}
return 0;
} ...
+ 0 -

A brief history of the numeric keypad

A brief history of the numeric keypadImagine a phone keypad and a calculator. Can you remember how they differ, not peeking? If you did not succeed - nothing terrible. Most of us are so used to common data entry devices that simply does not realize that on the calculator, if you compare it with the phone, the keys are arranged in the reverse order. The top row of the calculator buttons contains the keys 7-8-? and the upper row of the phone keypad - keys 1-2-3. The fact that these two keyboards, whether they are presented in the form of physical devices or in the form of applications, are arranged in different ways, one can not discern ...
+ 0 -

Guide to Node.js, part 6: event loop, call stack, timers

Today, in the sixth part of the translation of the guide on Node.js, we'll talk about the event loop, the call stack, about the function process.nextTick () , about the timers. Understanding these and other Node.js mechanisms is one of the foundations for successful application development for this platform.
 

 
Guide to Node.js, part 6: event loop, call stack, timers
 

 
[Советуем почитать]Other parts of the cycle [/b]
Part 1: General information and the beginning of work
 
Part 2: [leech=https://habr.com/company/ruvds/blog/423153/] jаvascript, V? some ...
+ 0 -

A guide to Node.js, Part 5: npm and npx

Today, in the fifth part of the translation of the Node.js manual, we will finish the analysis of the npm capabilities, in particular, we will touch upon such issues as finding the installed versions of npm-packages, installing old versions of packages, updating dependencies, local and global uninstalling packages. Here we will talk about npx.
 
 
A guide to Node.js, Part 5: npm and npx
 
 
[Советуем почитать]Other parts of the [/b] cycle.
Part 1:
General information and getting started

 
Part 2: jаvascript, V? some tricks of development
 
Part 3: [leech=https://habr.com/company/ruvds/blog/423701/] ...
+ 0 -

What is Kotlin doing: an interview with Andrei Breslav

What is Kotlin doing: an interview with Andrei Breslav  
 
There is no shortage of technical materials about Kotlin, it is possible to learn a lot about where or where corundines or nullability can be found. But there remains much less lit the other side: how does the process of language development in general look like? How are decisions made? What are the tasks of the "most important person"? Does he still have time for anything else?
 
 
And now, when Kotlin 1.3 is about to be released, we asked "the most important" Andrei Breslav not about korutiny, but about something completely different: from what he was doing to Kotlin, before psychotherapy is ...
+ 0 -

Habr.com. Transparency report

Habr.com. Transparency reportFor a long time we lost count, how many conspiracy theories we read while the Gictimes were separated from the Habr, shuffled the hubs, united back and moved to the .com zone. To the observer from the side, such castling may indeed seem strange. We did not conceal that one of the reasons for the permutations was, among other things, the desire to protect Habr from possible legal troubles, but this made even more doubtful of some. And the lack of information in turbulent times only breeds guesses that such a large project as Habr can not be deprived of the attention of state bodies and rights holders ...
+ 0 -

How are the first years of the revolution of robots

How are the first years of the revolution of robots  
 
At the end of each year, Time magazine places a product on its cover. To do this, thousands of companies send out their own editorial offices. In the short list comes a few hundred - those devices that actually can change our world. And by the end of 201? the choice of Time became seemingly an unremarkable little robot - Jibo . This 30-centimeter device looks almost like an Eve from a Pixar cartoon, with a display instead of a face on which animated icons appear - emotions. This robot is not only able to speak - it can communicate. Dance, twitch, turn in the direction of the person to whom ...
+ 0 -

Using the connect () function from the react-redux package

Using the connect () function from the react-redux packageIn the article, the translation of which we publish today, we will talk about how to create container components in React-applications that are associated with the state of Redux. This material is based on the description of the mechanism of state management in React using the package react-redux . It is assumed that you already have a basic understanding of the architecture and API libraries, of which we will talk. If this is not the case, refer to the documentation on React and Redux .
 
 
...
+ 0 -