Subscribe: Planet Mozilla
http://planet.mozilla.org/atom.xml
Added By: Feedage Forager Feedage Grade C rated
Language: English
Tags:
air mozilla  air  community  features mozilla  foo  internet multimedia  live  mozilla community  mozilla  presence mozilla 
Rate this Feed
Rate this feedRate this feedRate this feedRate this feedRate this feed
Rate this feed 1 starRate this feed 2 starRate this feed 3 starRate this feed 4 starRate this feed 5 star

Comments (0)

Feed Details and Statistics Feed Statistics
Preview: Planet Mozilla

Planet Mozilla





Updated: 2017-02-21T17:02:27Z

 






We Are All Creators NowOpen Policy & Advocacy

2017-02-21T16:02:59Z2017-02-21T16:46:45Z

Mozilla's official blog on open Internet policy initiatives and developments



The PHP AuthserverHome of KaiRo: The roads I take...

2017-02-21T15:05:40Z2017-02-21T15:05:40Z

KaiRo's weBlog



Firefox 52 Beta 7 Testday ResultsMozilla Quality Assurance

2017-02-21T13:09:34Z2017-02-21T13:16:52Z

Driving quality across Mozilla with data, metrics and a strong community focus



Mozilla at FOSDEM 2017about:community

2017-02-21T10:08:11Z2017-02-21T12:32:14Z

News and notes from and for the Mozilla community.



Non-lexical lifetimes using liveness and locationNon-lexical lifetimes using liveness and locationBaby Steps

2017-02-21T05:00:00Z2017-02-21T14:42:57Z

At the recent compiler design sprint, we spent some time discussing non-lexical lifetimes, the plan to make Rust’s lifetime system significantly more advanced. I want to write-up those plans here, and give some examples of the kinds of programs that would now type-check, along with some that still will not (for better or worse). If you were at the sprint, then the system I am going to describe in this blog post will actually sound quite a bit different than what we were talking about. However, I believe it is equivalent to that system. I am choosing to describe it differently because this version, I believe, would be significantly more efficient to implement (if implemented naively). I also find it rather easier to understand. I have a prototype implementation of this system. The example used in this post, along with the ones from previous posts, have all been tested in this prototype and work as expected. Yet another example I’ll start by giving an example that illustrates the system pretty well, I think. This section also aims to give an intution for how the system works and what set of programs will be accepted without going into any of the details. Somewhat oddly, I’m going to number this example as “Example 4”. This is because my previous post introduced examples 1, 2, and 3. If you’ve not read that post, you may want to, but don’t feel you have to. The presentation in this post is intended to be independent. Example 4: Redefined variables and liveness I think the key ingredient to understanding how NLL should work is understanding liveness. The term “liveness” derives from compiler analysis, but it’s fairly intuitive. We say that a variable is live if the current value that it holds may be used later. This is very important to Example 4: let mut foo, bar; let p = &foo; // `p` is live here: its value may be used on the next line. if condition { // `p` is live here: its value will be used on the next line. print(*p); // `p` is DEAD here: its value will not be used. p = &bar; // `p` is live here: its value will be used later. } // `p` is live here: its value may be used on the next line. print(*p); // `p` is DEAD here: its value will not be used. Here you see a variable p that is assigned in the beginning of the program, and then maybe re-assigned during the if. The key point is that p becomes dead (not live) in the span before it is reassigned. This is true even though the variable p will be used again, because the value that is in p will not be used. So how does liveness relate to non-lexical lifetimes? The key rule is this: Whenever a variable is live, all references that it may contain are live. This is actually a finer-grained notion than just the liveness of a variable, as we will see. For example, the first assignment to p is &foo – we want foo to be borrowed everywhere that this assignment may later be accessed. This includes both print() calls, but excludes the period after p = &bar. Even though the variable p is live there, it now holds a different reference: let foo, bar; let p = &foo; // `foo` is borrowed here, but `bar` is not if condition { print(*p); // neither `foo` nor `bar` are borrowed here p = &bar; // assignment 1 // `foo` is not borrowed here, but `bar` is } // both `foo` and `bar` are borrowed here print(*p); // neither `foo` nor `bar` are borrowed here, // as `p` is dead Our analysis will begin with the liveness of a variable (the coarser-grained notion I introduced first). However, it will use reachability to refine that notion of liveness to obtain the liveness of individual values. Control-flow graphs and point notation Recall that in NLL-land, all reasoning about lifetimes and borrowing will take place in the context of MIR, in which programs are represented as a control-flow graph. This is what Example 4 looks like as a control-flow graph: // let mut foo: i32; // let mut bar: i[...]



