- 1
Кто из тутошних пососёт мой до омерзения жилистый кол? Кто полижет мои эспандеры?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−4
Кто из тутошних пососёт мой до омерзения жилистый кол? Кто полижет мои эспандеры?
−4
Кто может прочистить мою трубу?.. У меня запор.
0
'use strict';
function map(fn, array) {
let arr = [];
for(let i of array)
arr.push(fn(i));
return arr;
}
function take(fn, count) {
var arr = [];
for(let i = 0; i < count; i++)
arr.push(fn());
return arr;
}
function sequence(start, step)
{
step = step || 1;
start = start || 0;
start-=step;
return function() {
return start+=step;
}
}
function fmap(a, gen) {
return (...args) => {
if(args.length > 0)
return a(gen(...args));
else
return a(gen());
};
}
function partial(fn, ...args) {
return (...twoArgs) => {
let newM = args.slice();
for(let k of twoArgs)
newM.push(k);
return fn(...newM);
};
}
function partialAny(fn, ...args) {
return (...twoArgs) => {
let newM = args.slice();
let k = 0;
for(let i = 0; i < newM.length; i++)
if(newM[i] === undefined)
newM[i] = twoArgs[k++];
while(twoArgs[k] !== undefined) {
newM.push(twoArgs[k]);
k++;
}
return fn(...newM);
};
}
function bind(fn, context) {
return (...args) => {
return fn.apply(context, args);
};
}
function pluck(objects, fieldName) {
let a = [];
for(let i = 0; i < objects.length; i++)
if(objects[i][fieldName] !== undefined)
a.push(objects[i][fieldName]);
return a;
}
function filter(arr, fn) {
let a = [];
arr.forEach((item, i, arr) => {
if(fn(item))
a.push(item);
});
return a;
}
function count(arr) {
return Object.keys(arr).length;
}
var a = { a: 1, b: 2 };
console.log(count(a)); // 2
var b = function () {};
console.log(count(b)); // 0
var c = [1, 2, 3];
console.log(count(c)); // 3
var d = [];
d[100] = 1;
console.log(count(d)); // 1
Ня (^_^)
Суперкодики!
+4
template<class T, T = 1>
constexpr bool __can_one(int) { return true; };
template<class T>
constexpr bool __can_one(long) { return false; };
template <class T>
constexpr bool is_integral_v = __can_one<T>(0);
https://twitter.com/ericniebler/status/976524085927731200
Не кто попало, а автор Ranges TS (без пяти минут кусок стандарта) сомневается, валидную метушню он написал или нет. Пора уже создавать крестоблядский суд, который будет трактовать букву стандарта и решать, где с++ а где нет. И разрабы гцц будут нанимать за бешеное бабло крестоблядских юристов и судиться в крестоблядском суде с авторами багрепортов.
−30
Да не стертор я, заебали.
−25
Никто не заметил связи между уходами долбоёба-стертора, и внезапным появлением kegdan?
Кого наебать решил, паскуда?
−2
Что за браузер?
−1
#include <iostream>
using namespace std;
struct MyType { MyType() { cout << __PRETTY_FUNCTION__ << endl; }};
MyType& MyType() { cout << __PRETTY_FUNCTION__ << endl; }
using MyType2 = struct MyType;
int main() {
// MyType t; <- error: expected ‘;’ before ‘t’
MyType();
struct MyType t;
struct MyType t1 = MyType();
struct MyType t2 = (struct MyType)::MyType();
struct MyType t3 = MyType2();
new(&t2) struct MyType();
return 0;
}
Крестоблядство по мотивам #23850.
https://ideone.com/XcK2hf.
Особенно меня порадовал каст на 11 строчке.
0
You have three options in Javascript:
//slice
//syntax: string.slice(start [, stop])
"Good news, everyone!".slice(5,9); // extracts 'news'
//substring
//syntax: string.substring(start [, stop])
"Good news, everyone!".substring(5,9); // extracts 'news'
//substr
//syntax: string.substr(start [, length])
"Good news, everyone!".substr(5,4); // extracts 'news'
Как извлечь подстроку в JavaScript.
0
function startsWith(string, substring) {
if (substring!=string.slice(0, substring.length)) return false; else return true;
}
function endsWith(string, substring) {
if (substring!=string.slice(string.length - substring.length)) return false; else return true;
}