Skip to content

Instantly share code, notes, and snippets.

View aymannadeem's full-sized avatar

Ayman Nadeem aymannadeem

View GitHub Profile
data IfStatement a
= IfStatement {Language.Python.AST.ann :: !a,
Language.Python.AST.alternative :: ![AST.Parse.Err
((GHC.Generics.:+:)
ElifClause ElseClause a)],
Language.Python.AST.consequence :: !(AST.Parse.Err (Block a)),
Language.Python.AST.condition :: !(AST.Parse.Err (Expression a))}
-- Defined at /Users/aymannadeem/github/semantic/semantic-python/src/Language/Python/AST.hs:28:1
instance Eq a => Eq (IfStatement a)
-- Defined at /Users/aymannadeem/github/semantic/semantic-python/src/Language/Python/AST.hs:28:1

SOMA studio - available now

Spacious studio, centrally located in the heart of San Francisco's downtown. Available now with lease ending in early August.

Details

  • ~500 sq ft.
  • 1 bathroom
  • Fitness Center 24/7
  • Laundry Facilities 24/7
  • On-site Maintenance
@aymannadeem
aymannadeem / Intelligent Language Evolution
Created March 10, 2017 20:47
An idea I had while reading a Ruby textbook 2 weeks ago.
### Intelligent Language Evolution System
(or “ILES”, for now. Until I think of a better name.)
#### Inspiration
Programming languages evolve over time. Different changes are introduced into newer versions, with the overall aim of making languages more capable at solving the types of problems they’re designed for, in addition to becoming more user-friendly, efficient and relevant to the changing stack of dependencies they interact with. Such changes can be put into three categories:
**1. Syntax-based.** For example, Ruby 2.0 introduces the use of keyword arguments instead of positional arguments for better readability, and Ruby 1.9 forgoes the use of hash-rockets when symbols are keys.
**2. Performance-based.** For example, in Ruby 1.9 there is a shift from interpreter to bytecode compiled.
**3. Responding to external systems.** While changes internal to a language are important, looking at how the ecosystem around a particular language and the state of technology as a whole is changing (for example, chan

Intro

Slide: Projects // Pat Nakajima & Ayman Nadeem

[Transition from Connor's talk] P: Hey guys, my name is Pat.

A: And I’m Ayman. We’re here to talk to you about some developments we’ve made in the project management space. Today, we’re launching Projects: a new way to organize and prioritize your work on GitHub.

Project Management: what GitHub aims to do broadly

@aymannadeem
aymannadeem / dabblet.css
Created May 21, 2013 04:08
The first commented line is your dabblet’s title
/**
* The first commented line is your dabblet’s title
*/
background: #f06;
background: linear-gradient(45deg, #f06, yellow);
min-height: 100%;
@aymannadeem
aymannadeem / dabblet.css
Created May 20, 2013 21:15
The first commented line is your dabblet’s title
/**
* The first commented line is your dabblet’s title
*/
background: #f06;
background: linear-gradient(45deg, #f06, yellow);
min-height: 100%;