Fosdem 2017 Nightly slides and videoFirefox Nightly News

2017-02-20T16:05:21Z2017-02-20T16:16:50Z

Let's improve quality, build after build!



Notes from KatsConf2Notes from KatsConf2Anjana Sofia Vakil

2017-02-19T00:00:00Z2017-02-19T14:01:02Z

Hello from Dublin! Yesterday I had the privilege of attending KatsConf2, a functional programming conference put on by the fun-loving, welcoming, and crazy-well-organized @FunctionalKats. It was a whirlwind of really exciting talks from some of the best speakers around. Here’s a glimpse into what I learned.Language technologist and software developer



Technology Is More Like Magic Than Like ScienceSyndicate – Hacking for Christ

2017-02-18T22:18:04Z2017-02-18T22:18:04Z

Gervase Markham






Webdev Beer and Tell: February 2017Air Mozilla

2017-02-17T19:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



My closing keynote of the Tweakers DevSummit – slides and resourcesChristian Heilmann

2017-02-17T09:56:17Z2017-02-17T10:31:34Z

Yesterday I gave the closing keynote of the Tweakers Developer Summit in Utrecht, The Netherlands. The conference topic was “Webdevelopment – Coding the Universe” and the organisers asked me to give a talk about Machine Learning and what it means for developers in the nearer future. So I took out my crystal ball 🔮 and […]For a better web with more professional jobs - can talk, will travel



[worklog] Edition 055 - Tiles on a wallotsukare

2017-02-17T09:05:00Z2017-02-17T09:05:00Z




Project idea: datalog output from rustcProject idea: datalog output from rustcBaby Steps

2017-02-17T05:00:00Z2017-02-21T14:42:57Z

I want to have a tool that would enable us to answer all kinds of queries about the structure of Rust code that exists in the wild. This should cover everything from synctactic queries like “How often do people write let x = if { ... } else { match foo { ... } }?” to semantic queries like “How often do people call unsafe functions in another module?” I have some ideas about how to build such a tool, but (I suspect) not enough time to pursue them. I’m looking for people who might be interested in working on it! The basic idea is to build on Datalog. Datalog, if you’re not familiar with it, is a very simple scheme for relating facts and then performing analyses on them. It has a bunch of high-performance implementations, notably souffle, which is also available on GitHub. (Sadly, it generates C++ code, but maybe we’ll fix that another day.) Let me work through a simple example of how I see this working. Perhaps we would like to answer the question: How often do people write tests in a separate file (foo/test.rs) versus an inline module (mod test { ... })? We would (to start) have some hacked up version of rustc that serializes the HIR in Datalog form. This can include as much information as we would like. To start, we can stick to the syntactic structures. So perhaps we would encode the module tree via a series of facts like so: // links a module with the id `id` to its parent `parent_id` ModuleParent(id, parent_id). ModuleName(id, name). // specifies the file where a given `id` is located File(id, filename). So for a module structure like: // foo/mod.rs: mod test; // foo/test.rs: #[test] fn test() { } we might generate the following facts: // module with id 0 has name "" and is in foo/mod.rs ModuleName(0, ""). File(0, "foo/mod.rs"). // module with id 1 is in foo/test.rs, // and its parent is module with id 0. ModuleName(1, "test"). ModuleParent(1, 0). File(1, "foo/test.rs"). Then we can write a query to find all the modules named test which are in a different file from their parent module: // module T is a test module in a separate file if... TestModuleInSeparateFile(T) :- // ...the name of module T is test, and... ModuleName(T, "test"), // ...it is in the file T_File... File(T, T_File), // ...it has a parent module P, and... ModuleParent(T, P), // ...the parent module P is in the file P_File... File(P, P_File), // ...and file of the parent is not the same as the file of the child. T_File != P_File. Anyway, I’m waving my hands here, and probably getting datalog syntax all wrong, but you get the idea! Obviously my encoding here is highly specific for my particular query. But eventually we can start to encode all kinds of information this way. For example, we could encode the types of every expression, and what definition each path resolved to. Then we can use this to answer all kinds of interesting queries. For example, some things I would like to use this for right now (or in the recent past): Evaluating new lifetime elision rules. Checking what kinds of unsafe code patterns exist in real life and how frequently. Checking how much might benefit from accepting the else match { ... } RFC Testing how much code in the wild might be affected by deprecating Trait in favor of dyn Trait So, you interested? If so, contact me – either privmsg over IRC (nmatsakis) or over on the internals threads I created.






