1. Lua / Говнокод #18346

    −85

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    local sol_lines = {}
    local i = 1; local j = 0;
    	
    while (i <= solution:len()) do
    	local begin_pos = i
    	while(i <= solution:len() and solution:sub(i, i) ~= '\n') do
    		i = i + 1
    	end
    
    	if i > solution:len() then
    		i = solution:len()
    	end
    
    	local cur_line = solution:sub(begin_pos, i)
    	sol_lines[j] = trim(cur_line)
    	i = i + 1
    	j = j + 1
    end

    Lua
    Как я разбивал строку на отдельные линии. Вместо того, чтобы использовать string.find(s, "\n", i + 1). Так я писал код 0.027397 года назад назад.

    Запостил: Janycz, 15 Июня 2015

    Комментарии (28) RSS

    • А что в Lua со split и использованием map/filter/reduce?
      Скажем, в JS:
      var z = str.split('\n').map(function(x){ return x.charAt(0) + f(x); });
      Ответить
      • >> f(x)
        что такое функция f?
        Ответить
        • Да не важно, просто какая-то функция.
          Я сначала хотел написать "return x.charAt(0) + 'X';", но тогда всё это почти* заменяется на фигню вида
          var z = str.replace(/([^\n])[^\n]*(\n|$)/g, '$1X$2');

          ________________________
          * Если не учитывать строки, содержащие \n\n и сджойнить z из моего первого комментария.
          Ответить
      • показать все, что скрытоvanished
        Ответить
        • показать все, что скрытоvanished
          Ответить
        • и еще var вместо let зачем-то.

          Нет, друзья, JS до Es2015 это форменное свинство.


          Я тут давеча говнокодил на Es2015 (спасибо бабелю) и это было совсем не то, что когда-то. Нормальный такой скриптовый язык, не противнее питона

          class Foo {
            constructor(pituh) {
             this.pituh = pituh;
           } 
            doAll()   {
             alert(this.pituh);
           }
          }
          
          Foo("pitushok").doAll()
          Ответить
    • Зачем вообще нужна луа? IDE под неё нормальных нет, коммунити мелкое, фреймворков мало.
      Если есть руби и пайтон, то зачем еще луа?
      Ответить
    • заметили что луа чуть ли не единственный ЯП где апиратор неравно звучит как "~="?
      Не <>, не !=, а именно ~=.


      Это пиритом что тильда обычно означает "побитовый не", всмысле перевернуть все биты
      Ответить
      • В J нервано звучит как "~:".
        Ответить
        • «Нервано» — это ВИА, который слушают подростки, находящиеся в группе риска?
          Ответить
          • Да, там ещё пел Крут Кобен.
            Ответить
            • А я думал, что там пела Куртка Бейна.
              Ответить
              • ай хей майселф
                энд ай вонна дай
                Ответить
                • Хелло, ай ам веджетабле,
                  Май майнд из деструктабле-йоу,
                  Кам клозер, май френд.
                  Май асс из деструктабле.
                  Ответить
          • Нервано - это лучшая одежда, имеющаяся у программиста-удалёнщика.
            Ответить
            • Одежда для удаленки? Без видеосвязи? Зачем? Зачем?
              Ответить
              • 1. Трусы-майка для дома, чтобы не прилипать к стулу. Мыться раз в день и чаще - непозволительная роскошь и трата времени.
                2. Что-то потеплее для улицы, чтобы выйти выбросить мусор не в летнее время и не замёрзнуть.
                Ответить
                • У меня на стуле лежит тряпошная сидушка, если сажусь голой попой я не прилипаю.

                  Хотя я чаще за компом полулёжа в кровате, он у меня рядом с компом стоит.
                  Ответить
                • Вспомнил картинку из жанра «NSFW». Гуглится по запросу «яйца в пластиковом стуле».
                  Ответить

    Добавить комментарий