0 Commentsncubeeight

2017-02-16T16:14:35Z2017-02-16T16:14:35Z




Reps Weekly Meeting Feb. 16, 2017Air Mozilla

2017-02-16T16:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



Thank you Guillermo Moviaremo – Emma Irwin

2017-02-16T15:12:44Z2017-02-16T15:16:59Z

Learning in the open



Mozilla Curriculum Workshop, February 2017 - Privacy & SecurityAir Mozilla

2017-02-16T15:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



Molotov, simple load testingFetchez le Python

2017-02-15T23:00:00Z2017-02-16T21:45:55Z

Tarek Ziadé



ScriptConf in Linz, Austria – if you want all the good with none of the drama.Christian Heilmann

2017-02-15T18:53:46Z2017-02-17T10:31:33Z

Last month I was very lucky to be invited to give the opening keynote of a brand new conference that can utterly go places: ScriptConf in Linz, Austria. What I liked most about the event was an utter lack of drama. The organisation for us presenters was just enough to be relaxed and allowing us […]For a better web with more professional jobs - can talk, will travel



The Joy of Coding - Episode 91Air Mozilla

2017-02-15T18:00:00Z2017-02-17T20:02:24Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



The Future of Session ResumptionTim Taubert

2017-02-15T17:00:00Z2017-02-15T17:37:49Z




The Future of Session ResumptionTim Taubert

2017-02-15T17:00:00Z2017-02-15T17:15:29Z




New screen and new fusesdaniel.haxx.se

2017-02-15T10:06:54Z2017-02-21T03:46:37Z

tech, open source and networking



Roads not takenMozilla Open Design

2017-02-15T06:49:03Z2017-02-15T07:02:57Z

Here, Michael Johnson (MJ), founder of johnson banks, and Tim Murray (TM), Mozilla creative director, have a long-distance conversation about the Mozilla open design process while looking in the rear-view mirror. TM: We’ve come a long way from our meet-in-the-middle […]branding without walls



WordPress.comMonotonous.org

2017-02-15T00:23:03Z2017-02-16T01:46:03Z

Eitan's Pitch



New features in A-Frame Inspector v0.5.0Mozilla VR Blog

2017-02-14T23:59:48Z2017-02-21T10:46:51Z

We are the Mozilla VR team. Our goal is to help bring high-performance virtual reality to the open Web.



Thank you Brian King!remo – Emma Irwin

2017-02-14T21:46:24Z2017-02-16T15:16:59Z

Learning in the open



Pathfinder, a fast GPU-based font rasterizer in Rustpcwalton

2017-02-14T19:03:00Z2017-02-14T21:03:39Z




Add-ons Update – 2017/02Mozilla Add-ons Blog

2017-02-14T18:04:46Z2017-02-17T17:02:20Z




These Weeks in Firefox: Issue 10Firefox Nightly News

2017-02-14T17:59:31Z2017-02-20T16:16:50Z

Let's improve quality, build after build!



Martes Mozilleros, 14 Feb 2017Air Mozilla

2017-02-14T16:00:00Z2017-02-17T20:02:22Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



chuttenblogmozilla – chuttenblog

2017-02-14T15:00:00Z2017-02-21T17:02:22Z




Dave's RamblingsDave's Ramblings

2017-02-14T14:53:33Z2017-02-14T15:02:15Z

Thoughts somehow related to web, linux, mobile and other things I am interested in



This Week in Rust 169This Week in Rust

2017-02-14T05:00:00Z2017-02-14T05:00:00Z




TEST -PROJ. MTGAir Mozilla

2017-02-13T22:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



Mozilla Weekly Project Meeting, 13 Feb 2017Air Mozilla

2017-02-13T19:00:00Z2017-02-17T20:02:22Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



Reps as mobilizers in the Mozilla CommunityMozilla Reps

2017-02-13T18:27:26Z2017-02-13T18:46:58Z

Program updates and news from the global Mozilla Reps network.



This Week In Servo 92Servo Blog

2017-02-13T00:30:00Z2017-02-13T18:32:34Z




Notes from FOSDEM 2017Notes from FOSDEM 2017Anjana Sofia Vakil

2017-02-13T00:00:00Z2017-02-19T14:01:02Z

Riding the tram you hear the word “Linux” pronounced in four different languages. Stepping out into the grey drizzle, you instantly smell fresh waffles and GitHub-sponsored coffee, and everywhere you look you see a FSF t-shirt. That’s right kids, it’s FOSDEM time again! The beer may not be free, but the software sure is.Language technologist and software developer



Compiler design sprint summaryCompiler design sprint summaryBaby Steps

2017-02-12T05:00:00Z2017-02-21T14:42:57Z

This last week we had the rustc compiler team design sprint. This was our second rustc compiler team sprint; the first one (last year) we simply worked on pushing various projects over the finish line (for example, in an epic effort, arielb1 completed dynamic drop during that sprint). This sprint was different: we had the goal of talking over many of the big design challenges that we’d like to tackle in the upcoming year and making sure that the compiler team was roughly on board with the best way to implement them. I or others will be trying to write up many of the details in various forums, either on this blog or perhaps on internals etc, but I thought it’d be fun to start with a quick post that describes the overall topics of discussion. For each one, I’ll give a quick summary and, where possible, point you at the minutes and notes that we took. On-demand processing and incremental compilation The first topic of discussion was perhaps the most massive, in terms of its impact on the codebase. The goal is to reorient how rustc works internally completely. Right now, like many compilers, rustc works by running a series of passes, one after the other. So for example we first parse, then do macro expansion and name resolution (these used to be distinct, but have now become interwoven as part of the work on macros 2.0), then type-checking, and so forth. This is a time-honored approach, but it’s beginning to show its age: Some parts of the compiler front-end cannot be so neatly separated. I already mentioned how macro expansion and name resolution are now interdependent (you have to resolve the path that leads to a macro to know which macro to expand). Similar things arise in type-checking, particularly as we aim to support constant expressions in types. In that case, we have to type-check the constant expression, but it must also be part of a type, and so forth. For better IDE support, it is desirable to be able to compile just what is needed to type-check a particular function (we can come back and cleanup the rest later). Things like impl Trait make the type-checking of some functions partially dependent on the results of others, so the old approach of type-checking all function bodies in an arbitrary order doesn’t work. The idea is to replace it with on-demand compilation, which basically means that we will have a graph of “things we might want to compute” (for example, “does the function foo type-check”). We can “demand” any one of these “queries”, and the compiler will go and do what it has to do to figure out the answer. That may involve satisfying other queries internally (hopefully without cycles). In the end, your entire type-check will complete, but the order in which we do the compiler will be far less specified. This idea for on-demand compilation naturally dovetails with the plans for the next generation of incremental compilation. The current design is similar to make: [...]



Nightly Workshop May 6-7 in Parismozillamarciaknous

2017-02-10T18:55:32Z2017-02-20T20:45:16Z

I am happy to report that we are hosting an upcoming Nightly event in May, in the Mozilla Paris space.Please read the instructions on the wiki to apply for one of the 5 spots. Please note that you must be local to the area as we cannot sponsor travel.This should be an exciting event, and community members that participate will get to meet over 50 localizers from the EU, African and Arabic communities! Looking forward to seeing your applications.mozillamarciaknous



Planet Migration Shakeoutwork – blarg?

2017-02-10T16:51:25Z2017-02-18T15:16:50Z

This note is intended for Planet and its audience, to let you know that while we’re mostly up and running, we’ve found a few feeds that aren’t getting pulled in consistently or at all. I’m not sure where the problem is right now – for example, Planet reports some feeds as returning 403 errors, but […]Mike Hoye's weblog



Honest and open conversationsThe Automated Tester

2017-02-10T11:26:04Z2017-02-10T11:26:04Z

The Automated Tester - Explaining how the real world works!



[worklog] Edition 054 - Be like the bamboo. Flexibility.otsukare

2017-02-10T09:05:00Z2017-02-17T09:05:00Z




Rust Meetup February 2017Air Mozilla

2017-02-10T03:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



U.S. Court of Appeals Upholds Suspension of Immigration Executive OrderThe Mozilla Blog

2017-02-10T00:38:21Z2017-02-14T19:17:04Z

Dispatches from the Internet frontier.



When silence just isn't an optionBas Schouten

2017-02-09T23:57:00Z2017-02-10T17:45:47Z




What’s Up with SUMO – 9th February 2017SUMO Blog

2017-02-09T20:30:59Z2017-02-09T20:32:31Z

SUpport MOzilla's official blog - rocking the helpful web since 2007!



web-ext 1.8 releasedMozilla Add-ons Blog

2017-02-09T20:08:15Z2017-02-17T17:02:20Z




TaskCluster-Github ImprovementsCode Vigorous - Mozilla

2017-02-09T18:54:00Z2017-02-09T19:31:17Z

Posts categorized as 'mozilla'






Reps Weekly Meeting Feb. 09, 2017Air Mozilla

2017-02-09T16:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



chuttenblogmozilla – chuttenblog

2017-02-09T15:00:09Z2017-02-21T17:02:21Z




Launching an Independent OpenNews ProgramThe Mozilla Blog

2017-02-09T11:35:10Z2017-02-14T19:17:05Z

Dispatches from the Internet frontier.






Announcing Rust 1.15.1The Rust Programming Language Blog

2017-02-09T00:00:00Z2017-02-09T20:16:13Z

Words from the Rust team



The Joy of Coding - Episode 90Air Mozilla

2017-02-08T18:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



Weekly SUMO Community Meeting Feb. 08, 2017Air Mozilla

2017-02-08T17:00:00Z2017-02-17T20:02:24Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



Firefox 52 Beta 7 Testday, February 17thMozilla Quality Assurance

2017-02-08T13:07:40Z2017-02-21T13:16:52Z

Driving quality across Mozilla with data, metrics and a strong community focus



Goodbye to a Mozillianmozillamarciaknous

2017-02-07T18:50:26Z2017-02-20T20:45:15Z

Back in 2008 I had the pleasure of participating in the first Mozilla MozCamp, which was held in the beautiful city of Barcelona. I remember that event fondly for several reasons, one of the most significant being I met Giuliano Masseroni and the rest of the Italian community. I was immediately struck by his personality and passion, which shone like a bright star. Giuliano has not been active for several years, but was instrumental in the early days of the Italian community. And as flod pointedmozillamarciaknous



Cancel all the thingsWilliam Lachance's Log: Posts tagged 'Mozilla'

2017-02-07T18:36:09Z2017-02-07T18:36:09Z

William Lachance's Log: Posts tagged 'Mozilla'



Webdev Extravaganza: February 2017Air Mozilla

2017-02-07T18:00:00Z2017-02-17T20:02:22Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.



3.1415926535897932384626433...3.1415926535897932384626433…

2017-02-07T17:22:21Z2017-02-15T21:31:07Z

PI, pie, and py



Dave's RamblingsDave's Ramblings

2017-02-07T15:23:37Z2017-02-14T15:02:15Z

Thoughts somehow related to web, linux, mobile and other things I am interested in



chuttenblogmozilla – chuttenblog

2017-02-07T15:09:12Z2017-02-21T17:02:21Z




Simple Cryptol SpecificationsTim Taubert

2017-02-07T15:00:00Z2017-02-15T17:37:49Z




Firefox 52 Beta 3 Testday ResultsMozilla Quality Assurance

2017-02-07T13:38:48Z2017-02-21T13:16:51Z

Driving quality across Mozilla with data, metrics and a strong community focus



FOSDEM Talk: Video AvailableSyndicate – Hacking for Christ

2017-02-07T11:49:38Z2017-02-18T22:18:04Z

Gervase Markham



This Week in Rust 168This Week in Rust

2017-02-07T05:00:00Z2017-02-14T05:00:00Z




The Scope Of The Possiblework – blarg?

2017-02-06T22:34:44Z2017-02-18T15:16:50Z

This is a rough draft; I haven’t given it much in the way of polish, and it kind of just trails off. But a friend of mine asked me what I think web browsers look like in 2025 and I promised I’d let that percolate for a bit and then tell him, so here we […]Mike Hoye's weblog



What Rust Can Do That Other Languages Can't, In Six Short LinesWhat Rust Can Do That Other Languages Can't, In Six Short LinesEyes Above The Waves

2017-02-06T22:14:30Z2017-02-21T11:19:41Z

Robert O'Callahan. Christian. Repatriate Kiwi. Hacker.



hgchanges is down, probably for goodtechnical – Oxymoronical

2017-02-06T22:01:35Z2017-02-06T22:01:35Z

The humble opinions of Dave Townsend



Lara Hogan on Demystifying Public SpeakingAir Mozilla

2017-02-06T22:00:00Z2017-02-17T20:02:23Z

Air Mozilla is the Internet multimedia presence of Mozilla, with live and pre-recorded shows, interviews, news snippets, tutorial videos, and features about the Mozilla community.